问题标签 [tshark]
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 访问 802.11 无线管理帧
从 Linux 上的 Python 我想嗅探 802.11 管理“探测请求”帧。这可以从 Scapy 中实现,如下所示:
或者像这样来自 tshark:
我们可以重定向来自 tshark 的输出,并用一些 Python 来处理它(不漂亮,但它可以工作)。
然而,这两个选项都有 GPL 许可,这使得潜在的商业项目变得棘手。因此,我试图在 Python 中为这个特定问题找出一个“低级”解决方案。从谷歌我已经设法制定出两个潜在的尝试方向:
Pcap 库:似乎有三个可用于 Python 的 pcap 库: pylibpcap、pypcap和pcapy。我不太确定如何将上述功能合并到这些中。任何示例代码或解决方案都会很棒。
原始套接字:PF_PACKET:“数据包套接字用于在设备驱动程序(OSI 第 2 层)级别接收或发送原始数据包。它们允许用户在物理层之上的用户空间中实现协议模块。”
这听起来可能是另一种选择,完全绕过 pcap。我听说这甚至可能是一种更好的方法,消除了 pcap 库的开销。不过,我不确定从哪里开始解决这个问题。
解决此问题的任何帮助将不胜感激。
wireshark - tshark 输出所有字段?
是否可以使用该选项或类似选项tshark
输出每个字段(在数据包内) ?-T fields
例如,对于数据包/重构中的每个字段,我想要这样的东西:
(当值包含逗号时,可以用 a 替换逗号\xff
以使解析更好。)
我意识到有这个-e
选项,但似乎我必须在命令行中输入每个可能的字段。最重要的是,每个数据包中只会使用一小部分字段,这会导致大量数据需要解析。
我目前计划使用该tshark -V
选项并对其进行解析,但理想情况下,我想要更多机器样式的术语,例如http.request.uri
而不是“人类可读”,例如:
porting - 构建 tshark
我正在将 tshark 移植到不同的操作系统。有人可以告诉我可以从源代码中删除哪些文件/文件夹吗?我知道 GTK 不是必需的;但如果我能在一开始就删除所有不必要的文件/文件夹,那就太好了。
提前致谢。
linux - 如何在运行中解析 linux 嗅探器结果?
我想排序并计算客户端从我的服务器下载了多少文件(3 种类型)。
我安装tshark
并运行了应该捕获GET
请求的以下命令:
所以嗅探器开始工作,每一秒我都会得到新的一行,结果如下:
我需要做些什么来存储结果类型并像/pids/*****.bin
其他文件一样计数。我在 linux 上不强,但可以肯定它可以用 1-3 行脚本来完成。
也许有,awk
但我不知道读取嗅探器结果的技术是什么。
谢谢,
linux - 如何防止 tshark 在 /tmp 下创建临时文件?
我想运行以下命令:
如您所见,我写入stdout
文件some.txt
。
但是我得到了/tmp
名为临时文件的文件夹etherXXXX*
,这些文件可以在 1 小时内增加到 1-2G。
从tshark man
我发现使用-b option
.
所以我写道:
并得到错误:tshark: Maximum capture file size specified, but capture isn't being saved to a file.
从tshark.c
我发现使用-w
标志的代码中
现在没有文件被创建,/tmp
但是 some.txt 文件现在是 bin 文件,我无法打开它。因为-w
标志使它像cap
扩展名一样。:(
如何处理临时文件?
顺便说一句,some.txt
文件内容是:
谢谢,
linux - How to filter tshark results before to write to file?
I try to calculate GET
Request from my server.
I use tshark
.
I run followed command to filter incoming traffic and fetch only GET
requests:
As you see I defined to store filtered results to 1 file with max size 1G and name: samples.pcap
.
The problem is, when i try to open pcap file i see that tshark stored all traffic there
:
I have really big traffic, during 10 min i get pcap file size 950M. And it takes about 4 min to parse it.
The interesting thing is when I try to run it without to store it to local file (but under /tmp):
It works, but in this case i have under /tmp several temp files with huge size 1G+.
Did i miss something?
Thank you
=======================================================
Edit
Lars asked to add -f
:
Doesn't help, still samples.pcap stores all traffic:
networking - 当服务器和客户端都在同一台机器上时,如何捕获 pcap 跟踪?
我有一个 SMPP 服务器和客户端在同一台机器的不同端口上运行,我想捕获 pcap 以查看 smpp 消息。由于是同一台机器,在tshark命令中没有捕获到。
如果客户端和服务器都在同一台机器上,是否有任何选项可以捕获消息?
wireshark - tshark - 仅输出应用层解码
使用tshark,我将如何让它只解码和显示应用程序层?
例如,我可以使用以下方法捕获和解码 snmp 流量:
这将解码所有层,从物理层到应用层(输出截断):
(我只想从“简单网络管理协议”开始解码)。
我考虑过的其他事情
我知道使用字段输出(例如-e snmp.community)。为 snmp 指定所有字段将花费很长时间......
我可以使用 pdml 输出,并使用 XSLT 转换结果。但是 pdml 输出很慢,而且使用 XSLT 似乎有点过头了:
linux - tshark 过滤 UDP 流
我有一个场景,我有一个大块 PCAP 文件包含不同的流(共享源 IP 和端口、目标 IP 和源以及 TCP/UDP)。
我想知道是否可以使用 tshark 将这个大 pcap 文件拆分为不同的 pcap 文件流。每个 PCAP 文件都包含一个流。
我找到了这段代码,但它适用于 TCP 连接
用于流入tshark -r ~/Downloads/http.cap -T fields -e tcp.stream | sort -n | uniq
做
回声$流
完毕
我正在寻找如何拆分 UDP 连接?
非常感谢您提前提供的帮助。麦克风
python - python subprocess.popen tshark 适用于某些参数,但不适用于其他参数
当我用这个执行python脚本时:
具有预期内容的 pcap 文件与脚本正式出现在同一文件夹中。
从 pcap 创建文本文件的第二个过程不起作用:
我在 cmd 窗口中看到“Capturing on Standard input”,但没有“捕获 x 数据包”,并且文件夹中没有出现 tshark.txt 文件。
在同一位置的命令提示符下,这可以完成我希望从脚本中完成的工作:
一个电话有效而另一个电话无效,这似乎很奇怪。关于我缺少什么的任何想法?