2016-11-19 11 views
0

のpcapファイルからペイロード内の特定のバイトを取得します、私はパースScapyを使用していますPCAPファイルを持っている

私は怒鳴るコードを使用することにより、hexdumpに対してのペイロードをダンプするために管理している

pkts = rdpcap('Sink.pcap') 
print hexdump(pkts[0][2].load) 

出力を取得する

0000 00 00 00 *01* 58 2F AC 47 01 D8 1E 5F 00 00 00 01 ....X/.G..._.... 
0010 00 0A 5E 32 08 00 08 00 08 00 08 00 08 00 08 00 ..^2............ 
0020 08 00 08 00 08 00 08 00 08 00 08 00 08 00 08 00 ................ 
0030 08 00 08 00 08 00 08 00 08 00 08 00    ............ 
None 

私がしたいのは、たとえば4番目のバイト(0x01)だけを印刷することです。 (星に囲まれています)、どうすればいいですか?ヘキサダンプを文字列に変換して文字列解析を行うか、Scapyライブラリを使用してこの操作を行うことはできますか?

答えて

1

あなたはhexdumpすぎ

print hexdump(pkts[0][2].load[3]) 
でそれを使用することができます。もちろん、六角チャー

val = pkts[0][2].load[3] 
print "%x %s" % (ord(val), val) 

として

print pkts[0][2].load[3] 

または多分を意味しますか

関連する問題