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 jstl c:set无法处理jsp文件中的js代码   春季mvc你好!Junit平台v.5.8.1 java出现错误。lang.NoSuchMethodError:org。朱尼特。站台平民util。注释。芬丹符号   java如何结合PowerMock和Robolectric   java打印从列表返回最大值   java正则表达式,用于拆分遵循ABNF格式的字符串   在Java 1.4中,如何在不迭代的情况下将结果集的值插入hashmap?   io Java:带状态的ASCII随机行文件访问   首次尝试在Eclipse之外运行java程序   为什么在Java8Lambda中使用“Collectors.toList()”而不是“Collectors::toList”?   Java为多个值中的一个调用非类方法   charat如何在小于和大于之间查找文本,然后在Java中剥离<>?   从milis创建日期时java不一致   使用Java将字符串与CMD输出进行比较   java Android应用程序可以在调试中工作,但不能发布   java notifyAll()不工作,如何在socket编程中通知所有线程   为什么java没有呢。整数扩展java。朗,朗?   二进制文件上的socketJava http请求无法读取正确的内容长度   java有可能获得100条以上的推文吗?   javaoracle与JDBC的连接