Уязвимость OTA-обновлений через SMS: как один текстовый блок ломает парк Android-устройств в ритейле
По данным CNews, в профессиональном сообществе опубликован метод, позволяющий дистанционно и необратимо вывести из строя Android-смартфон с помощью специально сформированных служебных SMS-сообщений. Для ритейл-компаний, использующих мобильные устройства для кассиров, курьеров и инвентаризации, это означает риск мгновенной остановки бизнес-процессов на сотнях терминалов без видимых внешних атак.
Что произошло
Суть инцидента заключается в эксплуатации уязвимостей в стеке обработки Over-The-Air (OTA) обновлений, которые до сих пор управляются через SMS в некоторых прошивках. Злоумышленнику не требуется взаимодействие с пользователем или наличие интернета на устройстве. Атака реализуется через отправку бинарных SMS (тип 0x41/0x42) на порт, который слушает системный сервис модема или загрузчика.
Технический механизм выглядит следующим образом:
- Инъекция параметров: В теле SMS передается специально сформированный бинарный блок данных, имитирующий команду на обновление прошивки модема (baseband) или загрузчика (bootloader).
- Перезапись критических разделов: Устройство, следуя стандартным протоколам (например, 3GPP TS 23.040), принимает сообщение за легитимную команду от оператора связи и инициирует запись в разделы
/dev/block/bootdevice/by-name/modemилиabl(Android Bootloader). - "Окирпичивание": Поскольку проверка цифровой подписи образа в некоторых реализациях драйверов модема отсутствует или обходится, устройство записывает "мусорные" данные. При следующей перезагрузке аппарат не может инициализировать радиомодуль или пройти проверку Secure Boot, превращаясь в неработоспособный кусок пластика.
Важно, что стандартные средства MDM (Mobile Device Management) часто не видят эту атаку, так как она происходит на уровне ниже операционной системы, в проприетарных драйверах чипсета (Qualcomm, MediaTek). Пользователь видит лишь внезапную потерю сети и невозможность загрузки, списывая это на аппаратную поломку.
Почему это важно
Для российского ритейла, где парк устройств исчисляется тысячами единиц (кассовые терминалы, сканеры, смартфоны курьеров), последствия носят катастрофический характер.
1. Масштаб и логистика: Если курьерская служба использует парк из 500 смартфонов, массовая рассылка SMS через шлюзы или даже с одного модифицированного телефона в зоне погрузки может парализовать доставку на весь день. Замена или реанимация устройства требует физического доступа, прошивки через EDL-режим (Emergency Download Mode) и специального кабеля, что невозможно сделать удаленно.
2. Проблема 152-ФЗ и реестров: Многие компании используют устройства, внесенные в реестр Минпромторга, или ОС Аврора. Однако, если уязвимость находится на уровне baseband-прошивки (которая часто остается глобальной/китайской даже на "российских" аппаратах), смена ОС не спасает. Это создает ложное чувство безопасности при аудите по /docs/152-fz, так как утечка данных не происходит, но происходит отказ в обслуживании (DoS), что также является инцидентом ИБ.
3. Скрытность: В отличие от шифровальщиков, здесь нет выкупа. Устройства просто перестают работать. Для службы безопасности это выглядит как волна необъяснимого брака оборудования, что затягивает реакцию на инцидент. Аналогичные кейсы наблюдались ранее с уязвимостью Simjacker, где SMS-команды использовались для геолокации, но текущий вектор бьет по доступности (Availability).
Что делать
Ритейл-ИТ руководителям необходимо перейти от пассивного ожидания патчей к активной изоляции векторов атаки на уровне MDM и инфраструктуры связи.
1. Блокировка векторов доставки на уровне MDM:
Необходимо внедрить политики, ограничивающие работу с SMS на системном уровне. В современных MDM-решениях (включая /docs/) это делается через Device Owner режим:
- Отключение приложения обмена сообщениями для системных нужд. Используем ADB для проверки и настройки:
adb shell pm disable-user --user 0 com.android.messaging
adb shell settings put global sms_default_application "com.null.app" (замена на несуществующий пакет).
- Установка запрета на получение широковещательных сообщений (Cell Broadcast), которые также могут быть вектором:
adb shell appops set android READ_CELL_BROADCASTS ignore
2. Сетевая изоляция и работа с операторами:
Поскольку атака идет через сигнальный уровень, необходимо:
- Обратиться к корпоративному оператору связи с требованием включить фильтрацию бинарных SMS (классы 0, 1, 2, 3) на стороне SMSC для ваших корпоративных номеров и IoT-тарифов.
- Настроить профили APN (Access Point Name) так, чтобы блокировать любые входящие соединения на порты, отличные от стандартных HTTP/HTTPS. В конфиге APN это поле
ProxyиPortдолжны быть пустыми, аMVNO typeдолжен быть жестко привязан к вашей компании.
3. Контроль целостности загрузчика (для инженеров):
Для критически важных устройств (старшие модели Samsung, Xiaomi, используемые как кассы) необходимо внедрить проверку хеш-сумм разделов загрузчика.
- Через MDM-скрипт раз в сутки выполнять команду:
adb shell cat /dev/block/bootdevice/by-name/abl | sha256sum
- Сравнивать результат с эталонным значением, зашитым в базу данных MDM при вводе устройства в эксплуатацию. Любое расхождение — немедленная блокировка устройства и вывод его из эксплуатации до физической перепрошивки программатором.
4. Управление обновлениями:
Запретите устройствам проверять обновления по сотовой сети. В политиках MDM (/docs/policies/) установите флаг Update over Wi-Fi only. Это не защитит от SMS-эксплойта напрямую, но исключит риск того, что злоумышленник подменит точку доступа и инициирует "обновление" через вредоносный Wi-Fi, маскируя атаку под легитимный патч.
5. Инвентаризация чипсетов:
Проведите аудит парка. Устройства на старых чипсетах MediaTek (MT6580, MT6737) и ранних Qualcomm подвержены этому в наибольшей степени из-за слабой реализации Secure Boot в модемах. Составьте график вывода таких аппаратов из эксплуатации в первую очередь, заменяя их на модели с поддержкой Android Enterprise Recommended, где требования к безопасности загрузчика выше.
Источник: https://www.cnews.ru/news/top/2026-11-02_android-smartfon_mozhno_prevratit