Archivo

Archive for the ‘Wardriving’ Category

kismet + gpsd + gpsdrive = wardriving!

septiembre 28, 2012 Deja un comentario

Y para los que no saben lo que es el Wardriving:

Se llama wardriving a la búsqueda de redes inalámbricas Wi-Fi desde un vehículo en movimiento. Implica usar un coche o camioneta y un ordenador equipado con Wi-Fi, como un portátil o una PDA, para detectar las redes. Esta actividad es parecida al uso de un escáner para radio.
(Citado textualmente desde Wikipedia.)

La idea de este post, es hacer un mini tutorial de cómo hice funcionar (gracias a la ayuda de Nozelf) el GPS en GNU/Linux junto a las herramientas de sniffing kismet y a gpsdrive. Debo dejar claro que no enseñaré a configurar el bluetooth ni nada por el estilo, asumo que todo eso ya está configurado.

 

Lo primero que haremos será buscar el dispositivo y asociarlo a nuestra máquina, para esto usaremos hcitool y rfcomm.

[root@balcebu ~]# hcitool scan
Scanning ...
00:02:C7:15:B3:A3 BTGPS 15B3A3
[root@balcebu ~]# rfcomm bind /dev/rfcomm0 00:02:C7:15:B3:A3
[root@balcebu ~]#

Para ver si el GPS está entregando algún tipo de información, podemos hacer un cat directamente al dispositivo.

[root@balcebu ~]# cat /dev/rfcomm0
PGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000211.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*0A
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000212.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*76
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000212.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*09
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000213.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*77
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000213.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*08
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000214.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*70
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000214.991,V,0000.0000,N,00000.0000,E,0.000000,,101102,,*0F
$GPVTG,,T,,M,0.000000,N,0.000000,K*4E
$GPGGA,000215.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*71

Hasta ahora todo en orden. Ahora debemos configurar el kismet, el fichero de configuración que tengo yo es:

version=2007.09.R1
servername=Kismet
suiduser=zerial
networkmanagersleep=true
source=iwlagn,wlan0,iwl
vapdestroy=true
channelhop=true
channelvelocity=5
channelsplit=true
defaultchannels=IEEE80211b:1,6,11,2,7,3,8,4,9,5,10
defaultchannels=IEEE80211g:1,6,11,2,7,3,8,4,9,5,10
defaultchannels=IEEE80211a:36,40,44,48,52,56,60,64
defaultchannels=IEEE80211ab:1,6,11,2,7,3,8,4,9,5,10,36,40,44,48,52,56,60,64
tcpport=2501
allowedhosts=127.0.0.1
bindaddress=127.0.0.1
maxclients=5
gps=true
gpshost=localhost:2947
gpsmodelock=false
alert=NETSTUMBLER,10/min,1/sec
alert=WELLENREITER,10/min,1/sec
alert=LUCENTTEST,10/min,1/sec
alert=DEAUTHFLOOD,10/min,2/sec
alert=BCASTDISCON,10/min,2/sec
alert=CHANCHANGE,5/min,1/sec
alert=AIRJACKSSID,5/min,1/sec
alert=PROBENOJOIN,10/min,1/sec
alert=DISASSOCTRAFFIC,10/min,1/sec
alert=NULLPROBERESP,10/min,1/sec
alert=BSSTIMESTAMP,10/min,1/sec
alert=MSFBCOMSSID,10/min,1/sec
alert=LONGSSID,10/min,1/sec
alert=MSFDLINKRATE,10/min,1/sec
alert=MSFNETGEARBEACON,10/min,1/sec
alert=DISCONCODEINVALID,10/min,1/sec
alert=DEAUTHCODEINVALID,10/min,1/sec
allowkeytransmit=true
writeinterval=300
trackivs=false
sound=false
soundplay=/usr/bin/play
sound_new=${prefix}/share/kismet/wav/new_network.wav
sound_traffic=${prefix}/share/kismet/wav/traffic.wav
sound_junktraffic=${prefix}/share/kismet/wav/junk_traffic.wav
sound_alert=${prefix}/share/kismet/wav/alert.wav
speech=false
festival=/usr/bin/festival
flite=false
darwinsay=false
speech_voice=default
speech_type=nato
speech_encrypted=New network detected, s.s.i.d. %s, channel %c, network encrypted.
speech_unencrypted=New network detected, s.s.i.d. %s, channel %c, network open.
ap_manuf=ap_manuf
client_manuf=client_manuf
metric=false
waypoints=true
waypointdata=/home/zerial/.gpsdrive/way.txt
waypoint_essid=true
alertbacklog=50
logtypes=dump,network,csv,xml,weak,cisco,gps
trackprobenets=true
noiselog=false
corruptlog=true
beaconlog=true
phylog=true
mangledatalog=true
fuzzycrypt=wtapfile,wlanng,wlanng_legacy,wlanng_avs,hostap,wlanng_wext,ipw2200,ipw2915
fuzzydecode=wtapfile,radiotap_bsd_a,radiotap_bsd_g,radiotap_bsd_bg,radiotap_bsd_b,pcapfile
netfuzzycrypt=true
dumptype=wiretap
dumplimit=0
logdefault=Kismet
logtemplate=%n-%d-%i.%l
piddir=/var/run/
configdir=%h/.kismet/
ssidmap=ssid_map
groupmap=group_map
ipmap=ip_map

Nota: Tuve que instalar una version antigua de Kismet ya que tuve conflictos con la más nueva.
Cuando tengamos configurado kismet y, antes de ejecutarlo, debemos setear nuestra interfáz en modo monitor y correr gpsd. Lo primero va a depender del driver que estemos usando.
En los casos más comunes son:

Intel, broadcom, ralink, realtek, entre otas:
# iwconfig wlan0 mode monitor
En la mayoría:
# airmon-ng wlan0 start
En las con madwifi (atheros, zydass)
# wlanconfig ath create wlandev wifi0 wlanmode monitor
Y el gpsd lo corremos:
# gpsd -F /tmp/gps.socket /dev/rfcomm0
Ya podemos arrancar el kismet. La pantalla que veremos será algo similar a:

kismet

Son todas las redes que captura nuestra interfáz wireless. Pero a lo que nosotros nos interesa, es el fichero Way Points que se está guardando, según nuestro kismet.conf, en el directorio ~/.gpsdrive/way.txt.

[zerial@balcebu ~]$ cat ~/.gpsdrive/way-ssid.txt
GASPAR -33.442875 -70.598656
RED_ANDRES -33.442886 -70.598724
EDSOIT -33.442875 -70.598656
jaguar house 0.000000 0.000000
Visitas Jaguar 0.000000 0.000000
Rodrigo_2008 -33.442875 -70.598656
<no ssid> -33.442886 -70.598724
costa2 -33.442881 -70.598656
SUPERTALDO -33.442886 -70.598724
Fidelizador.com -33.442881 -70.598656
CDAguilucho -33.442875 -70.598656
CDAguilucho -33.442875 -70.598656
CDAguilucho -33.442881 -70.598656
CDAguilucho -33.442881 -70.598656
WebSTAR -33.442875 -70.598656
Prueba -33.442881 -70.598656</no>

Lo que vemos son los nombres de las señales, longitud y latitud. Ya con toda ésta información, podemos “graficarla” en algun mapa, por ejemplo, el de gpsdrive.

gpsdrive

Aún no configuro bien ni cargo los mapas que corresponden, por lo que el GPSDrive me muestra la información un tanto ilegible, pero podemos ver que si está posicionando la información capturada por kismet. Lamentablemente no puedo hacer más zoom.
Otra opción sería traspasar los datos de WayPoints a KML para que pueda ser interpretado por Google Earth, tambien podemos introducir las coordinadas manualmente para ir graficando.

La idea es la siguiente, montar una antena en un auto y salir con los portátiles a recorrer la ciudad capturando éste tipo de información y graficandolo en un mapa para luego compartirla y tener un mapa con las redes de la ciudad. El próximo post relacionado a este tema, será cuando haga wardriving, subiré fotos y todo eso.

Fuente: http://blog.zerial.org/

Anuncios
Categorías:Wardriving Etiquetas: , , ,

Tecnicas Modernas de Wardriving

septiembre 28, 2012 Deja un comentario

kismetEl descubrimiento de este nuevo ataque ha renovado bastante el interés de los Hackers por el Wardriving, actividad que en este caso resulta de gran utilidad para localizar Redes que usen alguna de las Marcas de Access Points identificadas como vulnerables.

En este artículo, describiré cómo usar Kismet, la herramienta open source más poderosa del mundo para actividades de Wardriving con técnicas modernas.

KIT DE WARDRIVING
– Laptop con Linux.
En este caso emplearemos Ubuntu 10.10 (Maverick). Por supuesto, existen versiones más recientes de este Linux, pero han despertado bastante controversia por sus confusas interfases gráficas. Para fines de Hacking y Auditoría, con Maverick es más que suficiente.

– Adaptador Bluetooth USB.
Cualquier adaptador puede funcionar. En este artìculo uso Linksys, simplemente por ser el que tengo a mi disposición. Este tipo de adaptadores es necesario sólo si su Laptop no cuenta con Bluetooth integrado.

– Smartphone Android.
En lugar de comprar un equipo GPS dedicado, ya podemos aprovechar nuestro Smartphone como dispositivo GPS para el mapeo de las Redes. Lo único que necesitamos es adquirir una económica aplicación que se llama Bluetooth GPS Output.

PROCEDIMIENTO
1. Configuración de Kismet.
Para que Kismet obtenga la información GPS de Android, necesitamos modificar su archivo de configuración kismet.conf. La ubicación de este archivo puede variar, pero típicamente lo encuentra en el directorio /usr/local/etc

Abra el archivo y edite las siguientes líneas, para que queden como indico a continuación:
gps=true
#gpstype=gpsd
gpstype=serial
gpsdevice=/dev/rfcomm0

2. Android como Dispositivo GPS Bluetooth.
Instale Bluetooth GPS Output para que su Smartphone Android pueda transmitir las coordenadas GPS hacia la Laptop a través de Bluetooth. Una vez instalada, abra la aplicación y seleccione Make Discoverable:

android

(Estuve buscando una aplicación similar en el Apple AppStore y en los sitios de “Jailbraking”, pero no localicé ninguna. Al parecer, iPhone no puede funcionar como adaptador GPS Bluetooth para una PC).

3. Conexión Bluetooth Android-Laptop.
Conecte el adaptador Bluetooth a su Laptop. En el menú System – Preferences de Linux, accese Bluetooth Manager y seleccione la opción Search. Después de unos segundos deberá aparecer su Smartphone:

ubuntu-bluetooth

Haga click derecho sobre el nombre de su Smartphone y seleccione Add Device. Nuevamente haga click derecho y ahora seleccione Serial Ports – Serial Device. Introduzca cualquier contraseña cuando se lo solicite. En su Smartphone aparecerá una notificación avisándole que su Laptop desea conectarse. Introduzca la misma contraseña para aceptar. Si la conexión es exitosa, aparece el mensaje “Serial port connected to /dev/rfcomm0”:

ubuntu-bluetooth2

Para verificar que su Laptop está recibiendo correctamente la información GPS, puede ejecutar el comando cat /dev/rfcomm0. Deberá aparecer algo similar a esto:

gps-data

4. Wardriving.
Listo! Para iniciar el Wardriving, simplemente ejecute Kismet. En el menu Windows, seleccione GPS Details. Aparecerá la cantidad de satélites y calidad de señal de cada uno. Con esto comprobamos que Kismet está procesando adecuadamente la información GPS enviada por Android:

kismet-gps

Como expliqué en el Curso Master Hacking, existen diversas técnicas para analizar la información generada por Kismet durante el Wardriving. En este caso, nos interesa la columna “Manuf“, porque es la que nos indica la Marca del Access Point.

Recuerde que los equipos vulnerables al nuevo ataque son: Cisco, Belkin, Buffalo, D-Link, Linksys, Netgear, Technicolor, TP-Link y ZyXEL. Si detecta alguno durante el Wardriving, es casi seguro que se puede atacar usando Reaver, como describí en el artículo anterior…

Fuente:  www.villacorp.com

Categorías:Noticias, Vulnerabilidades, Wardriving Etiquetas: