【发布时间】:2018-10-21 13:44:18
【问题描述】:
我正在尝试对 Diameter 消息进行 scapy/python 嗅探器并解析 Diameter 部分以从 Raw.load 获取 AVP。 在一些失败后,我回到基本的 python/scapy 脚本,如下所示: 从 scapy.all 导入 *
def pkt_diam(pkt):
raw = pkt.getlayer(Raw).load
print raw
# pkt.show()
sniff(iface="eth0", filter="port 3868", store=0, prn=pkt_diam)
通过打印 raw.load,我只收到了一些 AVP,但非常不可读。如果我使用 pkt.show() 我收到整个数据包、以太网、IP、TCP 和原始部分,但 Raw.load 我几乎无法使用。
###[ Raw ]###
load = '\x01\x00\x00\xec@\x00\x01/\x01\x00\x00\x00\x07K\x12\xca\x07K\x12\xca\x00\x00\x01\x07@\x00\x00 00000001;000001;61de2650\x00\x00\x01\x04@\x00\x00 \x00\x00\x01\n@\x00\x00\x0c\x00\x00(\xaf\x00\x00\x01\x02@\x00\x00\x0c\x01\x00\x00\x00\x00\x00\x01\x15@\x00\x00\x0c\x00\x00\x00\x01\x00\x00\x01\x08@\x00\x00\x1dtest.a-server.org\x00\x00\x00\x00\x00\x01(@\x00\x00\x14a-server.org\x00\x00\x01)@\x00\x00 \x00\x00\x01\n@\x00\x00\x0c\x00\x00(\xaf\x00\x00\x01*@\x00\x00\x0c\x00\x00\x13\x89\x00\x00\x02t\x80\x00\x008\x00\x00(\xaf\x00\x00\x01\n@\x00\x00\x0c\x00\x00(\xaf\x00\x00\x02u\x80\x00\x00\x10\x00\x00(\xaf\x00\x00\x00\x01\x00\x00\x02v\x80\x00\x00\x10\x00\x00(\xaf\x00\x00\x00\x05'
我需要一些帮助来解析和解码 Diameter Raw.load 消息。 提前谢谢
【问题讨论】: