Содержание статьи
Я привык, что домофон — это такая висящая на стене трубка, которую надо снять, когда звонят, а потом нажать кнопку с ключиком, чтобы открыть дверь. Пару раз я видел вариант с маленьким экраном, на котором не видно ровным счетом ничего: черно‑белая картинка, сильно зернистая, с плохо распознаваемыми силуэтами.
Однажды в мои руки попал не такой простецкий домофон, а навороченный: с большим цветным тачскрином и подключением по 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 под вывод команды.

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