使用scapy向数据包添加填充

2024-10-03 21:27:46 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将零注入UDP段头的末尾,使其等于20字节。 有人能帮我吗

这是我的代码:

    if UDP in packet:
    """get layers after udp"""
    layer_after = packet[UDP].payload.copy()

    """build a padding layer"""
    pad = Padding()
    pad.load = '\x00' * 12

    layer_before = packet.copy()
    layer_before[UDP].remove_payload()
    packet = layer_before / pad / layer_after

这是udp数据包的输出:

before : b'\xb8\xaco6\x1c\xa2\xe8\xe72<eP\x08\x00E\x00\x00.\x0bT@\x00\xec\x11\x18~MH\xa9\x82\x83\xca\xf0W+iC8\x00\x1a\x85+H\x00Y\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

--------------------------------------------------------------

after : b'\xb8\xaco6\x1c\xa2\xe8\xe72<eP\x08\x00E\x00\x00.\x0bT@\x00\xec\x11\x18~MH\xa9\x82\x83\xca\xf0W+iC8\x00\x1a\x85+H\x00Y\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

但是它会在数据包的末尾加上零


Tags: layerpacket数据包payloadudpcopy末尾x00