當路由收到 ip 資料報,發現資料報的目的位址在路由表上卻不存在時,它傳送 icmp 重定向報文給源傳送方,提醒它接收的位址不存在,需要重新傳送給其他位址進行查詢。
在重定向 icmp 報文中,型別值為 5,**值為 0。
偽造重定向 icmp 資料報需要使用 netwox 工具中編號為 86 的模組。
【例項】已知主機 a 的 ip 位址為 192.168.59.132,netwox 工具所在主機 ip 位址為 192.168.59.135。基於 netwox 所在主機向主機 a 實施攻擊。為了不讓目標主機發現攻擊的**,偽造資料報的源 ip 位址為 192.168.59.136,將目標主機的閘道器修改為網段中的其他主機,使目標主機傳送的資料報重定向到該主機上。
具體步驟如下:
1) 檢視目標主機a的閘道器。在目標主機 a 上,向 www.qq.com ( 傳送 ping 請求。通過捕獲資料報,檢視閘道器資訊,如圖所示。
圖中第 2 幀和第 3 幀為 dns 協議查詢資料報,是通過閘道器查詢 www.qq.com ( 主機的 ip 位址資訊。從中可以判斷,目標主機的閘道器為 192.168.59.2。
root@daxueba:~# netwox 86 -g 192.168.59.131 -c 1 -i 192.168.59.136
執行命令沒有任何輸出資訊。
3) 在目標主機上向 www.qq.com ( 傳送 ping 請求,執行命令如下:
root@daxueba:~# ping www.qq.com
輸出資訊如下:
上述輸出資訊中,64 bytes from no-data(125.39.52.26):icmp_seq=1 ttl=128 time=25.6 ms 表示成功向目標 www.qq.com ( 傳送 ping 請求;from localhost(192.168.59.136):icmp_seq=1 redirect host(new nexthop:localhost(192.168.59.131)) 表示偽造的重定向 icmp 資料報,源 ip 位址為 192.168.59.136,redirect host 表示目標主機已經重定向,重定向到了主機 192.168.59.131 上。
4) 在目標主機上捕獲資料報,驗證重定向的資料報,如圖所示。
其中,第 11 幀的源 ip 位址為 192.168.59.136(設定的源 ip 位址),目標 ip 位址為 192.168.59.132(設定的目標 ip 位址),info 列的 redirect(redirect for host) 表示該資料報是乙個重定向資料報。
在 internet control message protocol 部分中,type 值為 5,code 值為 1,說明該資料報是重定向的資料報;gateway address:192.168.59.131 表示該主機的閘道器被重新定向到了 192.168.59.131。
5) 選擇第 13 幀,檢視閘道器的重定向資訊,如圖所示。
第 13 幀的源 ip 位址為 192.168.59.136(設定的源 ip 位址),目標 ip 位址為 192.168.59.2(目標主機 a 的閘道器)。該資料報也是乙個重定向的資料報。
在 internet control message protocol 部分中,gateway address:192.168.59.131 表示目標主機 a 的閘道器被修改為了 192.168.59.131。
偽造IP包,禁止TCP連線
大家是否想過在區域網內如何禁止別人訪問web server,pop3,ftp等。那麼如何禁止呢?大家都知道tcp是面向連線的,連線時有三次握手,之後才能確認連線成功。那麼我們就應該能在第一次握手之後偽造乙個服務方的握手返回,從而達到tcp連線不成功,無法訪問某埠。程式如下 void decodeip...
偽造IP包,禁止TCP連線
大家是否想過在區域網內如何禁止別人訪問web server,pop3,ftp等。那麼如何禁止呢?大家都知道tcp是面向連線的,連線時有三次握手,之後才能確認連線成功。那麼我們就應該能在第一次握手之後偽造乙個服務方的握手返回,從而達到tcp連線不成功,無法訪問某埠。程式如下 void decodeip...
HTTP協議學習(重定向)
http重定向 伺服器無法處理瀏覽器傳送過來的請求 request 伺服器告訴瀏覽器跳轉到可以處理請求的url上。瀏覽器會自動訪問該url位址,以至於使用者無法分辨是否重定向了。重定向的返回碼3xx說明。location響應首部包含了內容的新位址或是優選位址的url。301 在請求的url已被移除時...