问题标签 [scapy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 sniff() 函数进行 Scapy 过滤
我正在使用 scapy 函数 sniff() 进行数据包捕获。我只想捕获 EAP 数据包。我可以使用 tcpdump 使用以下过滤器过滤 EAP 数据包:
同时,我使用相同的过滤器运行 sniff() 函数,但函数不捕获任何 EAP 数据包:
为什么 sniff() 函数不捕获任何 EAP 数据包?
编辑:
抱歉我的反应迟了,我尝试了你的建议:
但这仍然不能捕获 EAP 数据包:(
python - 用 scapy 在 python 中编写以太网桥
我想做这样的事情:
这样就A
可以将数据包发送到C
through B
。
我试图通过运行一个scapy程序来构建这个东西,B
它会嗅探端口e
和f
,并在每种情况下修改数据包中的目标 IP 和 MAC 地址,然后通过另一个接口发送它。就像是:
然而,当我运行这个东西(这里的完整源代码)时,各种疯狂的事情开始发生......一些数据包通过了,我什至得到了一些响应(用 测试ping
)但是有某种类型的反馈循环导致了一堆重复的数据包被发送......
有什么想法吗?尝试这样做是不是很疯狂?
我有点怀疑反馈循环是由B
对数据包进行自己的一些处理这一事实引起的......有没有办法阻止操作系统在我嗅探数据包后处理它?
python - 在 ScaPy 中使用 LenFields
我正在 ScaPy 中编写一些协议,但很难理解 len 字段的工作原理。阅读http://trac.secdev.org/scapy/wiki/LengthFields后,我的开明程度也不逊色。
显然,我们有他们所谓的“lenfield”(保存字段的长度)和“varfield”(包含实际的可变长度字段)。但是,似乎唯一可以是 varfield 的字段是 PacketLenField、StrFixedLenField 和 StrLenField。其余的田地在哪里?为什么不能有可变长度的 BitField 或 XBitField?
例如我有:
这正确返回了 8 的长度(在这种情况下我想要的字段是 8 个八位字节/ 4 个十六进制对长)。到目前为止一切都很好。但是,当我尝试获取该字段时,似乎我唯一的选择是 StrLenField,它返回类似 'A\x81\x11\x11P 3'
所以,我的问题是:如何将该字段作为数据包中的实际十六进制取回?我是否缺少内置字段中的某些内容,或者我是否必须创建类似 XBitLenField 的内容?
谢谢你的帮助。
python-3.x - Scapy 和 Python 3.2
Scapy 会与 Python 3.2 兼容吗?我一直试图找到一些关于它如何执行的信息,因为 Scapy 网站上关于 Python 3.X 兼容性的信息相当稀少(如果有的话),而且我没有提供任何信息。有没有人尝试在 Python 3.X 上使用它,它的表现如何?
python - 为什么我的标准输出会干扰我在 python 中的网页?
非常简单的代码,只使用 scapy 触发一个 pcap(数据包),
如果我只想对自己做简单的 cgi-bin POSTS 来运行一组 10 个简单的测试,为什么这只是作为文本(而不是网站)返回。如果我注释掉该行
然后下面的代码实际上可以很好地生成网站......但它实际上不会发送数据包,我想这是标准输出的东西......欢迎提出建议!
如果我查看源代码,我会看到这个->
python - scapy的最终EXE文件是否需要另一个依赖文件
我想使用 编写程序scapy
,例如使用 scapy 发送自定义数据包,完成程序后,我想使用 将 python 文件转换为 EXE 文件py2exe
,以便在没有python
. 但是我注意到scapy for windows的安装需要很多依赖文件,例如,,,,,,使用py2exe转换为exe文件后pywin32
,用户是否应该安装多个文件才能使程序可执行?我的程序打算在各种计算机上执行。我不希望用户安装这么多依赖文件。winpcap
pypcap
libdnet
pyreadline
proxy - 如何根据包含的数据(文本)过滤/嗅出网页?
我正在寻找对我的小项目有用的信息,它允许我嗅探从网络服务器接收的网页,在它出现在浏览器中之前,我将测试内容(文本),然后根据这个测试,我的程序块(或重定向) 页面以防测试为假...
我发现一个非常完整的库是scapy,他可以嗅探和伪造所有流量,包括 http 回复..
我发现有人想做类似的事情,但响应建议开发代理..
我的问题是:做代理需要什么?或者只是懒惰
duplicates - 检测具有相同 MAC 地址和相同 IP 地址的计算机
在 LAN 上,我如何检测具有相同 MAC 地址和相同 IP 地址(由 DHCP 提供)的计算机?
在我的局域网中,这是一个常见问题,因为虚拟机克隆一直在进行。
到目前为止,我已经尝试过:
我已经有一个使用 scapy 的工作脚本来检测具有相同 MAC 但不同 IP 地址的计算机。
scapy - 如何用 scapy 更改数据包数据?
如何用 scapy 更改数据包数据?
我尝试使用sniff()
然后send()
编辑的数据包,但它不会工作,因为原始数据包已经到达它的目的地。
python - 删除 tzsp 标头以规范 pacquet
我试图在“python”上创建一个小嗅探器,以删除我的路由器用来向我发送一个副本的所有流过它的数据包的 tzsp 封装。问题是我想使用 ossim 和 snort 来分析流量,并且想解封装数据包并将其发送到 snort 正在侦听的虚拟接口。
我已经有了嗅探器,但没有找到剥离 tzsp 标头以获取原始数据包并在之后发送的方法。我看到其他人在 perl 上做过这个,但不知道如何在 scapy 上做同样的事情。
它基本上删除了前 5 个字节。
# --- 剪切 TZSP 字节 my $tzspheader = substr $udp->{data}, 0, 5; 我的 $tzspdata = substr $udp->{data}, 5;
完整的 perl 脚本 -> http://wiki.mikrotik.com/wiki/Calea_perl_trafr
我可以使用 pkt scapy 格式作为数组吗?如果我删除了路由器接收到的数据包的标头,我可以使用 scapy 直接发送它还是我必须根据原始数据包协议创建一个 emtpy 数据包并将每个字段复制到新的?
谢谢你们