I've always known this, and I'm sure most of you do too, but we never
really talk about it. Every smartphone or other device with mobile
communications capability (e.g. 3G or LTE) actually runs not one, but two operating systems.
Aside from the operating system that we as end-users see (Android, iOS, PalmOS),
it also runs a small operating system that manages everything related
to radio. Since this functionality is highly timing-dependent, a
real-time operating system is required. This operating system is stored in firmware, and runs on the baseband
processor. As far as I know, this baseband RTOS is always entirely
proprietary.
The problem here is clear: these baseband processors and the
proprietary, closed software they run are poorly understood, as there's
no proper peer review. This is actually kind of weird, considering just
how important these little bits of software are to the functioning of a
modern communication device. You may think these baseband RTOS' are safe
and secure, but that's not exactly the case.
You may have the most secure mobile operating system in the world, but
you're still running a second operating system that is poorly
understood, poorly documented, proprietary, and all you have to go on
are Qualcomm's Infineon's, and others' blue eyes.
So, we have a complete operating system, running on an ARM processor,
without any exploit mitigation (or only very little of it), which
automatically trusts every instruction, piece of code, or data it
receives from the base station you're connected to. What could possibly
go wrong?
You can do some crazy things with these exploits. For instance, you can turn on auto-answer, using the Hayes command set.
This is a command language for modems designed in 1981, and it still
works on modern baseband processors found in smartphones today (!). The
auto-answer can be made silent and invisible, too.
Add all this up, and it's easy to see why every cellphone manufacturer
just opts for an off-the-shelf baseband processor and associated
software. This does mean that each and every feature and smartphone has a
piece of software that always runs (when the device is on), but that is
essentially a black box. Whenever someone does dive into baseband
software, many bugs and issues are found, which raises the question just
how long this rather dubious situation can continue.
It's kind of a sobering thought that mobile communications, the
cornerstone of the modern world in both developed and developing
regions, pivots around software that is of dubious quality, poorly
understood, entirely proprietary, and wholly insecure by design.
No comments:
Post a Comment