跳转到主要内容

Scapy:交互式数据包处理工具

项目描述

Scapy   Scapy

PyPI Version License: GPL v2

Scapy 是一个基于 Python 的强大交互式数据包操作程序和库。

它能够伪造或解码大量协议的数据包,将它们发送到线上,捕获它们,使用 pcap 文件存储或读取它们,匹配请求和回复,等等。它设计用来通过使用默认值快速进行数据包原型设计。

它可以轻松处理大多数经典任务,如扫描、路径追踪、探测、单元测试、攻击或网络发现(它可以替代 hping、nmap 的 85%、arpspoof、arp-sk、arping、tcpdump、wireshark、p0f 等)。它也在许多其他其他工具无法处理的特定任务上表现良好,例如发送无效帧、注入自己的 802.11 帧、结合技术(VLAN 跳跃+ARP 缓存中毒、在 WEP 保护的通道上进行 VoIP 解码等)。

Scapy 支持 Python 3.7+。它旨在跨平台使用,并在许多不同平台(Linux、OSX、*BSD 和 Windows)上运行。

入门

Scapy 可以作为 shelllibrary 使用。有关详细信息,请参阅文档中的 Scapy 入门

shell 示例

Scapy install demo

Scapy 可以轻松用作交互式 shell 与网络交互。以下示例展示了如何向 github.com 发送 ICMP Echo Request 消息,然后显示回复的源 IP 地址

sudo ./run_scapy
Welcome to Scapy
>>> p = IP(dst="github.com")/ICMP()
>>> r = sr1(p)
Begin emission:
.Finished to send 1 packets.
*
Received 2 packets, got 1 answers, remaining 0 packets
>>> r[IP].src
'192.30.253.113'

资源

文档包含更多高级用例和示例。

其他有用资源

安装

Scapy 在 Linux 和 BSD 类操作系统上无需任何外部 Python 模块即可工作。在 Windows 上,您需要安装一些必需的依赖项,具体请参阅文档

在大多数系统上,使用 Scapy 与运行以下命令一样简单

git clone https://github.com/secdev/scapy
cd scapy
./run_scapy

要使用 Scapy 的所有功能,例如绘图,您可能需要安装 Python 模块,例如 matplotlib 或 cryptography。请参阅 文档 并按照说明进行安装。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

scapy-2.6.0.tar.gz (2.3 MB 查看哈希值)

上传时间

构建分发

scapy-2.6.0-py3-none-any.whl (2.4 MB 查看哈希值)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面