Wireshark 使用TShark将加密的SNMPv3陷阱导出为JSON

Wireshark 使用TShark将加密的SNMPv3陷阱导出为JSON,wireshark,snmp,tshark,Wireshark,Snmp,Tshark,我有一个pcap文件,其中记录了Wireshark(版本3.2.2)加密的SNMPv3陷阱。为了分析陷阱,我想使用tshark将协议数据导出到json 目前,我通过C:\users\developer\AppData\Roaming\Wireshark中的“snmp\U users”文件提供信息来解密包 是否可以通过命令行提供选项 我试过: tshark.exe -T ek -Y "snmp" -P -V -x -o "snmp.users_table.userna

我有一个pcap文件,其中记录了Wireshark(版本3.2.2)加密的SNMPv3陷阱。为了分析陷阱,我想使用tshark将协议数据导出到json

目前,我通过C:\users\developer\AppData\Roaming\Wireshark中的“snmp\U users”文件提供信息来解密包

是否可以通过命令行提供选项

我试过:

tshark.exe -T ek -Y "snmp" -P -V -x -o "snmp.users_table.username:snmp_user" ...
但这会导致一个错误:

tshark: -o flag "snmp.users_table.username:snmp_user" specifies unknown preference
更新日期:2020年9月16日:
使用选项-Y代替-J:

-Y |--显示过滤器
导致指定的筛选器(使用读取/显示语法 之前应用的过滤器(而不是捕获过滤器) 打印解码后的数据包或将数据包写入文件


您需要将该选项指定为用户访问表或
uat
,具体的表是文件名,即snmp\u用户。例如:

在Windows上:

tshark.exe -o "uat:snmp_users:\"\",\"snmp_user\",\"SHA1\",\"xxxxxx\",\"AES\",\"yyyyyyy\"" -T ek -J "snmp" -P -V -x -r input.pcap > output.json
在*尼克斯:

tshark -o 'uat:snmp_users:"","snmp_user","SHA1","xxxxxx","AES","yyyyyyy"' -T ek -J "snmp" -P -V -x -r input.pcap > output.json

不幸的是,Wireshark文档目前缺乏对
uat
选项的描述。不过,正在进行一个Google代码夏令营项目,Wireshark也参与了该项目,因此这里的文档可能会有所改进。

是的,更好的文档将非常棒。谢谢你,Christopher!你的解决方案有效。我又查过了。它不会留下纯文本密码,比如Wireshark GUI使用协议首选项中的“用户表”选项。
tshark.exe -o "uat:snmp_users:\"\",\"snmp_user\",\"SHA1\",\"xxxxxx\",\"AES\",\"yyyyyyy\"" -T ek -J "snmp" -P -V -x -r input.pcap > output.json
tshark -o 'uat:snmp_users:"","snmp_user","SHA1","xxxxxx","AES","yyyyyyy"' -T ek -J "snmp" -P -V -x -r input.pcap > output.json