• home
  • drivers & patch
  • tutorials
  • pentest-tools
  • wordlists
    • wordlists-tools
  
Tweet My status    Share

Mappare reti Wireless su Google Earth con il GPS utilizzando Kismet e Airodump-ng
- ed usare Ubuntu come navigatore satellitare -

Il concetto fondamentale dell'attività denominata "wardriving", è quella di mappare, solitamente in macchina o bicicletta, le coordinate geografiche delle reti Wireless presenti nel campo d'azione delle nostre apparecchiature, utilizzando un Notebook, una scheda WiFi e un'antenna/ricevitore GPS.

Lo scopo, è quello di raccogliere dati sulla posizione e tipo di cifratura utilizzata dalle reti WiFi, per poi visualizzarle, successivamente, su una mappa elettronica oppure pubblicarne le coordinate su siti WEB per condividerne le informazioni.

Nello specifico, prenderemo in considerazione, la visualizzazione/mappatura su Google Earth, mediante l'utilizzo della distribuzione Gnu-Linux Ubuntu 8.04 (Hardy Heron), Kismet e GpsDrive.

NOTA IMPORTANTE
  • Questa Guida fa riferimento all'utilizzo con Ubuntu 8.04.
  • Con l'uscita delle nuve versioni e più precisamente dal rilascio di Jaunty (9.04), alcune configurazioni iniziali, NON sono più indispensabili/necessarie.
Prerequisiti Hardware
Un Notebook, un antenna/ricevitore GPS Bluetooth, e scheda Wireless configurata col Sistema.
(se utilizzate un GPS­ USB, quindi seriale, saltate la parte inerente al Bluetooth)

Installazione e configurazione di Kismet per abilitarne l'integrazione col GPS

Installazione e aggiornamento dei pacchetti ESSENZIALI e raccomandati

NOTA: Abilitate MOMENTANEAMENTE i Repository "Hardy Proposed" e "Backport", questo per installare l'ultima versione di Kismet, MA RICORDATEVI ricordatevi di disabilitarli a fine installazione.

Codice:
sudo dpkg --configure -a && sudo apt-get install -f && sudo apt-get update
Codice:
sudo apt-get install linux-headers-$(uname -r) build-essential make patch subversion openssl libssl-dev zlib1g zlib1g-dev libssh2-1-dev libnl1 libnl-dev gettext autoconf tcl8.5 libpcap0.8 libpcap0.8-dev python-scapy python-dev cracklib-runtime macchanger-gtk tshark ethtool

Installazione di Kismet

Codice:
sudo apt-get install kismet
Modifica del file di configurazione per abilitare il funzionamento del GPS

Aprite e verificate/modificate all'interno di questo file le seguenti righe:

Codice:
sudo gedit /etc/kismet/kismet.conf
Codice:
# Do we have a GPS?
gps=true
# Host:port that GPSD is running on.  This can be localhost OR remote!
gpshost=localhost:2947
# Do we lock the mode?  This overrides coordinates of lock "0", which will
# generate some bad information until you get a GPS lock, but it will
# fix problems with GPS units with broken NMEA that report lock 0
gpsmodelock=false
Codice:
# Do we write waypoints for gpsdrive to load?  Note:  This is NOT related to
# recent versions of GPSDrive's native support of Kismet.
waypoints=false
# GPSDrive waypoint file.  This WILL be truncated.
# waypointdata=%h/.gpsdrive/way_kismet.txt
# Do we want ESSID or BSSID as the waypoint name ?
waypoint_essid=true
NOTA 1

Questa è SOLO la configurazione per abilitare il GPS e NON la configurazione per riconoscere il vostro dispositivo Wireless o altro.

NOTA 2

Per comodità, Vi suggerisco anche di modificare il percorso di salvataggio/archiviazione dei file generati da Kismet, facendogli "puntare" ad una nuova cartella appositamente creata nella Vostra /home directory --> per esempio denominata "kismet-log":

Codice:
mkdir kismet-log

E modificate questa stringa aggiungendo il percorso corretto

Codice:
logtemplate=/home/vostro_nome_utente/kismet-log/%n­%d­%i.%l

Installazione di GpsDrive ed il demone GPSD

Codice:
sudo apt-get install gpsd gpsd-clients gpsdrive

Configurazione del demone di GPSDrive

Codice:
sudo gedit /etc/default/gpsd

E fate un copia&incolla del seguente testo:
NOTA: l'unico parametro variabile potrebbe essere la porta "rfcomm1", se differente modificatela dopo i primi test.

Codice:

# Default settings for gpsd. This file is sourced from

