This software allows you to sniff the Wi-Fi probe requests passing near your wireless interface.
Probe requests are sent by a station to elicit information about access points, in particular to determine if an access point is present or not in the nearby environment. Some devices (mostly smartphones and tablets) use these requests to determine if one of the networks they have previously been connected to is in range, leaking personal information.
Further details are discussed in this paper.
This software requires Python 3 and the following dependencies:
pip3 install --upgrade sniff-probe-req
First of all, you need to enable the monitor mode of your wireless interface.
Then:
usage: sniff-probe-req [-h] [--debug] [-e ESSID [ESSID ...]]
[--exclude EXCLUDE [EXCLUDE ...]] -i INTERFACE
[--ignore-case] [-o OUTPUT] [-r REGEX]
[-s STATION [STATION ...]]
Wi-Fi Probe Requests Sniffer
optional arguments:
-h, --help show this help message and exit
--debug debug mode
-e ESSID [ESSID ...], --essid ESSID [ESSID ...]
ESSID of the APs to filter (space-separated list)
--exclude EXCLUDE [EXCLUDE ...]
MAC addresses of the stations to exclude (space-
separated list)
-i INTERFACE, --interface INTERFACE
wireless interface to use (must be in monitor mode)
--ignore-case ignore case distinctions in the regex pattern
(default: false)
-o OUTPUT, --output OUTPUT
output file to save the captured data (CSV format)
-r REGEX, --regex REGEX
regex to filter the ESSIDs
-s STATION [STATION ...], --station STATION [STATION ...]
MAC addresses of the stations to filter (space-
separated list)
For example:
sudo sniff-probe-req -i wlan0
For further information, have a look at the online documentation.