Содержание статьи
Это исследование получило второе место на Pentest Award 2025 в категории «Девайс». Соревнование ежегодно проводится компанией Awillix.
Я привык, что домофон — это такая висящая на стене трубка, которую надо снять, когда звонят, а потом нажать кнопку с ключиком, чтобы открыть дверь. Пару раз я видел вариант с маленьким экраном, на котором не видно ровным счетом ничего: черно‑белая картинка, сильно зернистая, с плохо распознаваемыми силуэтами.
Однажды в мои руки попал не такой простецкий домофон, а навороченный: с большим цветным тачскрином и подключением по Wi-Fi. Я хотел узнать, нельзя ли его использовать для прослушивания. Забегая вперед скажу, что при определенных условиях вполне можно.
Вот как выглядело это чудо.

На обратной стороне девайса — клеммы для подключения питания, сигнализации, звонка и Ethernet-кабеля, который по факту оказался разъемом PoE (можно питать домофон сразу от локальной сети). На торчащие провода обращать внимание не нужно: это уже мои «доработки», о них я расскажу позже.

Включив аппарат, первым делом идем в настройки и ищем что‑нибудь на тему Telnet/SSH/FTP, но ничего полезного не обнаруживаем. Однако в веб‑интерфейсе нашлась возможность обновлять прошивку, что может пригодиться.
Выключаем домофон и идем в Google — искать обновления. К сожалению, самих файлов с прошивкой для своего домофона я не накопал, зато нашлась вендорская утилита, предназначенная для сервисных инженеров. Тулза общая для всего семейства устройств и должна упрощать настройку устройств и раскатку инфраструктуры.
Пришлось принять сложное волевое решение — разобрать девайс. В случае неудачи меня ждала покупка нового аппарата, а они недешевые. Так что ставки высоки!

Судя по начинке, основная плата домофона — это фактически контроллер дисплея, Wi-Fi и PoE, а отдельная платка — не что иное, как съемный CPU с оперативкой и флешкой. Похоже, такая реализация удобна для обслуживания.

Рядом с маленькой платой — странный нераспаянный разъем CN2 (на фото я к нему уже припаялся), на двух выводах которого — резисторы. Верный знак того, что это что‑то важное (например, UART-консоль). Прежде чем браться за паяльник, можно изучить поближе съемную плату, с нее вполне возможно прочитать прошивку.

Правда, BGA я тогда запаивать обратно (реболить) не умел, поэтому сконцентрировал усилия на UART.

Увидеть при запуске лог загрузки — это, несомненно, круто! Но еще круче увидеть строку «Hit any key to stop autoboot». Активно нажимаем Enter и попадаем в меню U-Boot. Затем набираем команду help и ищем среди доступных команд что‑то для работы с eMMC. Команда mmc вполне сгодится. У меня уже был опыт получения дампа флешек через UART, поэтому я просто взял и адаптировал старый скрипт на Python под вывод команды.

Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
