Alejandro Martín's Python-Powered RTL-SDR Signal Analyzer Can Warn of Active Jamming Attacks
Handy program turns any RTL-SDR software-defined radio into a detector for anomalous signals, including jamming attacks.
Developer Alejandro Martín has released a tool that turns an RTL-SDR software-defined radio dongle into a low-cost signal analyzer — with the ability to detect attempts at radio frequency jamming attacks.
"[This is] a real-time spectrum analyzer and signal detection tool," Martín explains of his creation, "leveraging RTL-SDR hardware for RF [Radio-Frequency] monitoring and jamming detection. [It] features real-time visualization, smart detection, dynamic analysis, flexible configuration, [and] network support."
Written in Python, Martín's tool communicates with a low-cost receive-only RTL-SDR software-defined radio dongle using the RTL-TCP server, which exposes its capabilities as a local or remote network device. At its simplest, the software works as a frequency analyzer with two visualization modes on one screen — making it possible to identify signals by eye and to save captured signals to disk.
A more powerful use comes from the tool's built-in detection capabilities: anomalous signals can be flagged automatically and pulled up for display. This even extends to jamming attacks, where a powerful transmitter is used to drown out legitimate signals — and could potentially be used to trigger automations, such as an alarm, based on the detection of an active attack.
Martín has released the software on GitHub under the permissive MIT license; those looking to use it will need any RTL-SDR or compatible software-defined radio dongle, a system running Python 3.8 or higher, and a copy of RTL-TCP running.
Main article image courtesy of RTL-SDR.com.
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.