Исследователи Бирмингемского университета и компании Fuzzware выяснили: вредоносная SIM-карта способна заставить установленный в устройстве модем выполнять выбранные атакующим команды. Для этого используется RUN AT, штатная проактивная команда SIM. На коммерческой зарядной станции для электромобилей удалось добиться полноценного исполнения кода, причём вся атака прошла исключительно через команды SIM-карты. Под угрозой могут оказаться промышленные маршрутизаторы, автомобильные телематические блоки, платёжные терминалы и другое сотовое IoT-оборудование. Работу представили на конференции USENIX WOOT в Балтиморе; точная календарная дата доклада не приводится. Среди авторов указан Мариус Мюнх, доцент кафедры информатики Бирмингемского университета. Случаев применения такой техники в реальных атаках пока не зарегистрировано.

Всего проверили 26 телефонов и сотовых модулей. RUN AT приняли 9 устройств. Среди восьми отдельных модулей команда сработала на шести, пять из них выпустила Quectel. Три модуля Quectel извлекли из коммерческой зарядной станции, промышленного маршрутизатора и телематического блока автомобиля. Из 18 смартфонов RUN AT поддержали лишь OPPO Find X5, OPPO Reno 14 F 5G и ASUS Zenfone 9. Ни один проверенный iPhone или Google Pixel команду не принял. Все девять восприимчивых устройств имели коммуникационный процессор Qualcomm, но ещё пять телефонов на платформе Qualcomm отклонили RUN AT. Значит, поведение зависит от настроек производителя, а не неизбежно присуще каждому продукту Qualcomm. Эти цифры описывают только 26 испытанных образцов и не позволяют подсчитать весь парк затронутой техники.
Одного телефонного номера жертвы для атаки недостаточно. Внутри устройства уже должна находиться враждебная либо скомпрометированная SIM-карта. Злоумышленник может вручную заменить штатную карту, подложить тонкий SIM-интерпозер, взломать SIM программно или вмешаться в производство устройства. Ещё один сценарий связан со скомпрометированным оператором связи, способным удалённо загрузить или активировать вредоносную функцию. Самые удобные цели — оставленные без присмотра IoT-устройства с доступным лотком SIM, малым числом внешних интерфейсов и широкими полномочиями сотового модуля. Для межмашинных систем такая комбинация вполне обычна.
RUN AT входит в стандартизированный набор проактивных команд SIM. Обычно устройство читает данные с карты, но проактивный механизм меняет направление: SIM сама отправляет инструкции модему. Команда просит его выполнить AT-команду, то есть инструкцию на языке управления модемами, восходящем к Hayes Smartmodem 1981 года. Производители расширяют базовый язык собственными командами, поэтому доступ к RUN AT по сути открывает SIM-карте универсальную консоль управления модемом. По словам Мариуса Мюнха, эта возможность и возникающая поверхность атаки «явно определены в технических спецификациях сотовой связи». Ошибки памяти, внедрение команд и некорректный доступ к файлам можно исправлять обычными патчами. Сам RUN AT не ошибка стандарта: включать или отключать его решает поставщик конкретного продукта.
В IoT-модулях последствия тяжелее, чем в большинстве телефонов. Почти каждый изученный модуль содержал коммуникационный процессор и небольшой прикладной процессор, часто ARM Cortex-A7 под управлением Android. Если радиочасть не умеет обрабатывать полученную AT-команду, она передаёт её прикладному процессору. В итоге SIM общается уже с компактным компьютером на Linux или Android, где работают системные службы и демоны с высокими привилегиями. Авторы назвали такую среду «богатой поверхностью атаки для враждебных SIM-карт». Обычная ошибка в одной из внутренних служб тогда превращает стандартную команду модема в путь к захвату всего узла.
Полное исполнение кода получили на зарядной станции Autel MAXI US AC W12-L-4G с модулем Quectel EC25AFXDGA. Внутри модуля процесс atfwd_daemon передавал контролируемый атакующим текст в вызов оболочки через небезопасную строку формата. Разработчики предусмотрели список запрещённых символов против выхода в shell и внедрения команд, однако перевод строки обошёл фильтр. После двух этапов эксплуатации исследовательский код заработал внутри модуля. Autel напрямую не уведомляли: дефект находился в компоненте Quectel, а не в прикладном ПО зарядной станции. Мюнх сообщил The Hacker News, что отчёт передали Quectel, после чего производитель модуля должен был известить собственных клиентов.
На OPPO Reno 14 F 5G команда AT+COPS=0,,,0 принудительно закрепила телефон в сети 2G. Владельцу не удалось отменить изменение включением авиарежима, ручным выбором оператора, переключением мобильных данных, отключением SIM или выбором другого поколения сети в настройках. В 2G нет взаимной аутентификации телефона и сети, поэтому рядом с таким аппаратом удобнее развернуть поддельную базовую станцию. Другие доступные команды позволяли выключить сам смартфон либо отдельно его модем. Инструмент CATana, выпущенный исследователями, обнаружил на этой модели 198 AT-команд, достижимых непосредственно через SIM.
В Quectel EG25-G нашли иной путь. Запущенный с правами root TFTP-демон не проверял, ведёт ли запрошенный путь к символической ссылке. Подготовив такую ссылку, атакующий мог читать произвольные файлы модуля, а затем отправлять их наружу его же командами AT+QSMTP. Здесь одной вредоносной SIM было мало: ссылку требовалось заранее поместить в файловую систему через SD-карту либо прошивку специально подготовленного раздела. Это уже составная атака, зато после начального вмешательства данные покидали устройство через штатные возможности сотового модуля.
Во время подготовки работы та же группа отдельно показала атаку на заблокированные Android-смартфоны. Враждебная SIM могла без действий пользователя открыть страницу, контролируемую атакующим. Среди затронутых аппаратов были Pixel 6, Pixel 8, Pixel 9 и другие устройства. Google исправила уязвимость под номером CVE-2025-48618 в бюллетене безопасности Android за декабрь 2025 года. Эта ошибка с самопроизвольным открытием браузера не относится к исследованному интерфейсу RUN AT и представляет отдельную проблему.
Мюнх считает с высокой вероятностью затронутыми все модули серий Quectel EC25, Quectel EG25 и Quectel RM52xN, а также, вероятно, другие продукты Quectel на модемах Qualcomm. Они устанавливаются в автомобили, зарядные станции, платёжные терминалы и прочую IoT-технику. Проверить масштабы трудно: Quectel не публикует прошивки в открытом доступе, сведения о версиях разбросаны, а числа работающих модулей никто не оценивал. Открытый через SIM интерфейс AT, по данным исследователей, зарегистрирован как CVE-2026-57550 через Qualcomm, хотя на описываемый момент запись ещё не появилась в публичном перечне CVE Program. GSMA отслеживает проблему под номером CVD-2026-0122. В 2021 году в том же atfwd_daemon уже исправляли другую доступную через AT ошибку внедрения команд — CVE-2021-31698, но она находилась в иной точке входа.
Отчёты отправили Google, Oppo, Quectel, Semtech и Qualcomm в марте 2026 года, а GSMA — в мае 2026-го. На 10 августа ни одна из пяти компаний не выпустила публичного уведомления по этой работе; год у даты «10 августа» отдельно не указан, хотя весь окружающий график относится к 2026 году. Qualcomm подготовила усиленную конфигурацию, где RUN AT по умолчанию выключен: она должна применяться в будущих устройствах, а уже выпущенные модули обещано обновить. Исследователи не смогли проверить, удаляют ли обновления опасные пути кода или лишь отключают их настройкой; публичного бюллетеня Qualcomm тогда не было. Quectel сообщила об устранении ошибки доступа к файлам, продолжении работы над RUN AT и исправлении уже известной командной инъекции в новых прошивках, но не назвала уязвимые и исправленные версии. Её портал уведомлений доступен только после входа. Semtech подтвердила результаты и собиралась распространять патчи Qualcomm. Oppo и Google признали сведения информативными, но вынесли их за рамки своих программ вознаграждения. Autel в перечень прямых получателей отчёта не вошла.
Универсального патча здесь нет: RUN AT предусмотрен стандартом, поставщики настраивают его по-разному, а найденные программные дефекты различаются от устройства к устройству. Исследователи предлагают усилить защиту интерфейса, вывести его из употребления либо полностью отключить. Операторам сотовых IoT-парков стоит запросить у поставщиков четыре конкретных ответа: включён ли RUN AT в поставленной прошивке; можно ли его отключить; удаляет ли обновление уязвимые пути или только меняет настройку; какие версии прошивки уязвимы и в каких стоят исправления. Пока этих данных нет в публичном доступе, проверить зарядные станции, телематические блоки, маршрутизаторы и терминалы по одному названию модели зачастую невозможно.

Изображение носит иллюстративный характер
Всего проверили 26 телефонов и сотовых модулей. RUN AT приняли 9 устройств. Среди восьми отдельных модулей команда сработала на шести, пять из них выпустила Quectel. Три модуля Quectel извлекли из коммерческой зарядной станции, промышленного маршрутизатора и телематического блока автомобиля. Из 18 смартфонов RUN AT поддержали лишь OPPO Find X5, OPPO Reno 14 F 5G и ASUS Zenfone 9. Ни один проверенный iPhone или Google Pixel команду не принял. Все девять восприимчивых устройств имели коммуникационный процессор Qualcomm, но ещё пять телефонов на платформе Qualcomm отклонили RUN AT. Значит, поведение зависит от настроек производителя, а не неизбежно присуще каждому продукту Qualcomm. Эти цифры описывают только 26 испытанных образцов и не позволяют подсчитать весь парк затронутой техники.
Одного телефонного номера жертвы для атаки недостаточно. Внутри устройства уже должна находиться враждебная либо скомпрометированная SIM-карта. Злоумышленник может вручную заменить штатную карту, подложить тонкий SIM-интерпозер, взломать SIM программно или вмешаться в производство устройства. Ещё один сценарий связан со скомпрометированным оператором связи, способным удалённо загрузить или активировать вредоносную функцию. Самые удобные цели — оставленные без присмотра IoT-устройства с доступным лотком SIM, малым числом внешних интерфейсов и широкими полномочиями сотового модуля. Для межмашинных систем такая комбинация вполне обычна.
RUN AT входит в стандартизированный набор проактивных команд SIM. Обычно устройство читает данные с карты, но проактивный механизм меняет направление: SIM сама отправляет инструкции модему. Команда просит его выполнить AT-команду, то есть инструкцию на языке управления модемами, восходящем к Hayes Smartmodem 1981 года. Производители расширяют базовый язык собственными командами, поэтому доступ к RUN AT по сути открывает SIM-карте универсальную консоль управления модемом. По словам Мариуса Мюнха, эта возможность и возникающая поверхность атаки «явно определены в технических спецификациях сотовой связи». Ошибки памяти, внедрение команд и некорректный доступ к файлам можно исправлять обычными патчами. Сам RUN AT не ошибка стандарта: включать или отключать его решает поставщик конкретного продукта.
В IoT-модулях последствия тяжелее, чем в большинстве телефонов. Почти каждый изученный модуль содержал коммуникационный процессор и небольшой прикладной процессор, часто ARM Cortex-A7 под управлением Android. Если радиочасть не умеет обрабатывать полученную AT-команду, она передаёт её прикладному процессору. В итоге SIM общается уже с компактным компьютером на Linux или Android, где работают системные службы и демоны с высокими привилегиями. Авторы назвали такую среду «богатой поверхностью атаки для враждебных SIM-карт». Обычная ошибка в одной из внутренних служб тогда превращает стандартную команду модема в путь к захвату всего узла.
Полное исполнение кода получили на зарядной станции Autel MAXI US AC W12-L-4G с модулем Quectel EC25AFXDGA. Внутри модуля процесс atfwd_daemon передавал контролируемый атакующим текст в вызов оболочки через небезопасную строку формата. Разработчики предусмотрели список запрещённых символов против выхода в shell и внедрения команд, однако перевод строки обошёл фильтр. После двух этапов эксплуатации исследовательский код заработал внутри модуля. Autel напрямую не уведомляли: дефект находился в компоненте Quectel, а не в прикладном ПО зарядной станции. Мюнх сообщил The Hacker News, что отчёт передали Quectel, после чего производитель модуля должен был известить собственных клиентов.
На OPPO Reno 14 F 5G команда AT+COPS=0,,,0 принудительно закрепила телефон в сети 2G. Владельцу не удалось отменить изменение включением авиарежима, ручным выбором оператора, переключением мобильных данных, отключением SIM или выбором другого поколения сети в настройках. В 2G нет взаимной аутентификации телефона и сети, поэтому рядом с таким аппаратом удобнее развернуть поддельную базовую станцию. Другие доступные команды позволяли выключить сам смартфон либо отдельно его модем. Инструмент CATana, выпущенный исследователями, обнаружил на этой модели 198 AT-команд, достижимых непосредственно через SIM.
В Quectel EG25-G нашли иной путь. Запущенный с правами root TFTP-демон не проверял, ведёт ли запрошенный путь к символической ссылке. Подготовив такую ссылку, атакующий мог читать произвольные файлы модуля, а затем отправлять их наружу его же командами AT+QSMTP. Здесь одной вредоносной SIM было мало: ссылку требовалось заранее поместить в файловую систему через SD-карту либо прошивку специально подготовленного раздела. Это уже составная атака, зато после начального вмешательства данные покидали устройство через штатные возможности сотового модуля.
Во время подготовки работы та же группа отдельно показала атаку на заблокированные Android-смартфоны. Враждебная SIM могла без действий пользователя открыть страницу, контролируемую атакующим. Среди затронутых аппаратов были Pixel 6, Pixel 8, Pixel 9 и другие устройства. Google исправила уязвимость под номером CVE-2025-48618 в бюллетене безопасности Android за декабрь 2025 года. Эта ошибка с самопроизвольным открытием браузера не относится к исследованному интерфейсу RUN AT и представляет отдельную проблему.
Мюнх считает с высокой вероятностью затронутыми все модули серий Quectel EC25, Quectel EG25 и Quectel RM52xN, а также, вероятно, другие продукты Quectel на модемах Qualcomm. Они устанавливаются в автомобили, зарядные станции, платёжные терминалы и прочую IoT-технику. Проверить масштабы трудно: Quectel не публикует прошивки в открытом доступе, сведения о версиях разбросаны, а числа работающих модулей никто не оценивал. Открытый через SIM интерфейс AT, по данным исследователей, зарегистрирован как CVE-2026-57550 через Qualcomm, хотя на описываемый момент запись ещё не появилась в публичном перечне CVE Program. GSMA отслеживает проблему под номером CVD-2026-0122. В 2021 году в том же atfwd_daemon уже исправляли другую доступную через AT ошибку внедрения команд — CVE-2021-31698, но она находилась в иной точке входа.
Отчёты отправили Google, Oppo, Quectel, Semtech и Qualcomm в марте 2026 года, а GSMA — в мае 2026-го. На 10 августа ни одна из пяти компаний не выпустила публичного уведомления по этой работе; год у даты «10 августа» отдельно не указан, хотя весь окружающий график относится к 2026 году. Qualcomm подготовила усиленную конфигурацию, где RUN AT по умолчанию выключен: она должна применяться в будущих устройствах, а уже выпущенные модули обещано обновить. Исследователи не смогли проверить, удаляют ли обновления опасные пути кода или лишь отключают их настройкой; публичного бюллетеня Qualcomm тогда не было. Quectel сообщила об устранении ошибки доступа к файлам, продолжении работы над RUN AT и исправлении уже известной командной инъекции в новых прошивках, но не назвала уязвимые и исправленные версии. Её портал уведомлений доступен только после входа. Semtech подтвердила результаты и собиралась распространять патчи Qualcomm. Oppo и Google признали сведения информативными, но вынесли их за рамки своих программ вознаграждения. Autel в перечень прямых получателей отчёта не вошла.
Универсального патча здесь нет: RUN AT предусмотрен стандартом, поставщики настраивают его по-разному, а найденные программные дефекты различаются от устройства к устройству. Исследователи предлагают усилить защиту интерфейса, вывести его из употребления либо полностью отключить. Операторам сотовых IoT-парков стоит запросить у поставщиков четыре конкретных ответа: включён ли RUN AT в поставленной прошивке; можно ли его отключить; удаляет ли обновление уязвимые пути или только меняет настройку; какие версии прошивки уязвимы и в каких стоят исправления. Пока этих данных нет в публичном доступе, проверить зарядные станции, телематические блоки, маршрутизаторы и терминалы по одному названию модели зачастую невозможно.