. Вскрываем хардверный имплант. Как устроен девайс для слежки, замаскированный под кабель USB
Вскрываем хардверный имплант. Как устроен девайс для слежки, замаскированный под кабель USB

Вскрываем хардверный имплант. Как устроен девайс для слежки, замаскированный под кабель USB

Это перевод статьи Inside a low budget consumer hardware espionage implant. Переводчик — Андрей Письменный. Материал публикуется с разрешения автора.

Какое-то время назад Джо Фитц написал в твиттере об устройстве под названием S8 data line locator и назвал его «просачивающимся шпионажем» из-за того, что он похож на шпионское оборудование АНБ.

S8 data line locator — это подслушивающее устройство, снабженное модулем GSM, которое умещается в штепселе обычного кабеля USB для зарядки и передачи данных. Оно поддерживает частоты GSM 850, 900, 1800 и 1900 МГц.

Идея, лежащая в основе, очень напоминает продуктовую линейку COTTONMOUTH, выпускаемую по заказу АНБ и CSS, — там радиопередатчик тоже спрятан в вилку USB (см. утекший отчет на cryptome.org — PDF). Такие устройства называют имплантами.

Само устройство рекламируется как трекер геолокации, который можно использовать в машине: угонщик не примет кабель USB за маячок. Но сложно не заметить и возможность применения такого устройства во вред. Особенно учитывая, что точность определения геокоординат очень примерная (в моих тестах погрешность составляла 1,57 км). Зато можно позвонить на него и слушать аудио, передаваемое маленьким микрофоном, находящимся внутри. Либо устройство само может позвонить, если определит, что звук превышает предел в 40–45 дБ. Ну и совсем никаких сомнений в том, что шпионаж — основное применение этого гаджета, не остается, если учесть, что оно легко запаковывается обратно в фабричную упаковку после установки SIM-карты и настройки.

Возможности S8 data line locator

У устройства есть несколько возможностей для подслушивания и шпионажа. Только взгляни на лог переписки с устройством по SMS.

Подслушивание

Если звонить на S8 data line locator в течение десяти секунд, будет установлено соединение, и ты услышишь все, что слышит микрофон внутри устройства.

Обратный звонок

SMS с текстом 1111 на устройство активирует обратный звонок. В подтверждение этого придет SMS с ответом:

Как только уровень звука поднимется до 40 дБ, устройство перезвонит на тот номер, с которого была прислана команда.

Для отключения обратного звонка нужно отправить SMS с кодом 0000 . Ответ будет выглядеть так:

Запрос геопозиции

В инструкции написано, что, если отправить по SMS команду dw , устройство в ответ пришлет информацию о своем местоположении. Выглядит это так:

Вместо xxxx будут символы 0–9, A–Z, a–z , а вместо строки Street, ZIP City, Country — название улицы, почтовый индекс, город и страна. По ссылке на http://gpsui.net можно перейти без авторизации, она перенаправит на Google Maps.

Получить местоположение с погрешностью меньше чем в 1,57 км у меня ни разу не вышло.

Делая запрос, устройство использует мобильный трафик для доступа к неизвестному эндпойнту (предположительно gpsui.net). Это подтверждается тем, что мой оператор снял с меня деньги за MMS/Internet. Разницы между MMS и использованием интернета он не указывает, но я беру на себя смелость предположить, что запрос был сделан во время определения местоположения. Именно это и стало отправной точкой для моего анализа.

WARNING

Поскольку устройство отправляет неизвестные данные неизвестной третьей стороне, его нельзя (по крайней мере, с чистой совестью) использовать в пентестах. Как минимум из тех соображений, что устройство уже могло быть в эксплуатации.

Дальше я попытался проанализировать и уничтожить эту «фичу» с отстуком куда-то.

Железо

Чтобы получить доступ к внутренностям устройства, сначала нужно снять металлическую защиту коннектора USB.

Теперь снимаем пластиковую крышку.

После вскрытия устройства определяем, что за чипы на нем установлены.

  • MediaTek MT6261MA — низкобюджетный чип, который часто используется в умных часах китайского производства. Никакой официальной документации или информации о чипе компания MediaTek не публиковала;
  • RDA 6626e — «мощный, высокоэффективный четырехканальный фронтэнд-модуль… созданный для установки в мобильные устройства с поддержкой сетей GSM850, EGSM900, DCS1800, PCS1900».
Коннекторы

Я идентифицировал три разных способа подключиться к устройству.

USB (сквозной)

Коннекторы USB A и Micro-B не подсоединены к MT6261MA. Они просто передают сигнал от одного к другому.

Следующее соединение — это UART.

Соединение с ним занимает примерно три секунды после загрузки устройства.

Вывод на этом обрывается, а ввод игнорируется.

Похоже, существует другая версия прошивки, которая может обрабатывать модемные команды AT. В приветствии этой альтернативной прошивки упомянут некто ZhiPu. Я тоже натыкался на эту строку, когда изучал файловую систему FAT12 прошивки, так что какая-то связь определенно есть.

Вот как выглядит вывод у схожего устройства.

USB (MTK)

Контакты DP и DM коннектора USB не подсоединены к линиям D+ и D-, зато V и GND подсоединены. DP и DM вместо этого подведены к MT6261MA, как показано на картинке.

Припаиваем кабель USB к коннекторам.

Теперь устройство будет распознаваться как телефон MediaTek, подключенный по USB.

Этот метод часто называют «починкой бута MTK», «флешем MTK DM DP» и так далее. Он позволит нам общаться с устройством и сделать дамп ПЗУ и флеш-памяти прошивки.

Продолжение доступно только участникам Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

📎📎📎📎📎📎📎📎📎📎