Wireless Attacks

kismet

kismet is a passive wireless sensor, and it sees far more than Wi-Fi. It quietly listens across whatever capture sources you give it — Wi-Fi adapters, Bluetooth, Zigbee, SDR dongles, and others — logging every device it detects, mapping networks, and flagging suspicious activity. Because it’s passive it never transmits, which makes it ideal for surveying an environment, wardriving, or running as a long-lived monitoring station. It runs as a server with a web UI you open in the browser.

Official-repo package; Security → Wireless Attacks → kismet. It ships a long list of kismet_cap_* capture helpers for its various supported radios.

The help it prints

usage: kismet [OPTION]
Nearly all of these options are run-time overrides for values in the
kismet.conf configuration file.  Permanent changes should be made to
the configuration file.
 *** Generic Options ***
 -v, --version                Show version
 -h  --help                   Display this help message
     --no-console-wrapper     Disable server console wrapper
     --no-ncurses-wrapper     Disable server console wrapper
     --no-ncurses             Disable server console wrapper
     --debug                  Disable the console wrapper and the crash
                              handling functions, for debugging
 -c <datasource>              Use the specified datasource
 -f, --config-file <file>     Use alternate configuration file
     --no-line-wrap           Turn off linewrapping of output
                              (for grep, speed, etc)
 -s, --silent                 Turn off stdout output after setup phase
     --daemonize              Spawn detached in the background
     --no-plugins             Do not load plugins
     --homedir <path>         Use an alternate path as the home 
                               directory instead of the user entry
     --confdir <path>         Use an alternate path as the base 
                               config directory instead of the default 
                               set at compile time
     --datadir <path>         Use an alternate path as the data
                               directory instead of the default set at 
                               compile time.
     --override <flavor>      Load an alternate configuration override 
                               from {confdir}/kismet_{flavor}.conf
                               or as a specific override file.
 *** Logging Options ***
 -T, --log-types <types>      Override activated log types
 -t, --log-title <title>      Override default log title
 -p, --log-prefix <prefix>    Directory to store log files
 -n, --no-logging             Disable logging entirely

 *** Device Tracking Options ***
     --device-timeout=n       Expire devices after N seconds

Using it

# Start kismet on a Wi-Fi interface
sudo kismet -c wlan0

# Then open the web UI it prints (default):
#   http://localhost:2501
# On first launch it walks you through creating a login.

Kismet does its real work through that web interface — live device lists, channel and signal detail, and its alerting. The command line just points it at capture sources and starts the server.