Scanning mode: Bluetooth
The design of Bluetooth makes capturing packets very difficult, but performing active scans for discoverable Bluetooth and BTLE devices can still yeild results.
Scanning mode data sources
The scan report API is designed to be as simple as possible, and to automate as much of the process as possible.
To assist with automation, scanning mode datasources are created dynamically by Kismet when scan reports are submitted; there is no need to define a specific datasource before sending a scanning mode report.
To create the scanning mode datasource, a scanning report must include:
A datasource UUID. This UUID must be unique within Kismet, and consistent for all reports from this datasource. Scanning software should cache this UUID for consistent reporting between instances.
A human-readable name. This wil be assigned as the name of the datasource, and will be updated automatically if the name changes in subsequent reports.
Cache and burst mode reporting
Scanning mode assumes that the device doing scanning may not be able to maintain a constant connection to the Kismet server.
Reports can be cached in sent in groups using the report endpoint; each report contains a timestamp, GPS location, and signal information. Multiple reports for the same AP reflecting information over time can be sent in a single connection.
Bluetooth scanning report
Submit a scanning report.
A scanning report consists of a datasource name and UUID, and a list of report objects.
admin
scanreport
/phy/phybluetooth/scan/scan_report.cmd
POST
PARAMETERS
This endpoint takes additional parameters by using a `POST` request and supplying a
JSON document or json
form variable.
You can find more information about API parameters here.
reports
list
OPTIONALList of report objects
source_name
string
OPTIONALSource name
source_uuid
string
OPTIONALSource UUID
Each report object should contain:
timestamp
number
OPTIONALUnix timestamp with second precision.
If no timestmap is provided, the time the report is received is used.
Due to lack of high-precision packet data in scanning mode, timestamps are second precision only.
btaddr
string
REQUIREDBluetooth device address
devicetype
string
OPTIONALDevice type, if known
txpowerlevel
number
OPTIONALAdvertised transmission power level
pathloss
number
OPTIONALReported path loss
scan_data
string
OPTIONALBinary scan data, as hex string
service_data
dictionary
OPTIONALDictionary of UUID to service scan data, as binary hex strings
signal
number
OPTIONALSignal level, in dBm
lat
number
OPTIONALGPS latitude of detection, in decimal degrees
lon
number
OPTIONALGPS longitude of detection, in decimal degrees
alt
number
OPTIONALGPS altitude of detection, in meters
spd
number
OPTIONALGPS speed of motion of sensor during detection, in kilometers/hour
tags
object
OPTIONALObject/Map of device tags which will be applied to the device created by this scan.
Tagged scans should be used with caution: Tags will be applied to the device and will override any existing tags, so care must be taken with tags that overlap those editable by the user interface.
Submitting a user name or description tag, for instance, may be valuable if the user can enter that data in the scanning app, but the user should be advised that they can’t also edit that user name in the normal Kismet UI.