Scapy是一个Python程序,使用户能够发送,嗅探和剖析并伪造网络数据包。此功能允许构建可以探测,扫描或攻击网络的工具。
换句话说,Scapy是一个功能强大的交互式数据包操作程序。它能够伪造或解码大量协议的数据包,通过线路发送,捕获它们,匹配请求和回复等等。Scapy可以轻松处理大多数经典任务,如扫描,跟踪路由,探测,单元测试,攻击或网络发现。它可以取代hping,arpspoof,arp-sk,arping,p0f甚至是Nmap,tcpdump和tshark的某些部分。
Scapy主要做两件事:发送数据包和接收答案。您定义一组数据包,它发送它们,接收答案,匹配带答案的请求,并返回数据包对(请求,应答)列表和不匹配数据包列表。这比Nmap或hping这样的工具具有很大的优势,即答案不会减少到(打开/关闭/过滤),而是整个数据包。
除此之外,还可以构建更高级别的功能,例如,执行traceroutes并且仅提供请求的起始TTL和答案的源IP的功能。一个ping整个网络并给出机器回答的列表。执行portscan并返回LaTeX报告的人。
安装
pip install scapy
pip install ipython
用法
在Windows上,请打开命令提示符(cmd.exe)并确保您具有管理员权限:
C:\>scapy
Welcome to Scapy (2.4.2)
如果您没有安