當前位置:
首頁 > 新聞 > 另類端掃:無IP地址的埠掃描

另類端掃:無IP地址的埠掃描

重新評估一些操作的執行情況有時會帶來新的見解,本博文就是建立在這樣的觀點上構思的。請注意,本文所述的技術我只在兩個「測試」網路上進行了測試,所以我不能保證這種技術永遠奏效。最糟糕的情況是,你將閱讀的內容是開箱即用的,換句話說,本博問所描述的技術你完全可以直接拿去使用,不過一般會在你無法進行埠掃描的情況下用來替代常規埠掃描的一種方法。腳本的來源可以在我的Git中找到,如果你想跳過我在本身的說明,你完全可以直接查看源代碼。

我平時通常會做的一件事就是在網路上嗅探與我的筆記本電腦或下拉設備相連接的網路流量。在這種情況下,ifconfig命令的輸出通常如下:

從上面的執行結果中,你會注意到介面沒有分配IPv4的 IP地址,現在可以忽略IPv6地址。通常我根據以前捕獲和分析的流量確定要克隆的IP地址或MAC地址。然後我會對IP地址進行埠掃描或執行其他類型的攻擊。

但是這一次,我想知道在沒有IP地址的情況下,我可以執行什麼類型的攻擊活動呢。我的意思是說,IP是與感興趣的設備通信的一個方式 ,那麼你不知何故的看到一個網路響應,卻不可追溯,很奇怪,對吧?所以我決定是否可以在網路上執行埠掃描,而不必在我的網路介面上配置IP地址。

通常當你想要使用TCP / IP協議執行一些非標準或奇奇怪怪的技巧時,你必須使用原始套接字,所以我決定直接使用scapy來構建我的POC。工作原理的理論如下:

一般情況下,當我只是嗅探流量時,我能看到發送到廣播地址的各種流量,那麼如果我們要執行埠掃描,我們如何指定廣播地址作為源地址呢?

我決定使用兩個設置了 「NAT」網路的虛擬機(ubuntu和Windows 10)進行測試,並且會將網路設置為物理網路橋接時使用這兩個相同的虛擬機再進行一次測試。可以使用以下網路參數來傳輸原始數據包:

pkt = Ether(dst= 00:0c:29:f6:a5:65 ,src= 00:08:19:2c:e0:15 ) / IP(dst= 172.16.218.178 ,src= 172.16.218.255 ) / TCP(dport=445,flags= S )

sendp(pkt,iface= eth0 )

運行tcpdump將會確認上述命令是否生效,說明真相的時刻就要來了:

tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes23:27:21.903583 IP (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto TCP (6), length 40) 172.16.218.255.20 >

172.16.218.178.445: Flags [S], cksum 0x803e (correct), seq 0, win 8192, length 023:27:21.904440 IP (tos 0x0, ttl 128, id 31823, offset 0, flags [DF], proto TCP (6), length 44)

172.16.218.178.445 > 172.16.218.255.20: Flags [S.], cksum 0x03be (correct), seq 3699222724, ack 1, win 65392, options [mss 1460], length 0

23:27:24.910050 IP (tos 0x0, ttl 128, id 31824, offset 0, flags [DF], proto TCP (6), length 44)

172.16.218.178.445 > 172.16.218.255.20: Flags [S.], cksum 0x03be (correct), seq 3699222724, ack 1, win 65392, options [mss 1460], length 0

23:27:30.911092 IP (tos 0x0, ttl 128, id 31825, offset 0, flags [DF], proto TCP (6), length 44)

172.16.218.178.445 > 172.16.218.255.20: Flags [S.], cksum 0x03be (correct), seq 3699222724, ack 1, win 65392, options [mss 1460], length 0

23:27:42.911498 IP (tos 0x0, ttl 128, id 31829, offset 0, flags [DF], proto TCP (6), length 40)

172.16.218.178.445 > 172.16.218.255.20: Flags [R], cksum 0x1af8 (correct), seq 3699222725, win 0, length 0

wOOOOOOOt!看起來似乎有效啊!我們可以清楚地看到從廣播(.255)源地址發送到「.178」IP地址的數據包,然後我們看到響應數據又流回了廣播地址。

現在這看起來是不是很有趣?基本上,我們現在就可以在網路上進行不可追蹤的埠掃描了。不知何故,這仍然感覺很「奇怪」,因為它只是第一次嘗試...所以仍然認為我可能誤解了一些東西:

sudo ./ipless-scan.py 172.16.218.178 00:0c:29:f6:a5:65 -p 445 3389 5000 -i eth0

2017-10-26 23:13:33,559 - INFO - Started ipless port scan

2017-10-26 23:13:33,559 - INFO - Started sniffer and waiting 10s

2017-10-26 23:13:43,568 - INFO - Starting port scan

2017-10-26 23:13:43,604 - INFO - Found open port - 445

2017-10-26 23:13:43,628 - INFO - Found open port - 3389

2017-10-26 23:13:43,645 - INFO - Found closed port - 5000

2017-10-26 23:13:43,654 - INFO - Finished port scan, waiting 5s for packets

2017-10-26 23:13:52,626 - INFO - Stopped sniffer


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

利用BDF向EXE文件植入後門
微軟office DDE攻擊與防禦
Web App攻擊之使用Web Scarab工具搜索目標
壞兔子來襲,安天智甲有效防護
這名黑客說,他能看到明星整容前的樣子

TAG:嘶吼RoarTalk |