TGViewer
Just Security Just Security @justsecurity · 3.63K subscribers
Post #378 1.44K
🥇Замыкающий кейс в нашей подборке прошлогодних работ из номинации «Девайс» от авторов @n0um3n0n и @madprogrammer

Надеемся, эта серия постов вдохновила вас поучаствовать в #pentestaward 2025, анонс которой мы запланировали уже в этом месяце!

Объект исследования


GSM-модем Cinterion EHS5, используемый в различных устройствах: банкоматах, автомобилях, индустриальных шлюзах и медицинском оборудовании.

Результат

Удалось обнаружить уязвимость переполнения кучи через SMS-сообщения (протокол SUPL), что позволило выполнять произвольный код с максимальными привилегиями на устройстве. Уязвимость получила номер CVE-2023-47610.

Ход исследования

1) Поиск уязвимости в GSM-модеме

- Исследован модем Cinterion EHS5 на базе процессора Intel X-Gold 625.
- Через съем NAND-флеш памяти получена прошивка.
- Обнаружена уязвимость переполнения кучи при обработке SUPL-сообщений (SMS).
- Переполнение происходит из-за несоответствия между длиной фрагмента и общей длиной сообщения, что позволяет записать данные за пределы буфера.

2) Разработка примитива чтения памяти

- При переполнении модем перезагружается, но через команду AT+XLOG удалось получить адрес сбоя и состояние регистров.
- Выявлено, что при падении в регистр R0 попадают контролируемые данные.
- Уудалось медленно считывать память модема (4 байта в минуту) через SMS.

3) Поиск примитива записи

- Проанализированы функции malloc и free в ОС ThreadX.
- Выяснено, что функция free может записать указатель на свободный блок по произвольному адресу, если подменить структуру Thread.
- Создана поддельная структура HeapBase, позволяющая записывать адреса с помощью free.

4) Эксплуатация уязвимости

- Реализован примитив записи в память через последовательность WAP SMS.
- После получения записи по произвольному адресу выполнен анализ кода ОС.
- Найдена точка вызова произвольного кода через структуру Thread.

5) Закрепление на устройстве

- Обнаружена возможность разблокировки памяти и изменение прав доступа на запись.
- Код для закрепления интегрирован в процесс UTACAT, отвечающий за обработку SMS.
- Разработан драйвер, позволяющий записывать данные в файловую систему и запускать произвольные приложения через SMS.

Полноценный текст с картинками доступен на Хакере 👈
  • ❤ 4
  • ❤‍🔥 2
  • 👍 2
  • 🔥 2
More from @justsecurity
  1. Sep 16, 2026Важный повод поехать в Питер — ZeroNights 2026 дропнули программу конференции! В этом году…
  2. Sep 15, 2026Воооу! Наконец выпустили подкаст про пентест в финтехе! 🔥🔥🔥 Еще в июне встречались с Па…
  3. Sep 9, 2026А вы знали, что Андрей Масалович, известный как КиберДед, проводит камерные бизнес-бранчи…
  4. Aug 17, 2026👉 Pentest award 2026: итоги церемонии награждения 👈 Спасибо каждому, кто принял участие…
  5. Aug 15, 2026👉 Фотоотчет Pentest award 2026 Ценим вклад каждого 🫶 #pentestaward
  6. Aug 14, 2026В ожидании ✨
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →