New release: 2021-05-R1
Kismet 2021-05-R1
Kismet 2021-05-R1 is here!
Download
You can get the 2021-06-R1 release from the Kismet downloads page, where you can get both the source and packages for several distributions.
Changes and Updates
Kismet 2021-05-R1 has some large changes and some smaller changes.
On the large side:
-
New mutex and threading
New mutex and threading should simplify the code and reduce crashes due to thread deadlocks, while hopefully maximizing available CPU on multi-core systems in high load environments.
-
Multi-core packet decoding
Use all available cores while decoding packets, increasing performance especially on smaller multicore systems like the rpi4
-
New 802.15.4 phy
802.15.4 is now decoded and displayed in the UI! While many devices report the default PAN of 0x00, it’s still a huge step forward!
-
New data sources
New data capture drivers for the Nuand BladeRF2 with Wiphy firmware, the nrf52840 802.15.4 hardware, and killerbee 802.15.4 hardware.
-
New alert UI
Alerts now have their own top-level panel and are searchable, sortable, and have priorities assigned to them.
-
Fix Wi-Fi on Linux 5.10 and newer
The Linux kernel changed how netlink messages are fragmented, which broke how channels were indexed. Most likely this would show up when you had a number of Wi-Fi interfaces plugged in at once. This is fixed now.
-
PcapNG GPS logging
New custom blocks and attributes in PcapNG logs for GPS logging
-
Shift to officially requiring C++14
This has been a soft-requirement for some time where things wouldn’t necessarily build properly without C++14; Make it a hard requirement now.
And on the smaller side:
-
Support older libwebsockets
Support some older distributions with older libwebsockets versions
-
Support ADSB HEX export per-source
-
Upgrade included Boost libraries
-
Fix datasources in error state getting into weird loops
Datasoruces flapping in some error states (such as devices being unplugged) could get into weird states where the UUID would flap; this confused the logs, the datasources UI, and other spots. Properly retain the UUID.
-
Fix datasources getting into a no-channels state
Some combinations of errors could lead to datasources getting into a state with no channels, and never being able to get out of it.
-
Fix Wi-Fi pulling WEXT legacy channels
Default to WEXT IOCTL legacy channels when netlink fails or returns no channels, resolve wext channel frequencies to channel names.
-
Fix several thread contention errors on data
Several objects were shared for serialization and not properly protected, leading to subtle corruption or outright crashes at times. Those are now removed from the combined APIs or properly protected.
-
Better error handling for TI-CC-2531 and TI-CC-2540
Handle soft-resets of the TI-CC-2531 and 2540 802.15.4 and BTLE chipsets gracefully, so there are fewer errors and resets of the hardware.
-
Add Bluetooth and BTLE to Wigle exports
-
Add a
censor=1option to the UI URLAdding a
/&censor=1to the Kismet web UI will censor all location and mac addresses (to the best of its ability), making it easy to take screenshots. -
Fix CORS
The new webserver broke CORS negotiation. Fixed.
-
Smarter handling of HT/VHT IE tags
-
Fix error timer initialization in datasources
Don’t accidentally kill other timers anymore.
-
Add new WIDS signatures
Detect CVE-2020-9395
-
Fix up HTTP header connection states
-
Add fetch device, monitor device, mac search APIs
-
Fix eventbus websocket errors
-
Expand buffers
Expand buffer sizes for remote and IPC capture, this improves stability significantly on some platforms
-
Many more bug fixes
Many more smaller bugfixes throughout.
-
General improvements and changes to the REST API
Check here for a full list of changes and improvements to the REST API!
Packaging
If you’re looking to package Kismet, have a look at the packaging guidelines.
Thanks
As always, a tremendous thank you to all the contributors to the code and supporters on Github Sponsors and Patreon