Estoy tratando de obtener RSSI o intensidad de señal de paquetes de WiFi. También quiero RSSI de 'solicitudes de sonda WiFi' (cuando alguien está buscando un punto de acceso WiFi).Scapy - recuperación de RSSI de paquetes WiFi
Pude verlo desde registros de kismet, pero eso solo fue para asegurarme de que es posible, no quiero usar kismet todo el tiempo.
Para 'escanear a tiempo completo' Estoy usando scapy. ¿Alguien sabe dónde puedo encontrar el RSSI o la potencia de la señal (en dBm) de los paquetes olfateados con Scapy? No sé cómo se construye todo el paquete, y hay muchos valores "hexadecimales" que no sé cómo analizar/interpretar.
Estoy olfateando en ambas interfaces: wlan0 (detecta cuando alguien se conecta a mi punto de acceso) y mon.wlan0 (detecta cuando alguien está buscando zonas interactivas). Hardware (tarjeta WiFi) que uso está basado en el chipset Prism (ISL3886). Sin embargo, la prueba con Kismet se ejecutó en Atheros (AR2413) e Intel iwl4965.
Edit1:
Parece que necesito para acceder a la información almacenada en PrismHeader alguna manera: http://trac.secdev.org/scapy/browser/scapy/layers/dot11.py la línea 92?
¿Alguien sabe cómo ingresar esta información? packet.show() y packet.show2() no muestran nada de esta clase/Capa
Edit2:
Después de más de excavación, parece que la interfaz no está configurado correctamente y es por eso que no recoge todos los encabezados necesarios. Si me quedo kismet y luego olfateo de paquetes que se interconectan con scapy hay más información en el paquete:
###[ RadioTap dummy ]###
version= 0
pad= 0
len= 26
present= TSFT+Flags+Rate+Channel+dBm_AntSignal+Antenna+b14
notdecoded= '8`/\x08\x00\x00\x00\x00\x10\x02\x94\t\xa0\x00\xdb\x01\x00\x00'
...
Ahora solo necesita ajustar correctamente la interfaz sin necesidad de utilizar Kismet.
Todas las actualizaciones? ¿Pudiste obtener los valores RSSi? – alandalusi
Sí, lo era. Está 'oculto' en la parte no codificada del paquete. Lo estoy extrayendo con: 'sig_str = - (256-ord (packet.notdecoded [-4: -3]))' – kaczor1984
@kaczor1984 Intenté: 'sig_str = - (256-ord (paquete.notdecoded [ -4: -3])) 'y obtengo valores como -69, -79, -81, etc. ¿Cómo interpretas estos valores? – zengr