Как я могу получить SSID из пакета - PullRequest
0 голосов
/ 05 апреля 2020

У меня есть этот код:

from scapy.all import *
packet = rdpcap("hand.pcap")[0]

Теперь, когда я использую print(packet), я получаю нормальные байты

b"\x00\x00\x18\x00+\x00\x00\x00\x19\x81\xea\x02\x00\x00\x00\x00\x10\x00l\t\x00\x00\xdb\x00\x80\x00\x00\x00\xff\xff\xff\xff\xff\xff\x06\xd6\xaa\xb0x\xe9\x06\xd6\xaa\xb0x\xe9\x80V\x8cAn\xa0\x01\x00\x00\x00d\x00\x11\x15\x00\nHuawei281s\x01\x08\x82\x84\x8b\x96$0Hl\x03\x01\x01\x05\x04\x00\x02\x00\x00\x07\x06HR \x01\r\x14 \x01\x00#\x02\x13\x00*\x01\x022\x04\x0c\x12\x18`0\x14\x01\x00\x00\x0f\xac\x04\x01\x00\x00\x0f\xac\x04\x01\x00\x00\x0f\xac\x02\x0c\x00-\x1a\xad\x01\x1b\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00=\x16\x01\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x08\x04\x00\x08\x00\x00\x00\x00@\xdd\x05\x00\x162\x80\x00\xdd\x08\x00P\xf2\x11\x02\x00\x00\x00\xdd\x1e\x00\x90L\x04\x08\xbf\x0c\xb2y\x81\x0f\xfa\xff\x00\x00\xfa\xff\x00\x00\xc0\x05\x00\x01\x00\x00\x00\xc3\x02\x00\x02\xdd\t\x00\x10\x18\x02\x01\x00\x1c\x00\x00\xdd\x18\x00P\xf2\x02\x01\x01\x00\x00\x03\xa4\x00\x00'\xa4\x00\x00BC^\x00b2/\x00\xdd\x1d\x00\x90L\\\x02\x01\n\x00\x08\x07\x01\x0f\x00\x00\x00\x00\x00\x01\n\x01\x01\x01\x01\x0f\x00\x00\x00\x00\x00d\x08\x06~"

Когда я использую hexdump(packet), я получаю это

