簡體   English   中英

使用scapy構建數據包時,如何在應用程序層中添加位?

[英]How to add bits to the application layer when building a packet with scapy?

我正在使用scapy庫構建數據包,並且想在應用程序層中添加某個位字符串,例如00110011。不幸的是,scapy將字符串'00110011'轉換為ASCII格式。 但是,如果我只想添加這8位怎么辦?

這是我嘗試生成的數據包

pkt =  Ether(src='00:00:00:00:00:01', dst='ff:ff:ff:ff:ff:ff') /
IP(src='10.10.10.10', dst='20.20.20.20', proto=0x8F) / 
UDP(dport=4321, sport=1234) / '0b1111111'

不幸的是,hexdump(pkt)給了我這個:

0000   FF FF FF FF FF FF 00 00  00 00 00 01 08 00 45 00   ..............E.
0010   00 25 00 01 00 00 40 8F  3E 0E 0A 0A 0A 0A 14 14   .%....@.>.......
0020   14 14 04 D2 10 E1 00 11  B8 69 30 62 31 31 31 31   .........i0b1111
0030   31 31 31                                           111

但是我只想最后得到FF。

問題解決了! 我只需要以特殊的十六進制格式傳遞字符串,例如'\\ xff'。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM