问题标签 [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 - 使用 dpkt 从 PCAP 文件中获取多个 IP
我是 Python 和 dpkt 模块的新手,需要一些帮助。我已经尽可能多地对这个主题进行了研究,但无济于事。我的经理希望我创建一个程序来解析 PCAP 文件并将 IP 地址写入文本文件,而不管流量类型(HTTP、FTP 等)如何。我已经弄清楚了基础知识(因为在线发布了示例代码),但我不知道如何解析 .pcap 文件中的第一个条目。
我得到的最接近的方法是尝试使用“zip”命令,但这不起作用,我不知道如何打印出多个 IP,这令人沮丧。任何人都可以给我任何指示吗?我不反对使用其他模块,例如 scapy,如果这样可以使这项任务更容易。
python-2.7 - 如何使用 dpkt.pcap.Reader 从标准输入读取?
我目前正在尝试使用 USBPcap + Python/dpkt 分析传入的 USB 流量,并以光学 USB 鼠标作为示例输入设备。
启动包含命令的批处理文件后
以下代码完美运行:
输出是:
不幸的是,我在对捕获的数据进行实时分析时遇到了问题。如何让 dpkt.pcap.Reader() 使用sys.stdin而不是 open('foo.pcap')?
PS我当然可以
如官方迷你教程所示,但我想使用 USB 嗅探器 + Python 执行实时 USB 流量。
PPS Python/PyUSB + libusb-win32 完美运行,但我确实需要 USBPcap!:)
sockets - 来自 proc/net/tcp 的 TCP 端口与解析 .pcap 文件后的 tcp 源端口完全不同(android)
我正在寻找一种方法来查找应用程序和它在给定时间戳访问的 url 之间的映射。为此,我首先通过解析从时间 t1 到 t2 的数据包转储文件来获得 tcp 端口号到 url 的映射。我写了这个用于解析的python代码:
现在我将 tcp 端口从 /proc/net/tcp 映射到 uid,从 uid 我得到了应用程序名称。因此,我合并了这两个文件,并在给定的时间戳得到了 tcp 端口到应用程序名称的映射。
蟒蛇代码:
我面临的问题是运行第一个代码的 tcp 端口与从第二个代码运行的 tcp 端口完全不匹配。如果应该在给定时间戳的应用程序使用的公共 tcp 端口的基础上合并它们,从而在给定时间找到应用程序到 url 的映射。但是端口不匹配。我知道 /proc/net/tcp 用于获取每个套接字的详细信息,但它不应该影响我猜的 tcp 端口。
PS:我是初学者,在提交问题之前已经做了研究
谢谢
python - Python- 使用 DPKT 的数据包时间戳
我正在使用 dpkt 库来获取数据包的时间戳,并且需要将其转换为秒。下面是我获取数据包时间戳的代码:
我在这里有 2 个问题:
1. 时间戳是否以毫秒为单位,因为我无法从文档中确认这一点?
2.如果它以毫秒为单位......转换为秒的好方法是 ts/1000.0 ?
endianness - 小端数据包被 dpkt 视为大端
我正在使用 dpkt 来解析一些 ieee80211 数据包。
我看到创建的 ieee80211 对象有错误的值。
深入挖掘,我发现 ieee80211 将数据视为大端,而实际上我提供的数据包是小端。
有没有办法在运行时检测数据包的字节序,所以我可以在将其提供给 dpkt.ieee80211 之前将其更改为大字节序?
python-3.x - 使用 dpkt 获取给定 pcap 文件的协议跟踪语料库
信息:Python 3.6.3 通过 Anaconda Distribution
我正在使用 dpkt 解析 pcap 文件,然后循环通过它收集以太网、ip 和 tcp。
蟒蛇代码:
从中,我想提取一个协议跟踪语料库以用于 n-gram 语言模型。如何从 eth、ip 或 tcp 中提取这些字节?
python - 在没有 pyshark 的情况下过滤 pcap pap 协议
我想访问 pap 数据包中的数据,目前我正在使用 pyshark 和以下代码
它在我的电脑和 raspberrypi 上运行良好,不幸的是我想在 openwrt/lede 路由器上使用此代码,由于 ccache 错误而无法在该路由器上安装 pyshark:
我假设 openwrt 缺少一些编译器功能,所以我尝试安装其他 pcap 解析库,并且可以安装 scapy、dpkt 和 pypcapfile,它们都安装得很好,所以我怎样才能将我的代码转换为使用这些库之一
python - pcap中tcp数据包的'flags'属性值在python中被dpkt读取时代表什么?
我使用 dpkt python 包来解析 pcap 文件,并执行以下操作来获取 tcp 数据包:
现在我想看看哪些有 SYN 和 ACK 标志。我试图将具有这两个标志的那些放在一个列表中,如下所示:
我不确定这是否符合我的要求,因为我在一个示例 pcap 文件上进行了尝试,并且有很多数据包具有大量 SYN 但没有 ACK+SYN。
我注意到syn_plus_ack中tcp.flags的值是18,dpkt.tcp.TH_SYN是2,dpkt.tcp.TH_ACK是16。tcp.flags的值是数据包中所有标志值的总和吗?有什么我做错了吗?
pcap - 如何解析以 802.11 作为协议的 pcap
我正在使用 dpkt 来解析 Wireshark 嗅探到的数据包。这是我的代码:
但是,该类似乎eth
无法处理 802.11。