35.伪造请求超时的ICMP数据包
在網絡傳輸 IP 數據報的過程中,如果 IP 數據包的 TTL 值逐漸遞減為 0 時,需要丟棄數據報。這時,路由器需要向源發送方發送 ICMP 超時報文,表示傳輸過程中超時了。
在超時 ICMP 數據包報文中,類型值為 11,代碼值為 0。
用戶可以通過 netwox 工具中編號為 83 的模塊偽造請求超時 ICMP 數據包。
【實例】已知主機 A 的 IP 地址為 192.168.59.134,主機 B 的 IP 地址為 192.168.59.135,在主機 C 上偽造請求超時 ICMP 數據包。
1) 在主機 A 上 ping 主機 B,執行命令如下:
root@daxueba:~# ping 192.168.59.135
輸出信息如下:
PING 192.168.59.135 (192.168.59.135) 56(84) bytes of data.
64 bytes from 192.168.59.135: icmp_seq=1 ttl=64 time=0.447 ms
64 bytes from 192.168.59.135: icmp_seq=2 ttl=64 time=0.468 ms
64 bytes from 192.168.59.135: icmp_seq=3 ttl=64 time=0.773 ms
64 bytes from 192.168.59.135: icmp_seq=4 ttl=64 time=0.307 ms
上述輸出信息表示主機 B 是可達的,并且給出了傳輸的時間。例如,time=0.447ms,表示時間需要 0.447 毫秒。
2) 在主機 C 上偽造請求超時 ICMP 數據包,設置源 IP 地址為 192.168.59.135,執行命令如下:
root@daxueba:~# netwox 83 -i 192.168.59.135
執行命令后沒有任何輸出信息,但是成功偽造了請求超時 ICMP 數據包。
3) 再次在主機 A 上 ping 主機 B,執行命令如下:
root@daxueba:~# ping 192.168.59.135
輸出信息如下:
PING 192.168.59.135 (192.168.59.135) 56(84) bytes of data.
64 bytes from 192.168.59.135: icmp_seq=6 ttl=64 time=0.336 ms
From 192.168.59.135 icmp_seq=6 Time to live exceeded
64 bytes from 192.168.59.135: icmp_seq=7 ttl=64 time=0.532 ms
From 192.168.59.135 icmp_seq=7 Time to live exceeded
64 bytes from 192.168.59.135: icmp_seq=8 ttl=64 time=0.495 ms
From 192.168.59.135 icmp_seq=8 Time to live exceeded
從上述輸出信息可以看到,主機 A 向主機 192.168.59.135 發送了 ping 請求。部分請求沒有收到響應信息,而顯示了 Time to live exceeded 信息,表示時間超時。
4) 為了驗證偽造的請求超時 ICMP 數據包,可以通過捕獲數據包查看,如圖所示,捕獲到了若干個 ICMP 超時數據包。
其中,第 3 個數據包的源 IP 地址為 192.168.59.134,目標 IP 地址為 192.168.59.135,是主機 A 向主機 B 發送的 ICMP 請求包;第 5 個數據包源 IP 地址為 192.168.59.135,目標 IP 地址為 192.168.59.134,Info 列顯示的 Time-to-live exceeded 表示時間超時,說明該數據包為偽造的請求超時 ICMP 包。
5) 選擇第 5 個數據包,查看包信息,如圖所示。
?
在該數據包的 Internet Control Message Protocol 部分中,Type 值為 11,Code 值為 0,說明該數據包是請求超時 ICMP 數據包。
總結
以上是生活随笔為你收集整理的35.伪造请求超时的ICMP数据包的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 轻松构建并发送ICMP数据包
- 下一篇: php控制flash播放视频教程,Fla