0000  00 00 18 00 2B 00 00 00 19 81 EA 02 00 00 00 00  ....+...........
0010  10 00 6C 09 00 00 DB 00 80 00 00 00 FF FF FF FF  ..l.............
0020  FF FF 06 D6 AA B0 78 E9 06 D6 AA B0 78 E9 80 56  ......x.....x..V
0030  8C 41 6E A0 01 00 00 00 64 00 11 15 00 0A 48 75  .An.....d.....Hu
0040  61 77 65 69 32 38 31 73 01 08 82 84 8B 96 24 30  awei281s......$0
0050  48 6C 03 01 01 05 04 00 02 00 00 07 06 48 52 20  Hl...........HR 
0060  01 0D 14 20 01 00 23 02 13 00 2A 01 02 32 04 0C  ... ..#...*..2..
0070  12 18 60 30 14 01 00 00 0F AC 04 01 00 00 0F AC  ..`0............
0080  04 01 00 00 0F AC 02 0C 00 2D 1A AD 01 1B FF FF  .........-......
0090  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00a0  00 00 00 00 00 3D 16 01 00 17 00 00 00 00 00 00  .....=..........
00b0  00 00 00 00 00 00 00 00 00 00 00 00 00 7F 08 04  ................
00c0  00 08 00 00 00 00 40 DD 05 00 16 32 80 00 DD 08  ......@....2....
00d0  00 50 F2 11 02 00 00 00 DD 1E 00 90 4C 04 08 BF  .P..........L...
00e0  0C B2 79 81 0F FA FF 00 00 FA FF 00 00 C0 05 00  ..y.............
00f0  01 00 00 00 C3 02 00 02 DD 09 00 10 18 02 01 00  ................
0100  1C 00 00 DD 18 00 50 F2 02 01 01 00 00 03 A4 00  ......P.........
0110  00 27 A4 00 00 42 43 5E 00 62 32 2F 00 DD 1D 00  .'...BC^.b2/....
0120  90 4C 5C 02 01 0A 00 08 07 01 0F 00 00 00 00 00  .L\.............
0130  01 0A 01 01 01 01 0F 00 00 00 00 00 64 08 06 7E  ............d..~

И в этом мой SSID с именем Huawei281s в scambled в

Когда я использую print(packet.show), я получаю это

<bound method Packet.show of <RadioTap  version=0 pad=0 len=24 present=TSFT+Flags+Channel+dBm_AntSignal mac_timestamp=48922905 Flags=FCS ChannelFrequency=2412 ChannelFlags= dBm_AntSignal=-37dBm notdecoded='\x00' |<Dot11FCS  subtype=8 type=Management proto=0 FCfield= ID=0 addr1=ff:ff:ff:ff:ff:ff addr2=06:d6:aa:b0:78:e9 addr3=06:d6:aa:b0:78:e9 SC=22144 fcs=0x7e060864 |<Dot11Beacon  timestamp=6986547596 beacon_interval=100 cap=res8+short-slot+res12+ESS+privacy |<Dot11Elt  ID=SSID len=10 info='Huawei281s' |<Dot11EltRates  ID=1 len=8 rates=[0x82, 0x84, 0x8b, 0x96, 0x24, 0x30, 0x48, 0x6c] |<Dot11Elt  ID=DSset len=1 info='\x01' |<Dot11Elt  ID=TIM len=4 info='\x00\x02\x00\x00' |<Dot11EltCountry  ID=7 len=6 country_string='HR ' descriptors=[<Dot11EltCountryConstraintTriplet  first_channel_number=1 num_channels=13 mtp=20 |>] pad=32 |<Dot11EltRates  ID=1 len=0 |<Dot11Elt  ID=35 len=2 info='\x13\x00' |<Dot11Elt  ID=ERPinfo len=1 info='\x02' |<Dot11Elt  ID=ESRates len=4 info='\x0c\x12\x18`' |<Dot11EltRSN  ID=48 len=20 version=1 group_cipher_suite=<RSNCipherSuite  oui=0xfac cipher=CCMP |> nb_pairwise_cipher_suites=1 pairwise_cipher_suites=[<RSNCipherSuite  oui=0xfac cipher=CCMP |>] nb_akm_suites=1 akm_suites=[<AKMSuite  oui=0xfac suite=PSK |>] mfp_capable=0 mfp_required=0 gtksa_replay_counter=0 ptksa_replay_counter=3 no_pairwise=0 pre_auth=0 reserved=0 |<Dot11Elt  ID=HTCapabilities len=26 info='\xad\x01\x1b\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' |<Dot11Elt  ID=HTinfo len=22 info='\x01\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' |<Dot11Elt  ID=ExtendendCapatibilities len=8 info='\x04\x00\x08\x00\x00\x00\x00@' |<Dot11EltVendorSpecific  ID=221 len=5 oui=0x1632 info='\x80\x00' |<Dot11EltVendorSpecific  ID=221 len=8 oui=0x50f2 info='\x11\x02\x00\x00\x00' |<Dot11EltVendorSpecific  ID=221 len=30 oui=0x904c info='\x04\x08\xbf\x0c\xb2y\x81\x0f\xfa\xff\x00\x00\xfa\xff\x00\x00\xc0\x05\x00\x01\x00\x00\x00\xc3\x02\x00\x02' |<Dot11EltVendorSpecific  ID=221 len=9 oui=0x1018 info='\x02\x01\x00\x1c\x00\x00' |<Dot11EltVendorSpecific  ID=221 len=24 oui=0x50f2 info="\x02\x01\x01\x00\x00\x03\xa4\x00\x00'\xa4\x00\x00BC^\x00b2/\x00" |<Dot11EltVendorSpecific  ID=221 len=29 oui=0x904c info='\\\x02\x01\n\x00\x08\x07\x01\x0f\x00\x00\x00\x00\x00\x01\n\x01\x01\x01\x01\x0f\x00\x00\x00\x00\x00' |>>>>>>>>>>>>>>>>>>>>>>>

И есть мой SSID под информацией и для print(type(packet.show)) Я получаю

<class 'method'>

И когда я использую packet.show(), я получаю кучу данных с этим

###[ 802.11 Information Element ]### 
           ID        = SSID
           len       = 10
           info      = 'Huawei281s'

Так что мне интересно, как я могу извлечь свой SSID из пакета

1 Ответ

0 голосов
/ 05 апреля 2020

В этом конкретном c случае вы можете использовать

packet[Dot11Beacon].network_stats()

Но взгляните на do c для более подробного урока. кажется, вы на самом деле не изучали синтаксис Scapy:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...