🚨 Woah. An intentional backdoor discovered in encrypted radio comms used globally for over 25 years.
Buckle up!
The technology in question is a European radio standard called TETRA (Terrestrial Trunked Radio).
It's used in radios made by Motorola, Damm, Hytera, and others and is embedded in critical infrastructure like pipelines, railways, and the electric grid.
TETRA is also used in specialized systems sold exclusively to police forces, prison personnel, military, intelligence agencies, and emergency services.
This includes the C2000 system used by Dutch police, fire, ambulance, and the Ministry of Defense. 🚓🚑
The encryption algorithms used in TETRA were kept secret until a group of Dutch researchers got their hands on them and found severe flaws, including a deliberate backdoor.
This backdoor could allow someone to snoop on communications and potentially send harmful commands.
The researchers also found a second vulnerability that could let someone decrypt encrypted voice and data communications and send fraudulent messages.
This could be used to spread misinformation or redirect personnel and forces during critical times. 📡
These vulnerabilities are not just theoretical.
TETRA radios are used in 2+ dozen critical infrastructure systems in the US.
- Electric Utilities
- A State border control agency
- An oil refinery
- Chemical plants
- A major mass transit system on the East Coast.
The researchers discovered these vulnerabilities in 2021 but agreed not to disclose them publicly until radio manufacturers could create patches and mitigations.
BUT
Not all of these issues can be fixed with a patch.
It's not clear which manufacturers have prepared them.
The researchers plan to present their findings at the BlackHat
They plan to release a detailed technical analysis and the secret TETRA encryption algorithms that have been unavailable to the public until now.
TETRA was developed in the ’90s by the European Telecommunications Standards Institute (ETSI)
The standard includes four encryption algorithms—TEA1, TEA2, TEA3, and TEA4
The first vulnerability the researchers found was the backdoor in TEA1.
All four TETRA encryption algorithms use 80-bit keys, but TEA1 has a feature that reduces its key to just 32 bits.
The researchers were able to crack it in less than a minute using a standard laptop
The second major vulnerability isn’t in one of the secret algorithms... it affects all of them.
The issue lies in the standard itself and how TETRA handles time syncing and keystream generation.
This could allow an attacker to intercept and decrypt communication.
As for fixes...
ETSI fixed the keystream/timestamp issue in a revised TETRA standard published last October, and they created three additional algorithms for vendors to use, including one that replaces TEA1
However, the problem with TEA1 cannot be fixed with an update
A worrying detail:
We don’t know if the vulnerabilities they found are being actively exploited.
They found evidence in the Edward Snowden leaks that indicate the NSA and UK’s GCHQ intelligence agency targeted TETRA for eavesdropping
Remotely and inaudibly issue commands to Alexa, Siri, Google Assistant, etc.
"allows attackers to deliver security-relevant commands via an audio signal between 16 and 22 kHz (often outside the range of human adult hearing)" 🔊
Diving into the world of Voice Control Systems (VCSs)
Inaudible & audible attacks on VCSs already exist. Inaudible attacks need the attacker and the victim to be close. Audible attacks can be remote but are noticeable.
How about this new attack?
It's the worst of both worlds for security - inaudible AND remote! 😱
Imagine an attacker embeds malicious commands into near-ultrasound inaudible signals in an app or website.
You open it, your VCS picks up the commands, but you can't hear a thing!
🎓A masterclass in vulnerability chaining to achieve a much more impactful exploit:
XSS -> Steal everyone's cleartext passwords.
This one is from the archives - a 2018 bug. But it demonstrates some concepts important even today.
McDonalds AngularJS app had a fairly simple XSS bug in its search parameter. It required a sandbox escape but it was a widely known one at the time and was built into Burp: