Реверс-инжиниринг IP-камеры (Часть 1): Извлеките прошивку и ее секреты

Опубликовано TheJoe на

Приблизительное время чтения: 2 минут

Все началось с тайны (и очень экономичный) IP-камера наблюдения Унотек. Без документации и без доступа к веб-интерфейсу, единственным способом понять, как это работает, было “попасть внутрь”. В этой первой части, посмотрим, как мне удалось загрузить внутреннюю конфигурацию и расшифровать файл резервной копии, чтобы найти скрытые учетные данные.

Пчелиная охота: Команда резервного копирования

Камеры на базе чипсета HiSilicon они часто прячут лазейки в виде CGI-скриптов. После некоторых попыток угадать стандартные пути, используемые производителями, Я поразил большую цель. Введя адрес в браузере:

http://192.168.5.123/cgi-bin/hi3510/backup.cgi

Браузер начал загрузку файла под названием config_backup.bin. Но не обманывайтесь расширением: в мире Интернета вещей, файлы часто “.мусорное ведро” это просто стандартные архивы, переименованные, чтобы отпугнуть менее опытных.

Анализ файлов: Это действительно двоичный файл?

Чтобы понять, с чем я имею дело, Я запросил файл с помощью команды file Linux. Эта команда не доверяет расширению, должен вставить “Волшебные байты” Nell’header файла.

$ file config_backup.bin
config_backup.bin: gzip compressed data, from Unix, original size 3276800

Здесь тайна раскрыта: на самом деле файл является архивом .tar.gz. Чтобы открыть его, все, что вам нужно было сделать, это переименовать его или извлечь напрямую:

mv config_backup.bin config_backup.tar.gz
tar -zxvf config_backup.tar.gz

Что в “Черный ящик”?

После распаковки, Я обнаружил перед собой часть структуры файловой системы камеры., раздел /mnt/ посвященный конфигурациям. Папка /mnt/mtd/ipc/conf/ Это оказалась золотая жила файлов .ini:

  • config_user.ini: Он содержал учетные данные для входа… очень сложно угадать (админ/админ).
  • config_md.ini: Настройки обнаружения движения (результат деактивирован).
  • wifi.conf: Параметры сети.
  • config_alarm.this: Триггеры для тревог FTP и электронной почты.
Смотри сюда:  Потому что ваша домашняя сеть перестает просматривать веб-страницы через несколько дней.? Руководство по петле DNS (и как это решить)

Почему не удается выполнить повторную загрузку?

пробовал редактировать файлы .ini (например, активируя движение) и воссоздать архив, чтобы снова загрузить его на камеру. Однако, Я подозреваю, что прошивка выполняет проверку целостности (контрольная сумма) при запуске. Если файл подделан, камера отбрасывает его и возвращается к заводским настройкам.

Это открытие привело меня к следующему этапу: если я не смогу изменить правила “изнутри” прошивка файла, Я буду использовать команды CGI, чтобы проинструктировать его. “снаружи”. Но об этом мы поговорим в части 2.

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


TheJoe

Я держу это в качестве хобби блог от 2009. Я графики энтузиастов, технология, Программное обеспечение с открытым исходным кодом. Среди моих статей не будет трудно найти о музыке, и некоторые личные размышления, но я предпочитаю, чтобы направить линию блога в основном технологии. Для получения дополнительной информации связаться со мной.

0 Комментарии

оставьте ответ

Заполнитель аватара

Ваш электронный адрес не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатывается комментарий данных.