Python 使用Scapy模块编写一个简单的扫描端口是否过滤

Posted code0x

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 使用Scapy模块编写一个简单的扫描端口是否过滤相关的知识,希望对你有一定的参考价值。

代码

1 from scapy.all import IP,TCP,sr
2 ans,unans=sr(IP(dst="192.168.1.128")/TCP(dport=[21,23,135,443,445],flags="A"),timeout=3)
3 for s,r in ans:
4     if s[TCP].dport == r[TCP].sport:
5         print(str(s[TCP].dport)+" is unfiltered")
7 for s in unans:
8     print(str(s[TCP].dport)+" is filtered")

先从scapy模块中导入需要的对象,进行用sr()函数进行扫描,类型为ACK扫描,最后遍历有返回的包和没返回的包,有返回的包表示端口未被过滤,无返回包表示端口已经被过滤

以上是关于Python 使用Scapy模块编写一个简单的扫描端口是否过滤的主要内容,如果未能解决你的问题,请参考以下文章

python中的scapy模块

Python编写类似nmap的扫描工具

python编写类似nmap的扫描工具

python scapy的用法之ARP主机扫描和ARP欺骗

Scapy 从入门到放弃

Linux-Python-Scapy的TCP扫描