# /etc/init.d/gpsd.

START_DAEMON="true"

DAEMON_OPTS=""

DEVICES="/dev/rfcomm1"

Installazione di Google Earth e configurazione di Ubuntu

1) - Scaricate il pacchetto direttamente dal sito di Google Earth per avere l'ultima versione aggiornata, e salvatelo, per comodità, nella Vostra /home directory.

Download dal sito ufficiale di Google Earth

NOTA: Con alcune delle ultime versioni di Google Earth, potrebbero verificarsi delle proiezioni errate dei dati, se riscontrate questo problema, contattatemi per avere una versione correttamente funzionante.


Dalla stessa directory, dove avete scaricato il file, rendete prima il file eseguibile e successivamente avviatelo.

Codice:
chmod +x Google*.bin && ./Google*.bin

Ad installazione ultimata, Google Earth sarà disponibile dal:
Menù ­­--> Applicazioni --> Internet.

Configurazione di Ubuntu per il riconoscimento del Bluetooth e dell'antenna GPS bluetooth

2) - Verificate/installate il pacchetto "Bluez­Utils" necessario per la gestione dei servizi Bluetooth:

Codice:
sudo apt­get install bluez­utils

3) - Aprite ed editate il seguente file:

(per precauzione fatene prima una copia backup)
Codice:
sudo gedit /etc/bluetooth/hcid.conf

E fate un copia&incolla del seguente codice, sostituendo tutto il teso del file:

Codice:
# HCI daemon configuration file.
#

# HCId options
options {
   # Automatically initialize new devices
   autoinit yes;

   # Security Manager mode
   #   none - Security manager disabled
   #   auto - Use local PIN for incoming connections
   #   user - Always ask user for a PIN
   #
   security auto;

   # Pairing mode
   #   none  - Pairing disabled
   #   multi - Allow pairing with already paired devices
   #   once  - Pair once and deny successive attempts
   pairing multi;

   # Default PIN code for incoming connections
   passkey "1111";
}

# Default settings for HCI devices
device {
   # Local device name
   #   %d - device id
   #   %h - host name
   name "%h-%d";

   # Local device class
   # class 0x000100;
       # class 0x3e0100;

   # Default packet type
   #pkt_type DH1,DM1,HV1;

   # Inquiry and Page scan
   iscan enable; pscan enable;
   discovto 0;

   # Default link mode
   #   none   - no specific policy
   #   accept - always accept incoming connections
   #   master - become master on incoming connections,
   #            deny role switch on outgoing connections
   lm accept;

   # Default link policy
   #   none    - no specific policy
   #   rswitch - allow role switch
   #   hold    - allow hold mode
   #   sniff   - allow sniff mode
   #   park    - allow park mode
   lp rswitch,hold,sniff,park;
}

 4) - Riattivate i servizi Bluetooth:

Codice:
sudo /etc/init.d/bluetooth restart

5) - Accendete la vostra antenna/ricevitore GPS verificate che sia correttamente riconosciuta dal sistema prendendo nota del MAC address corrispondente alla Vostra unità collegata:

(nei successivi esempi io userò un MAC fittizio --> 00:00:00:00:00:00)

Codice:
hcitool scan

6) - Verificate l'abilitazione della porta RFCOMM, ed annotatevi il numero del "canale" utilizzato dal GPS che solitamente è il numero --> 1.

NOTA: ricordo nuovamente che il MAC "00:00:00:00:00:00" è solo di esempio, e per tutta la guida, dovrete sostituirlo col Vostro reale ricavato al punto 5)
Codice:
sdptool browse 00:00:00:00:00:00

7) - Create o editate il seguente file:

Codice:
sudo gedit /etc/bluetooth/rfcomm.conf

Supponendo di avere il MAC --> "00:00:00:00:00:00", di trasmettere sul canale --> "1" e di utilizzare la porta --> "RFCOMM0", modificate/create il file in questo modo:

Codice:
#
# RFCOMM configuration file.
#

# rfcomm0 {
#   # Automatically bind the device at startup
#   bind no;
#
#   # Bluetooth address of the device
#   device 11:22:33:44:55:66;
#
#   # RFCOMM channel for the connection
#   channel   1;
#
#   # Description of the connection
#   comment "Example Bluetooth device";
# }

rfcomm1 {
# Automatically bind the device at startup
bind no;
device 00:00:00:00:00:00;
channel 1;
comment "GPS";
}

Creazione di Alias per semplificare i comandi da Terminale/Shell

A questo punto, semplifichiamoci la "vita" per non digitare il testo completo dei comandi nella shell Linux (terminale) di Ubuntu, mediante l'assegnazione di ALIAS degli stessi.

- Aprite ed aggiungete alla fine del file le seguenti righe:

Codice:
sudo gedit .bashrc

- E fate il solito copia&incolla del testo alla fine del file:

Codice:
###########
# Utility GPS    #
###########
# Bloutooth
alias bluestart='sudo /etc/init.d/bluetooth restart'
alias bluestop='sudo /etc/init.d/bluetooth stop'
# GPSDrive/tools
alias gpsscan='sudo hcitool scan'
alias gpsbrowse='sudo sdptool browse 00:00:00:00:00:00'
alias gpsconnect='sudo rfcomm connect 1 00:00:00:00:00:00'
alias gpsdstart='sudo /etc/init.d/gpsd start'
alias gpsdstop='sudo /etc/init.d/gpsd stop'
alias gpsdbind='sudo gpsd -n /dev/rfcomm1'
alias gpschek='cat < /dev/rfcomm1'
alias gpsdaemon='sudo gpsd -N -n -D 2 /dev/rfcomm1'
# alias rfbind='sudo rfcomm bind rfcomm1 00:00:00:00:00:00'

Ora, chiudete la sessione del terminale utilizzato ed alla successiva riapertura, gli "Alias" saranno attivi.

NOTA: l'ultimo alias l'ho lasciato commentato (#), riattivatelo/eseguitelo solo nel caso in cui il "Demone" di GPSD non faccia il "bind" con la porta automaticamente.

Se alla riapertura del terminale, ricevete un errore dalla shell, ricontrollate il teso degli Alias.

A questo punto abbiamo terminato le varie configurazioni del Sistema e semplificato i comandi da digitare nel terminale.

NOTA: Riavviate il sistema per caricare/testare all'avvio il novo "demone" di GPSD.

Procedura di attivazione del GPS ed esecuzione di KISMET

1) - Inserite nella porta USB, oppure se integrato nel PC, il Vostro dispositivo Bluetooth.

2) - Accendete la vostra antenna/ricevitore GPS

3) - Per sicurezza, riattivate i servizi Bluetooth imputando semplicemente il suo Alias precedentemente assegnato:

Codice:
bluestart

4) - Connettete il Bluetooth all'antenna GPS: (usate l'Alias)

Codice:
gpsconnect

NOTA: questo terminale deve rimanere sempre aperto/attivo per tutta la durata della sessione di Kismet in quanto la chiusura del programma interrompe anche la connessione del Bluetooth al GPS.

5) - Le prime volte, verificate che il link sia andato a buon fine e che il GPS stia inviando i dati al sistema:
(il terminale dovrebbe scorrere visualizzando molteplici dati/coordinate)

Codice:
gpschek

Ed attendiamo/verifichiamo che l'unità GPS abbia concluso il suo "posizionamento".


NOTA: ricordo, che il ricevitore GPS, andrebbe posizionato in modo da vedere il "cielo", questo per meglio ricevere i segnali dei satelliti.

Se volete provare ad utilizzate l'antenna GPS dall'interno della Vostra abitazione, cercate una posizione ottimale (vicino ad una finestra o un balcone) per avere la "copertura" necessaria ad effettuare il "posizionamento GPS".

Il tempo necessario per il posizionamento GPS, dipende sia dalla posizione che dalla sensibilità/velocità del vostro ricevitore/chipset utilizzato dall'unità, che in condizioni NON ottimali può anche richiedere svariati minuti.

6) - Per verificare l'aggancio dei segnali/satelliti, lanciate questo comando, e si aprirà una schermata che visualizzerà la copertura globale dei satelliti.

Codice:
xgps
 

7) - Avviate Kismet:

Codice:
sudo kismet

Noterete, la visualizzazione di una stringa bianca che visualizzerà le coordinate in gradi.

Attivando invece la modalità di visualizzazione in "sort mode" e posizionandosi su di un Access Point, (utilizzando il tasto "F") potrete anche visualizzare le sue coordinate/direzione come in un goniometro.

A mappatura delle reti Wireless ultimata, chiudete la sessione di Kismet disattivando anche il collegamento GPS --> al Bluetooth, chiudendo con i tasti Ctrl+C il terminale che avevate aperto al punto 5)

Proiezione dei dati salvati da Kismet o Airodump-ng con Google Earth

Kismet, salva i dati raccolti in vari formati, ed in questo caso quelli di nostro interesse sono i file creati con estensione ".csv" o ".xml".

