问题标签 [dpkt]
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 - 通过 Python DPKT 从 PCAP 中提取所有协议数据并另存为 CSV
团队,我想从 wireshark pcap 文件中提取No_of_ARP_Request
, No_of_TCP_SYN
, Number_UDP_138
, NBNS
, MDNS
, IGMP
, ICMP data Src_MAC_Address
, Dest_MAC_Address
,Src_Port
等特征。
这是为了通知,我已经提取了特征并通过 DPKT 为 ARP 数据保存为 CSV。对于如何通过 DPKT 提取所有特征并保存为 CSV,任何人都可能有更好的建议或代码。谢谢你。Dest_Port
python - 如何通过 Python 计算 CSV 列中的重复 IP
我有提取 PCAP ARP src_ip 和 Dest_IP 并保存在 CSV 文件中的程序。我需要代码如何计算 Src_IP 请求 dest_ip 的次数(例如 192.168.0.1 src_IP 尝试与 Dest_ip 连接 10 次)。那么如何计算列中的重复 IP。或如何将 src 计数到 dest IP 或任何其他在列中计算重复 IP 的想法。
下面的代码我需要计算 src 目标的次数
dpkt - dpkt 是否支持将数据文件写入 pcpang?
到目前为止,我一直无法成功地将从 dpkt.pcapng 解析的数据包写入新的 pcapng 文件。时间戳按预期正确重写,但数据包有效负载被覆盖为我无法追溯到的通用(?)值
(我无法发布图片,但我会尝试将一张图片上传到共享网站并在此处链接)
我尝试遵循单元测试文件的写入顺序,但无法确定在读取数据包或写入数据包时是否出现错误。
任何帮助,将不胜感激!
python - 创建一个 python 脚本来计算使用 tcpdump 到达网站的数据包数量?
假设我运行:tcpdump -w 0001.pcap -i eth0
并且在捕获期间我正在访问 stackoverflow,然后我取消了捕获。这给了我一个 .pcap 文件,其中包含所有捕获的数据和用于访问 stackoverflow 的数据包。
我正在尝试创建一个简单的 python3 程序,它为我提供了一个摘要或列表,其中包含访问该网站所需的数据包总数。我正在使用 dpkt-module 但我似乎找不到一个简单的解决方案。
我在 Python 方面很糟糕。我将不胜感激有关如何执行此操作的任何提示。
python - 在 python 中访问/迭代复杂字典对象的问题
因此,我想以我对 python 很陌生...我正在尝试从复杂对象中访问值来作为开头。在 for 循环中使用 for 循环时,我不断收到错误,例如...
TypeError:对象不支持赋值
或者
AtributeError:“str”对象没有属性“syn”
...我认为这是由于在第 #1 节中对 scan.results 对象的分配connect(packet.s
或类的不正确构造。在方法connect_scan_exist的 #2 区域中,我们可以看到访问 value.flags.XX 的问题。我认为这是由于我构建字典中使用的支持类对象的方式。
方法
# 1. 抓取所有 TCP syn
# 2. 遍历所有 TCP syn 寻找匹配的 syn/ack
# 3. 遍历所有 TCP syn 寻找匹配的 ack
课程
python - Python2 和 Python3 DPKT 似乎返回不同的输出格式
DPKT 库说它现在支持 Python3,但是当我在 Python 2.x 和 3.x 中使用它时,它的行为有所不同。虽然,两者都不正确,但它似乎出现了。
例如,在 Python 2.x 中,此处给出的示例
返回一个我不期望的格式,一个类似于:
但是,在 Python 3 中,我被迫以“rb”模式打开 pcap 文件,这很好,除了输出问题(我不确定“rb”现在与这些问题有什么关系):
这现在返回我认为是字节串的内容,但我还没有找到一种方法来从中获取我需要的数据。例如,如果我需要标志的数量,我可以从他们网站的上述示例中轻松获得 17 个,但我似乎根本无法让他们的示例工作:
我没有任何运气将此字符串转换为人类可读的对象。没有任何组合decode
,binascii
或者我尝试过的任何其他方法都有效。我是否错误地使用了这个库?
python - 如何在 802.1Q 和 SLL 中使用 dpkt?
我正在使用 python 中的 PCAP 并使用 dpkt 来阅读它。PCAP 文件中的数据是 Linux Cooked Capture, SLL for friends。这是在 Wireshark 中看到的示例数据包:
这是我用来获取 TCP 数据的代码:
这就是代码输出,它是字节编码的,但这很好,因为程序的其余部分并不关心,我不需要让它可读:
现在,问题。我转移到另一个 PCAP,仍然是 Linux Cooked Capture,但这个具有IP over 802.1Q VLAN。所以这里我们有问题包:
但如果我运行相同的代码,这是我得到的输出:
现在,我想问题在于添加到数据包中的 4 字节 802.1Q: eth.data 被读取为字节,因为没有识别 IP 标头,所以当我去执行 ip.data 时,如前所述,没有属性'数据'。但我不知道如何规避这个问题。这是另一个捕获,我知道 dpkt 有一个 dpkt.ethernet.VLANTag8021Q 类,但据我尝试,这不适用于 Linux Cooked Capture。我可以考虑搬到 dpkt 以外的图书馆,但我真的不想这样做,因为这是一个工作项目的一部分,截止日期非常严格。
那么,当 TCP 数据通过 IP、通过 802.1Q、通过 dpkt“通过”SLL 时,我如何访问它们?
python - Python 正则表达式,匹配最后一个 ip 八位字节
我正在尝试匹配 IP 地址的最后一个八位字节,但它不起作用。
我错过了什么吗?谢谢你的帮助
python - 如何使用 Python 的 dpkt 模块处理数据包捕获
我正在尝试编写一个 python 程序来使用 dpkt 模块解析数据包捕获。我已将它用于具有以太网和 tcpdump 捕获的数据包捕获,并且工作正常。但是,我当前的数据包捕获是直接具有 IP 标头和后续协议的原始数据包捕获,似乎 dpkt 无法理解这些捕获。附上捕获文件的图片。在此处输入图像描述
我的代码是
关于如何解析此类捕获的任何想法?
谢谢 !!
python-3.x - 为什么我收到 ModuleNotFoundError:没有名为“dpkt”的模块?
当我跑
它给
ModuleNotFoundError:没有名为“dpkt”的模块
但是我已经安装了dpkt。 安装 dpkt cmd
有谁知道我该如何解决这个问题?我正在使用window10,python3。