Kismet

From Irregularpedia
Revision as of 18:53, 3 December 2024 by Sac (talk | contribs) (syntax)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

What Is Kismet

Kismet is a wireless network and device detector, sniffer, wardriving tool, and WIDS (wireless intrusion detection) framework.

Kismet works with Wi-Fi and Bluetooth interfaces, SDR (software-defined radio) hardware like the RTLSDR, and other specialized capture hardware.

Kismet operates on Linux, macOS, and to a degree on Windows 10 under the WSL framework. On Linux, it supports most Wi-Fi cards, Bluetooth interfaces, and other hardware devices. On macOS, it works with built-in Wi-Fi interfaces, while on Windows 10, it supports remote captures.

Kismet operates passively (except for specific features like Bluetooth scanning). It is not typically an attack tool but focuses on collecting and analyzing wireless data. Logs generated by Kismet, such as PCAP files and handshakes, can be used with tools like Hashcat or Aircrack-NG for further analysis.

See the Kali Forum about Kismet

Installation

Linux

# Remove Kismet if installed
sudo apt autoremove kismet

# Install dependencies
sudo apt install -y build-essential git libwebsockets-dev pkg-config zlib1g-dev \
libnl-3-dev libnl-genl-3-dev libcap-dev libpcap-dev libnm-dev libdw-dev \
libsqlite3-dev libprotobuf-dev libprotobuf-c-dev protobuf-compiler protobuf-c-compiler \
libsensors4-dev libusb-1.0-0-dev python3 python3-setuptools python3-protobuf \
python3-requests python3-numpy python3-serial python3-usb python3-dev python3-websockets \
librtlsdr0 libubertooth-dev libbtbb-dev gpsd gpsd-clients

# Clone and build Kismet
git clone https://www.kismetwireless.net/git/kismet.git
cd kismet
./configure
make -j$(nproc)

macOS

# Install Xcode (if not installed)
xcode-select -p 1>/dev/null || xcode-select --install

# Install Homebrew and update
which -s brew || ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew update

# Install dependencies
brew install git pkg-config python3 libpcap protobuf protobuf-c pcre librtlsdr libbtbb \
ubertooth libusb openssl libwebsockets gpsd

# Clone and build Kismet
git clone https://www.kismetwireless.net/git/kismet.git
cd kismet
LDFLAGS=-L$(brew --prefix)/lib CPPFLAGS="-I$(brew --prefix)/include -I$(brew --prefix openssl)/include" ./configure
make -j$(nproc)
sudo usermod -aG kismet $USER

Configuration

Network Interface Card (NIC) Configuration

# List available wireless interfaces
iwconfig

# Edit Kismet configuration
cd kismet
nano kismet.conf

GPS Adapter

gps=true
gpsd=true
gpsd-host=localhost
gpsd-port=2947

Wireless Adapter

ncsource=wlan0

Logging

logtypes=pcapdump,netxml
logtemplate=%n-%d-%i.%l

Web UI

web=true
webport=2501

Remote Capture

remote=true
remotesource=wlan0

Plugins

plugins=alert_log,db-log,db-sqlite,db-geoip

Alerts

alerts=alert_log,alert_syslog,alert_screens,alert_webhook

Running Kismet

# Run Kismet
./kismet

# Common options
-c <config file>   # Specify a config file
-n                 # Don't start the UI
-f <log file>      # Log to a file
-t <log type>      # Log to a specific type
-l <log level>     # Log at a specific level
-p <plugin>        # Load a specific plugin
-u <user>          # Run as a specific user
-w <work dir>      # Specify a working directory

Troubleshooting

GPSD Error

Linux

sudo apt install gpsd gpsd-clients
sudo systemctl start gpsd

macOS

brew install gpsd
gpsd -N -D 2 /dev/ttyUSB0

USB Error

Linux

sudo usermod -aG kismet $USER

macOS

sudo dseditgroup -o edit -a $USER -t user kismet

FAQs

How do I add an SDR as a data source in Kismet?

Ensure SDR drivers are properly installed and add the appropriate SDR configuration to the Kismet data source settings.

Why is my GPS not providing accurate data to Kismet?

Ensure your GPS device is correctly installed and has a clear line of sight to the sky. Use `gpsd` and tools like `cgps` to verify operation.

Can I use Kismet for wardriving?

Yes. Configure Kismet to log data to disk, integrate GPS for location data, and use optimized wardriving settings.

How can I improve the capture range of my SDR?

Optimize SDR gain settings and use high-quality antennas for your frequency range.

Can Kismet monitor Bluetooth devices?

Yes. Use compatible Bluetooth interfaces and configure them in Kismet as data sources.

References