Per una corretta visualizzazione utilizzando Google Earth, i file precedentemente creati da Kismet o Airodump-ng, necessitano però di essere convertiti in ".kml" , che è il formato correttamente letto dal programma.

Di seguito, vi metto due link da dove potrete scaricare gli script per la conversione dei file di Kismet/Airodump-ng, nel formato appropriato per essere letti da Google Earth.

  • kismetXmlToKml
  • kismetCsvToKml


NOTA: dopo averli scaricati accertatevi che abbiano i permessi di "esecuzione" o rendeteli tali utilizzando il seguente comando:

Codice:
chmod +x file_script

I due script hanno entrambi lo stesso scopo, ma suportano due differenti tipi di conversione.

  • Il primo converte i file .xml in .kml
  • Il secondo invece converte i file .csv al formato .kml

Esecuzione del primo script:

Codice:
./kismetXmlToKml.py Kismet-Dec-14-2008-1.xml > prova.kml

Esecuzione del secondo script:

Codice:
perl kismetCsvToKml.pl Kismet-Dec-14-2008-1.csv > prova2.kml

NOTA: gli script, per comodità, salvateli nella stessa directory dove vengono archiviati i file di Kismet, questo per poterli eseguire (comodamente) dalla stessa directory.

Se li avete posizioni/archiviati in posizioni differenti ricordatevi di modificare i comandi indicandone il "percorso" corretto.

Avvio di Google Earth e lettura dei file generati da Kismet o Airodump-ng
Menù Applicazioni --> Internet --> Google Earth
Menù File --> Apri -->  e selezionate i vostri file .kml
Visualizzazione dei dati raccolti durante il Wardriving con GPS Visualizer

Oltre all'utilizzo di Google Earth, vi suggerisco anche l'utilizzo del sito GPS Visualizer, il quale permette sia la manipolazione dei file di Kismet/Airodump-ng sia la loto visualizzazione diretta su web tramite Google Maps.

Utilizzare UBUNTU come navigatore satellitare con GpdDrive

Dopo avere correttamente configurato il dispositivo Bluetooth e l'antenna GPS potete anche utilizzare il programma GPSDrive senza avviare Kismet o Airodump-ng per utilizzarlo, per esempio, mentre siete in macchina.

Il Vostro Notebook funzionerà come un comune GPS indicando i Vostri movimenti mappandoli direttamente sullo schermo.

Una volta avviato GPSDrive, scaricate le mappe di Vostro interesse.

NOTA: richiede una connessione Internet attiva.
Avvio di GpsDrive:
Menù Applicazioni --> Internet --> GpsDrive
Eseguire il download della Vostra mappa
Menù File --> Option --> Map --> Download

RIEPILOGO SEMPLIFICATO

Elenco di seguito solo i comandi semplificati, senza spiegazioni, da eseguire dopo la corretta configurazione.

  • Attivate il Bluetooth del Notebook o Bluetooth USB
  • Accendete l'antenna GPS
  • Attivate il vostro dispositivo Wireless in mode monitor
Aprite un terminale ed eseguite questa sequenza di Alias:
Codice:
gpsstart
gpsconnect
xgps
sudo kismet

A mappatura ultimata, chiudete Kismet o Airodump-ng e convertite i sui file utilizzando lo script da Voi preferito, e godetevi il risultato su Google Earth !!!

Installazione o aggiornamento di Aircrack-ng

Seguire questa guida: come installare o aggiornare Aircrack-ng.
Test della copertura GPS           Mappatura in movimeto
      Mappare reti WiFi con Ubuntu                          Wardriving con GPS
Mappatura da un punto fisso           Mappatura con Airodump-ng
      Google Earth con Ubuntu e GPS                          GPS con Ubuntu e Aircrack-ng

In questa guida, ho volutamente omesso la spiegazione per l'utilizzo abbinato con MySQL Python, questo per non confondere troppo le idee agli Utenti meno esperti.

NOTA IMPORTANTE
Ricordate che l'hardware necessario non è eccessivamente costoso, ma è FONDAMENTALE, quindi scegliete un antenna GPS Bluetooth adeguata e compatibile con i sistemi Gnu-Linux, questo per non "buttare via i Vostri soldini" !!

Enjoy, Jano
Scritto: 15/Dic/2008
Disclaimer


Ubuntu Logo
Aircrack-ng Logo



 In this Site & Aircrack-ng


Per supportare questo sito

©2010-2012 JanoWeb.NET | All Rights Reserved | Terms & Policy |
Valid XHTML 1.0 TransitionalValid CSS 3Creative Commons Licenses WebSite Reputation