我想用scapy从DHCP服务器上的DHCP中继中嗅探DHCP数据包,但是我有个问题,因为我感兴趣的部分是用hex编写的。在
这是破解图书馆的另一种方法?在
下面是一个由scapy嗅出的包的例子。我想解码的部分是“Unknown DHCPv6 Option”下的“data”:
###[ Ethernet ]###
dst= f4:cf:e2:4c:9c:ed
src= 00:22:bd:f8:35:47
type= 0x86dd
###[ IPv6 ]###
version= 6L
tc= 0L
fl= 0L
plen= 149
nh= UDP
hlim= 255
src= 2001:db8:0:1::ee
dst= 2001:db8:0:1::ed
###[ UDP ]###
sport= dhcpv6_server
dport= dhcpv6_server
len= 149
chksum= 0xd489
###[ DHCPv6 Relay Forward Message (Relay Agent/Server Message) ]###
msgtype= RELAY-FORW
hopcount= 0
linkaddr= 2001:db8:0:1::e6
peeraddr= fe80::f6cf:e2ff:fe11:7ef9
###[ Unknown DHCPv6 OPtion ]###
optcode= RELAY_MSG
optlen= 77
data= '\x01\xed\t{\x00\x01\x00\n\x00\x03\x00\x01B\x00\x14\\U\xb3\x00\x06\x00\x04\x00\x17\x00\x18\x00\x08\x00\x02\x00\x00\x00\x19\x00)\xe2\x11~\xf9\x00\x00\x0e\x10\x00\x00\x15\x18\x00\x1a\x00\x19\x00\x00\x1c \x00\x00*00 \x01\x0b\xc80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
###[ DHCP6 Option - Relay Agent Remote-ID ]###
optcode= OPTION_REMOTE_ID
optlen= 14
enterprisenum= ciscoSystems
remoteid= '\x00\x03\x08\x00\x00"\xbd\xf85G'
###[ DHCP6 Interface-Id Option ]###
optcode= INTERFACE_ID
optlen= 4
ifaceid= '\t\x01\x00\n'
当我这样做时packet[DHCP6OptUnknown].getfieldval(data)
它会返回
'\x01\xed\t{\x00\x01\x00\n\x00\x03\x00\x01B\x00\x14\\U\xb3\x00\x06\x00\x04\x00\x17\x00\x18\x00\x08\x00\x02\x00\x00\x00\x19\x00)\xe2\x11~\xf9\x00\x00\x0e\x10\x00\x00\x15\x18\x00\x1a\x00\x19\x00\x00\x1c \x00\x00*00 \x01\x0b\xc80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
我想通过服务器发送这个数据。在
提前感谢您的帮助!在
Ps:对不起我的英语不好:)
编辑: 修补DHCP中继数据包后如下所示:
^{pr2}$
很多次之后,我找到了这个补丁:http://bb.secdev.org/scapy/pull-request/82/dhcpv6-relay-reply-message-relay-agent/diff#chg-scapy/layers/dhcp6.py,它对我有用。所有的包都被解码了!在
相关问题 更多 >
编程相关推荐