Initially I laughed at this and even
thanked Whales for a quick explanation. But after digging deeper into the presentation PDF and trying to extract as much juice as I could from the scraps, I think the ridicule is unwarranted.
Calling it a “backdoor” was too strong. The word implies intentions, and they presented no evidence even remotely suggesting that. But it is a vulnerability and a damn good one. If anybody has trouble understanding, what they did, let me put it in a more comprehensible example. Imagine the following hypothetical situation:
- Windows has a bunch of undocumented kernel calls,(1) that allows any userspace program to directly control peripherals.
- It is bundled with motherboards with built-in wireless communications.
- Those motherboards are deployed to a billion devices of all kinds, most of which aren’t even advertised to have wireless connectivity.
- There is no way to apply a patch to existing deployments.
Ring -1 access to unadvertised wireless communications from userspace. Not something I wish to call “nothing.”
It’s a local escalation, yes. With microcontrollers landscape of 2000s that would be of no imporance, as the only actor capable of carrying out an attack would be the device vendor. But folks, I've a feeling we're not in 2020s anymore. The puzzle piece you might’ve overlooked is that ESP32 isn’t used as we used microcontrollers 20 years ago. The firmware is being developed in high-level languages, with underlying runtime and with a massive number of third-party libraries. In the age of chain supply attacks this is bad news. With where ESP32 is being deployed, it almost universally is being used by people with no understanding of the subject, not caring about security, and hiring absolute newbies barely able to make everything not crash. Makes the situation orders of magnitude worse. And all this happens on a SoC that has wireless communications, and one that happens to be used without ever mentioning them to the buyer.
Does that sound to you more serious?
(1) That one is actually not hypothetical.