scapy:交互式包操作工具

scap的Python项目详细描述


斯卡皮

Travis Build StatusAppVeyor Build StatusCodecov StatusCodacy BadgePyPI VersionPython VersionsLicense: GPL v2Join the chat at https://gitter.im/secdev/scapy

scapy是一个强大的基于python的交互式包操作程序,并且 图书馆。

它能够伪造或解码多种协议的数据包,并发送它们 在线路上,捕获它们,使用pcap文件存储或读取它们,匹配请求 还有回复等等它的设计允许通过 使用有效的默认值。

它可以轻松处理大多数经典任务,如扫描、跟踪、探测, 单元测试、攻击或网络发现(它可以替代hping,85%的nmaparpspoofarp-skarpingtcpdumpwiresharkp0f等)它也 在许多其他工具无法完成的特定任务上表现出色 处理,比如发送无效帧,注入自己的802.11帧,组合 技术(VLAN跳转+ARP缓存中毒,WEP保护上的VoIP解码) 频道,…)等

scapy支持python 2.7和python 3(3.4到3.7)。它的目的是 跨平台,运行在许多不同的平台上(Linux、OSX, *BSD和Windows)。

开始

Scapy可以用作shelllibrary。 有关详细信息,请转到Getting started with Scapy,这是文档的一部分。

外壳演示

Scapy install demo

Scapy可以很容易地用作与网络交互的shell。 下面的示例演示如何将ICMP回显请求消息发送到 github.com,然后显示应答源IP地址:

sudo./run_scapyWelcometoScapy>>>p=IP(dst="github.com")/ICMP()>>>r=sr1(p)Beginemission:.Finishedtosend1packets.*Received2packets,got1answers,remaining0packets>>>r[IP].src'192.30.253.113'

资源

documentation包含更多 高级用例和示例。

其他有用资源:

Installation

Scapy在Linux和类似BSD的操作系统上没有任何外部Python模块 系统。在Windows上,您需要安装一些必需的依赖项 在the documentation中描述。

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

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

要从所有scapy功能(如打印)中获益,您可能需要安装 python模块,例如matplotlibcryptography。见 documentation和 按照说明安装

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
用于批量操作的java RESTful API分块响应   java读取在线存储的文本文件   在Java ME中将双精度舍入到小数点后5位   java查找一个数字的最接近因子   java更改JMenuBar的字体   java Kmeans聚类算法运行时间和复杂性   java是否可以阻止try catch返回null   java内容解析器指向具有正确URI的错误表   java Android Kotlin插装测试未被识别为插装测试   java TestNG@Dataprovider   在forloop和print语句中声明变量时发生java错误   java在Android Studio 3中设置JNI