读取PCAP文件时检测半开扫描

时间:2016-11-21 03:48:08

标签: python-2.7 tcp tcp-ip pcap dpkt

我正在尝试使用“dpkt”包装器库在Python 2.7中编写一个小脚本来解析示例PCAP文件。

我确实为NULL扫描成功编写了特定的检查,例如seq = 0且标志未设置,但是如何进行半开扫描尝试?

我尝试做类似的事情: if SYN and RST flags are set print "Half-open" scan detected

但是上面的逻辑并没有从具有半开连接的示例PCAP文件中获取连接。

我还需要做其他检查吗?

1 个答案:

答案 0 :(得分:0)

常规TCP握手与典型的半开放式#34;之间的区别。 TCP连接工作流程(通常用于监视和负载平衡)是这样的:

Normal
------
Client ---SYN---> Server
Client <-SYN,ACK- Server
Client ---ACK---> Server

Half-Open
---------
Client ---SYN---> Server
Client <-SYN,ACK- Server
Client ---RST---> Server

所以你看到它只是最后一个与客户端到服务器的数据包不同。您不会找到识别半开的单个数据包。您需要寻找一个流程/序列/对话(无论您想要什么称呼它),看起来像我描述的半开放,通常很快发生(理想情况下,如果一切都在工作,几毫秒内)正确地)。