gpt4 book ai didi

c++ - 是否有用于 Wireshark 的 API,用于开发与其交互/增强的程序/插件?

转载 作者:IT老高 更新时间:2023-10-28 21:13:43 25 4
gpt4 key购买 nike

谷歌搜索没有给我很好的结果。是否有任何类型的 Wireshark API 可以从主要源代码中抽象出来,以便我们可以开发与其交互并处理它提供的数据的程序?

编辑:我很欣赏有关接收数据包的不同方式的建议,但我想在 Wireshark 中实现数据包注入(inject)。嗅探将是我项目的重要组成部分,但我不确定建议的解决方案是否允许数据包注入(inject)。

最佳答案

我使用 pypcap读取数据包和dpkt解析。

例如,使用 dpkt 从保存的 pcap 中读取数据包:

import socket
import dpkt
import sys
pcapReader = dpkt.pcap.Reader(file(sys.argv[1], "rb"))
for ts, data in pcapReader:
ether = dpkt.ethernet.Ethernet(data)
if ether.type != dpkt.ethernet.ETH_TYPE_IP: raise
ip = ether.data
src = socket.inet_ntoa(ip.src)
dst = socket.inet_ntoa(ip.dst)
print "%s -> %s" % (src, dst)

使用 pypcap 抓取帧:

    import pcap
pc = pcap.pcapObject()
dev = sys.argv[1]
pc.open_live(dev, 1600, 0, 100)
pc.setfilter("udp port 53", 0, 0)
while 1:
pc.dispatch(1, p.pcap_dispatch)

当然,两者可以一起使用:(摘自pypcap的主页)

>>> import dpkt, pcap
>>> pc = pcap.pcap()
>>> pc.setfilter('icmp')
>>> for ts, pkt in pc:
... print `dpkt.ethernet.Ethernet(pkt)`

祝你好运!

关于c++ - 是否有用于 Wireshark 的 API,用于开发与其交互/增强的程序/插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2198972/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com