Using Kismet with an Android Devices GPS on Kali Linux
Kismet and Android GPS Tethering HOWTO
A howto on using a GPS capable android device with kismet in order to geolocate detected access points / wireless clients.
By: magikh0e
magikh0e _aT_ ihtb d0t org
Last Edit: March 11 2015
Updated: March 12: added WiFi Pineapple instructions
Requirements
Laptop / Desktop
- Kali Linux installed with Kismet setup and working.
- Android-sdk tools installed.
- Giskismet, Google Earth or something similar with the
ability to parse KML files
Android Device
- GPS Capable
- BlueNMEA installed on the Android Device.
BlueNMEA is an Android application which sends location data
over Bluetooth (RFCOMM) or TCP in the NMEA format.
WiFiPineapple - Optional
- GPSD, libgps, libgpsd & adb installed on the WiFiPineapple: unofficial packages HERE
- Startup script
Step One
Preparing the Android device:
1. Make sure that you have enabled USB Debugging Mode enabled on the android device.
Settings -> Applications -> Development -> USB Debugging
2. Install BlueNMEA and open then application.
Step Two
Preparing scanning laptop/Desktop or WiFiPineapple:
1. Install 'android-sdk, gpsd and gpsd-clients'.
Laptop/Desktop: apt-get install android-sdk gpsd gpsd-clientsWiFiPineapple: opkg install gpsd libgps libgpsd adb
2. Once adb has been installed and confirmed working, issue the following commands on the laptop to forward TCP port 4352
from the Android device to the laptop/desktop or use the Startup script.
adb forward tcp:4352 tcp:4352Note: If you get an error that the command adb is not found, ensure that you have i386 dependencies enabled.
This is a known issue, which can be resolved by issuing the following commands:dpkg --add-architecture i386 && apt-get update && apt-get install ia32-libs lib32ncurses5
3. Now issue the following command to get GPSD listening on the forwarded port '4352'.
If you are using the Startup script, this step can be skipped.
gpsd -N -n -D5 tcp://localhost:4352
4. Launch Kismet and go scanning...
Step Three
Visualizing and Mapping the data:
1. Pull the data from the *.netxml file into the giskismet database with the following command:
giskismet -x Kismet-DATE***.netxml
2. Using the giskisment database, export the data into KML format:
giskismet -q "SELECT * FROM WIRELESS" -o output.kml
3. Load the output.kml file into Google Earth.