Реверс-инжиниринг IP-камеры (Часть 1): Извлеките прошивку и ее секреты
Все началось с тайны (и очень экономичный) 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 и электронной почты.
Почему не удается выполнить повторную загрузку?
пробовал редактировать файлы .ini (например, активируя движение) и воссоздать архив, чтобы снова загрузить его на камеру. Однако, Я подозреваю, что прошивка выполняет проверку целостности (контрольная сумма) при запуске. Если файл подделан, камера отбрасывает его и возвращается к заводским настройкам.
Это открытие привело меня к следующему этапу: если я не смогу изменить правила “изнутри” прошивка файла, Я буду использовать команды CGI, чтобы проинструктировать его. “снаружи”. Но об этом мы поговорим в части 2.
Оставайтесь с нами, чтобы узнать, как я использовал эту информацию для перехвата трафика с камер.!




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