问题标签 [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.

0 投票
1 回答
6770 浏览

python - 使用 scapy 完成 HTTP GET

我正在尝试使用 scapy 来运行完整的 HTTP 会话。也就是说,我想手动执行三种方式的握手、GET 请求、接收 HTML 文件所需的确认以及终止连接。使用 [1] 我已经完成了三路握手和 GET 请求,但我似乎无法捕获从服务器发送的原始 HTML 数据包,而且我显然无法再发送回一个 ack 数据包。有任何想法吗?

此外,我最终希望能够解析 HTML 的原始数据包。如果有人知道如何从一个 scapy 数据包中做到这一点,我将不胜感激。

[1] http://www.thice.nl/creating-ack-get-packets-with-scapy/

0 投票
2 回答
142 浏览

python - Scapy,无法获得属性“名称”值

您好,我发现了这种奇怪的奇怪行为:

当我想要访问属性“数据”时,我得到它的值,但是当我访问属性“名称”时,我得到字符串“LEAP”而不是“RSAINI”。你能告诉我如何获得属性名称的正确值吗?

0 投票
1 回答
1671 浏览

python - 欺骗 MAC 地址通信的行为

我正在使用 Python 和他的合作伙伴 Scapy 进行编程。我面临的情况是,我不知道这是 ARP 协议的正常行为还是其他问题。

我有这种情况:

1-一台 vm 机器 (1) 向另一台 vm 机器 (2) 发送一个“ARP 请求”,其中包含 Spoofed Source MAC Address 字段(由 Scapy 生成)。

2 - vm 机器 (2) 接收到带有欺骗源 MAC 地址字段的“ARP​​ 请求”,并使用“ARP 回复”来响应。奇怪的是 vm 机器 (1) 收到了。

注意:我已通过 Wireshark 确认第一个数据包(ARP 请求)到达 vm 机器 (2),且源 MAC 地址字段确实被欺骗了。并且网络接口上的混杂模式被禁用,因此,vm 机器只接收真正发往其接口的数据包。

所以,我的问题:

a)这是 ARP 协议的正常行为吗?

b)因为vm机器(1)在你的接口上配置了另一个MAC地址(真实的),从vm机器(2)发送的响应数据包如何在Destination字段上带有另一个MAC地址(即被欺骗,所以,甚至没有存在于网络上)到达 vm 机器 (1) 并由 vm 机器 (1) 像有效的“ARP​​ 回复”一样有效处理?

0 投票
2 回答
4093 浏览

icmp - scapy:修改嗅探流量 TTL 的正确方法

我正在和 Scapy 玩耍,我注意到一些奇怪的事情。

如果我创建一个数据包以触发 ICMP 超时错误消息:

...一旦我使用该功能发送 ICMP 消息,我就会收到它sr

另一方面,如果我获取任何已嗅探的传出数据包并将其 ttl 值更改为上面使用的相同值,我将得不到任何回复。

这里有什么问题?我以为我可以通过使用虚拟流量而不是真实流量来体验这一点!我什至尝试使用其他 TTL 值,但无济于事。

0 投票
1 回答
9215 浏览

python - 在 Scapy 中的每个数据包上指定时间戳?

使用Scapy,当我创建一个数据包并将其写入pcap文件时,它会将数据包的时间戳设置为当前时间。

这是我目前的用法。1335494712.991895是我创建数据包的时间:

如何为每个数据包指定自己的时间戳?

我在文档中看到了用于设置时间戳的TCP时间戳,但它似乎对实际pcap时间戳没有影响。

0 投票
1 回答
2873 浏览

python - 使用 Python 从 Scapy 获取变量

嗨,我需要帮助来尝试访问 scapy 返回的元组中的元素。代码如下。

如果我输入 Scapy 并手动输入这两个命令,它将返回一个 IP 地址。但是我从 Python 脚本中运行它,并且需要将该 IP 地址存储为变量。这可能是一个愚蠢的问题,我只是在学习 Scapy,但是如何使用 scapy 将此 IP 地址存储为变量?我想要实现类似下面的目标。

0 投票
3 回答
25793 浏览

python - 在 scapy / python 中获取数据包大小

在 Scapy(或者甚至只是 Python)中,我如何获得给定数据包的大小(以字节为单位)?我很想使用这个函数len,但我不确定它在数据包的情况下究竟返回什么。

0 投票
2 回答
991 浏览

python - 根据另一个类的字段动态获取字段类型(使用 Scapy 工具 - Python)

我想知道如何根据另一个类的字段动态定义一个类的字段类型???我的意思是如何定义一个字段并将其从一个类链接到另一个类,例如:

0 投票
1 回答
2060 浏览

python - 使用 Scapy 逐步剖析有效载荷的每个部分

我想知道如何使用 Scapy 根据不同的字段类型/长度来剖析有效负载。

例如,我有这个 =>

我想逐步划分每个部分:第一部分为 2 个字节/第二部分为 4 个字节等...

实际上,我使用 Scapy 添加了一个新协议,但最后一部分管理起来非常复杂,所以这就是为什么我选择/尝试以这种方式剖析有效负载的最后一部分(上图)。

0 投票
2 回答
2601 浏览

python - python/scapy RandMAC() 问题

我有一个非常烦人的问题,我试图解决几天。我在网上找不到任何信息。

我试图自己解决它,查阅了文档。但没有任何效果。

我的问题是

X当我用RandMAC()函数分配变量时,X每次使用时都应该相同。

就像,, X = RandMAC()让我们说X现在AA:BB:CC:DD:EE:FF ,当我打印 X 3 次时,它应该是这样的。

但代码实际上做的是

所以每次我调用 print X 时它都会改变。

我该如何解决这个问题?

我的代码如下。

谢谢大家。