1

我在 pcap 文件中有一系列具有各种协议的数据包,例如 GTPV2、S1AP、Diameter 等。我需要知道是否有办法以编程方式修改某些字段,例如:

对于 GTPV2 协议:MCC 字段 - 移动国家代码,MNC 字段 - 用于 S1AP 协议的移动网络代码: Protocolie-Field 等

我设法通过专门解决我感兴趣的缓冲区的偏移量来获取 proto_tree 并修改 tvbuff 内容,但我可以说这样的话:

e212.mcc = "something"

e212.mccc 是 Wireshark 过滤器在哪里?我在问这是否可以用任何语言完成,但我的猜测是解析器仅用于显示,而不是修改,并且我没有 API 可以通过 Wireshark 过滤器直接访问数据包的字段。如果是这样,您是否知道任何可以根据某些规则(最好/也包括 Wireshark 过滤器)修改来自 pcap 文件的数据包的开源工具?

4

2 回答 2

1

我不完全理解你的问题,但如果我是对的,我sed会为你做好这项工作。正则表达式将允许您浏览文件,选择特定模式(甚至偏移量)并替换它们。当我需要将机密信息密封在必须移交给第 3 方的文件上时,我会直接在 pcap 文件上使用这种技术。

检查 这里并试一试:)

于 2012-09-27T14:33:13.293 回答
0

我在 perl 中做过类似的事情,通过使用 wireshark 将捕获文件导出为文本,然后将该文本文件构建到一个数组中,其中每个十六进制数据包都是一个条目,然后我只是将该数组运行到一个 foreach 循环中,向下钻取到GTP 层和 IE 字段解析,根据需要调整相关 IE 的十六进制值。然后我将数组打印到一个新的文本文件中(重新生成左侧的十六进制偏移量是棘手的部分),然后将新的文本文件读入 text2pcap 实用程序以将其重新生成为 .pcap 文件。

于 2013-05-20T23:31:54.083 回答