Tcpdump:获取碎片数据包的标志

Tcpdump:获取碎片数据包的标志

如何使用 tcpdump 区分碎片化的 SYN 数据包和碎片化的 FIN 数据包?

酒吧正在营业tcpdump -vvv

Foo 以碎片化的 SYN 数据包开始扫描 Bar nmap -sS -f -p22 bar。 tcpdump 的输出为:

IP (tos 0x0, ttl 38, id 31142, offset 0, flags [+], proto TCP (6), length 28) foo.45772 > bar.ssh: [|tcp]
IP (tos 0x0, ttl 38, id 31142, offset 8, flags [+], proto TCP (6), length 28) foo > bar: tcp
IP (tos 0x0, ttl 38, id 31142, offset 16, flags [none], proto TCP (6), length 24) foo > bar: tcp

然后 Foo 用一个碎片化的 FIN 数据包开始扫描 Bar nmap -sF -f -p22 bar。tcpdump 的输出如下:

IP (tos 0x0, ttl 54, id 3818, offset 0, flags [+], proto TCP (6), length 28) foo.52739 > bar.ssh: [|tcp]
IP (tos 0x0, ttl 54, id 3818, offset 8, flags [+], proto TCP (6), length 28) foo > bar: tcp
IP (tos 0x0, ttl 54, id 3818, offset 16, flags [none], proto TCP (6), length 28) foo > bar: tcp

如何使用 tcpdump 确定碎片数据包的标志?

答案1

Tcpdump 不支持数据包碎片整理,因此如果您使用 tcpdump 进行入侵检测,您将错过所有碎片扫描。

改用 tshark。

相关内容