如何删除scapy数据包中的图层

时间:2017-12-08 22:12:20

标签: python scapy

我想删除子图层是scapy,并想知道如何选择子图层?

对于上下文"多路径TCP选项"是我有兴趣删除的子图层。如下所示,该层属于scapy中的TCP层。任何帮助都会很棒。

###[ TCP ]###
    sport     = http
    dport     = 35446
    seq       = 2431624968
    ack       = 3319728884
    dataofs   = 13L
    reserved  = 0L
    flags     = A
    window    = 233
    chksum    = 0xb518
    urgptr    = 0
    \options   \
     |###[ No Operation ]###
     |  kind      = NOP
     |###[ No Operation ]###
     |  kind      = NOP
     |###[ Timestamp ]###
     |  kind      = Timestamp
     |  length    = 10
     |  timestamp_value= 3970740631
     |  timestamp_echo= 11847444
     |###[ Multipath TCP option ]###
     |  kind      = MpTCP
     |  \mptcp     \
     |   |###[ Multipath TCP Data Sequence Signal ]###
     |   |  length    = 20
     |   |  subtype   = DSS
     |   |  reserved  = 0L
     |   |  flags     = AM
     |   |  data_ack  = 2484809684
     |   |  dsn       = 2431624968
     |   |  subflow_seqnum= 1429
     |   |  datalevel_len= 1428
     |   |  checksum  = 0xa08b

1 个答案:

答案 0 :(得分:0)

我不确定,但scapy有方法remove_"e.g. payload"()。也许您会在文档中找到更多信息。 TCPOptions在scapy-> layers-> inet.py。

中定义

另一种方法是构建一个新的pcap。这是不洁净的方式,但这也有效。