SeedLab6: TCP/IP Attack Lab
針對TCP協議的攻擊實驗~
四類攻擊:
SYN 洪泛攻擊
TCP RST攻擊
TCP會話劫持
反彈shell
工具:netwox/scapy,實測netwox即可完成
SYN 洪泛攻擊
先康康受害者主機半開連接的等待隊列有多大:
先關掉SYN cookie機制進行攻擊:
指定IP,netwox進行攻擊:
能看到受害者主機有大量23號端口的半開連接:
此時如果從觀察者主機telnet受害者主機,沒有響應直到超時:
再打開SYN cookie進行攻擊:
依然有很多很多半開連接:
但這時候從觀察者主機telnet受害者主機,是可以正常登錄的:
這就是SYN cookie機制的作用:它在接收到客戶端的SYN包時,不立刻為連接分配資源,而是根據SYN包計算一個cookie值作為SYN ACK包的初始序列號
若客戶端正常返回ACK包,則根據包頭信息計算cookie值,與其確認序列號對比,若驗證通過則分配資源并建立連接;若驗證不通過或沒有收到第三個ACK包,則不會為非正常的連接分配資源
這一機制保證了在遭受SYN洪泛攻擊時,受害者主機的半開連接隊列的資源不會被耗盡,從而能接受觀察者主機的正常連接
TCP RST 攻擊
telnet登錄后,看到連接狀態是ESTABLISHED:
發動攻擊:
RST報文發出后,這條TCP連接被關閉了:
scapy一樣的:
結果一致:
然后是ssh登錄:
登錄方會下線,提示TCP連接斷開:
若嘗試登錄會被拒絕:
scapy還是一樣的:
抓包能看到RST包:
流媒體的TCP RST攻擊
這里用的是B站,隨便放一個視頻,如果需要的話先安裝flash(不得不說,虛擬機看視頻太卡了…
和B站服務器建立了兩條TCP連接用于傳輸視頻內容:
然后在視頻播放的時候進行攻擊:
然后視頻就會華麗麗地卡住…(不知道是不是正常情況,反正我的就一直在緩沖
(看鬼畜hhh
兩條連接也被斷開了:
TCP會話劫持
在兩臺主機之間建立一個telnet連接,同時抓包,我們要根據最后一個包來偽造后面的數據包:
康康上面的數據包,主要關注雙方端口、窗口大小、序列號、確認號
偽造的數據包里,seq=最后一個數據包的ack,ack=wireshark里能看到的next seq
(-j 即TTL似乎一定要寫,不然抓不到包,或許是被丟棄了吧…
(如果存在疑問,仔細學習TCP協議
傳輸的數據必須是hex,要求里教了用python轉換:
抓包能看到成功發送了data:
其實這關是要求我們傳一個惡意指令進行執行,所以搞個ls康康:
(方法與上面相同,只是替換-H的數據)
(這里我把ls\n放在一個數據包里傳,也可以分成三個傳)
能看到發送了ls指令:
收到的數據包包含了ls的結果,即指令被執行:
同樣的,scapy:
指令也能被執行:
反彈shell
和前一關一樣的呀,就是替換指令
發送了反彈shell的指令:
這時候攻擊者開啟的9090端口顯示登錄信息,然后就能遠程使用shell啦~
再根據要求驗證一下pwn:
鐺鐺鐺,就做完啦~
做完這個再看Mitnick也很簡單
文檔很清晰,跟著做就沒問題
感謝大佬:
https://www.cnblogs.com/vege/p/12995699.html
https://www.pianshen.com/article/31291562106/
TCP會話劫持的大佬:
https://blog.csdn.net/xxx_qz/article/details/70945769
總結
以上是生活随笔為你收集整理的SeedLab6: TCP/IP Attack Lab的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源问答Tipask伪静态apache和
- 下一篇: 微信集成(帆软报表)