Статья для участия в конкурсе на codeby Объявляю открытие конкурса статей до 31 декабря
Всем привет.
Очень часто на форуме, особенно у новичков возникает вопрос, как получить доступ к ip камере, если пароль по умолчанию изменен. Как вариант многие советуют либо брутить пароль, либо ищут готовые инструменты, которые позволяют обойти авторизацию. Но что делать, если сисадмин поставил сложный пароль на админку, на перебор которого уйдет не один месяц, а может и год, а готовые инструменты (решения из коробки) не поддерживают модель камеры, к которой вы хотите получить доступ.
Не стоит унывать, так как не все потеряно… Сегодня рассмотрим, как раз такой случай.
Тестирование мы будем проводить на реальной ip камере из поднебесной, и может для кого-то открою Америку, но 90 процентов камер из поднебесной, да и не только, подвержены данному взлому. В процессе я расскажу об аппаратной и программной части устройства, так же рассмотрим, как можно вытаскивать учетные данные с паролями, находить скрытые бэкдоры, в конце дам рекомендации по их устранению.
Данный алгоритм действий подходит не только для ip камер, но и к другим различным IoT устройствам.
Так как материала будет много, я статью разделю на несколько частей.
Все действия я буду проводить внутри своей локальной сети, используя операционную систему кали линукс , так же, нам придется установить дополнительные пакеты, которые не входят в дистрибутив , но к этому вернемся позже. И так поехали.
Первым делом при любом тестировании мы собираем информацию, камера у меня находится под адресом 192.168.0.35, давайте воспользуемся nmap и посмотрим что получится.
В нашем случае нас интересует Telnet сервер на BusyBox, а именно 23 порт.(про BusyBox я подробно расскажу во второй части статьи.)
Мы можем попробовать подключится, перебирая дефолтные связки логин-пароль, благо на просторах всемирной паутины информации предостаточно, но что делать если ни одна из общедоступных связок не подошла?
Что бы двигаться дальше нам нужно знать точную модель камеры, исходя из этой информации мы потом сможем зайти на сайт производителя, скачаем и изучим прошивку.
Запомните, для каждой камеры своя прошивка.
Узнать можно следующими способами.
1. Используя сервис shodan.
2. Если у вас заключен договор на тестирование, можете истребовать данную информацию у заказчика.
3. Можно проанализировать трафик IoT устройства с помощью Wireshark, часто в логах проскакивает названия устройства.
4. Если у вас есть физический доступ к устройству, можно разобрать, подключится и прочитать содержимое. Правда есть нюансы, если чип SPI проще, с NAND сложнее. В любом случае последний пункт, не зная схемотехнику и микроэлектронику лучше не лазить.
В нашем случае, у нас есть доступ к админке, и мы ее просто посмотрим.
название как мы видим выглядит следующим образом:
V4.02.R12.00006531.100.10.142100
Ниже я предоставлю ссылку на таблицу c расшифровкой данного префикса, а также таблицу с ссылками на прошивки основных производителей ip камер, по ней вы легко найдете вам нужную. Она не раз меня выручала . Нашел ее на просторах интернета.
Топаем на сайт производителя, в нашем случае:
Файл будет следующего вида: General_HZXM_IPC_HI3518E_53H13_S38_V4.02.R12.Nat.OnvifS.20160913_ALL.bin
Давайте посмотрим, что он из себя представляет.
Для этого воспользуемся инструментом binwalk, он входит в кали по умолчанию и предназначен для анализа прошивок.
Мы видим следующее:
Формат сжатия файлов используется ZIP , бывают еще(LZMA, Tar, итд)
Фаловая система CramFS, еще может встретится SquashFS
Загрузчик у нас U-Boot, так же может встретится Redboot
Теперь нам нужно распаковать нашу прошивку с помощью утилиты unzip
У нас 8 файлов, обращаю внимание на файлы, которые заканчиваются на *.img.
В нашем случае это несколько измененные образы файловой системы CramFS, давайте приведем образ к нормальному состоянию, для этого нужно обрезать 64 байта заголовка.
Отлично, остальные файлы кроме u-boot.bin.img делаем таким же образом.
А сейчас немного пробежимся по основным файлам , в крадце расскажу что они собой представляют.
u-boot.bin.img - загрузчик U-boot.
custom-x.cramfs.img - дополнительные настройки платформы.
user-x.cramfs.img - программа видеорегистратора Sofia и дополнителный софт.
InstallDesc – скрипт , используется для обновления прошивки.
romfs-x.cramfs.img -операционная система linux под архитектуру ARM, на ней сейчас мы акцентируем внимания, так как именно там содержится файл с паролем.
Что бы двигаться дальше нам нужно установить дополнительный пакет, а именно cramfsprogs.
Для этого нам нужно добавить репозитарий в source.list и обновится.
Далее распаковываем образ:
Заходим в каталог с распакованной системой, в нашем случае это romfs, ищем файл passwd, открываем и вуаля у нас хэш пароля. Далее мы можем скормить хэш John the Ripper, hydra или воспользоваться онлайн сервисами, в моем же случае хэш пароля лежал в гугле.а именно : логин root пароль xmhdipc
Здесь выкладываю общий скрин моих действий.
Давайте проверим и зайдем в ip камеру используя наш логин и пароль.
Как видите у нас все получилось.
Всем спасибо за внимания, продолжение следует…
Всем привет.
Очень часто на форуме, особенно у новичков возникает вопрос, как получить доступ к ip камере, если пароль по умолчанию изменен. Как вариант многие советуют либо брутить пароль, либо ищут готовые инструменты, которые позволяют обойти авторизацию. Но что делать, если сисадмин поставил сложный пароль на админку, на перебор которого уйдет не один месяц, а может и год, а готовые инструменты (решения из коробки) не поддерживают модель камеры, к которой вы хотите получить доступ.
Не стоит унывать, так как не все потеряно… Сегодня рассмотрим, как раз такой случай.
Тестирование мы будем проводить на реальной ip камере из поднебесной, и может для кого-то открою Америку, но 90 процентов камер из поднебесной, да и не только, подвержены данному взлому. В процессе я расскажу об аппаратной и программной части устройства, так же рассмотрим, как можно вытаскивать учетные данные с паролями, находить скрытые бэкдоры, в конце дам рекомендации по их устранению.
Данный алгоритм действий подходит не только для ip камер, но и к другим различным IoT устройствам.
Так как материала будет много, я статью разделю на несколько частей.
Все действия я буду проводить внутри своей локальной сети, используя операционную систему кали линукс , так же, нам придется установить дополнительные пакеты, которые не входят в дистрибутив , но к этому вернемся позже. И так поехали.
Первым делом при любом тестировании мы собираем информацию, камера у меня находится под адресом 192.168.0.35, давайте воспользуемся nmap и посмотрим что получится.
В нашем случае нас интересует Telnet сервер на BusyBox, а именно 23 порт.(про BusyBox я подробно расскажу во второй части статьи.)
Мы можем попробовать подключится, перебирая дефолтные связки логин-пароль, благо на просторах всемирной паутины информации предостаточно, но что делать если ни одна из общедоступных связок не подошла?
Что бы двигаться дальше нам нужно знать точную модель камеры, исходя из этой информации мы потом сможем зайти на сайт производителя, скачаем и изучим прошивку.
Запомните, для каждой камеры своя прошивка.
Узнать можно следующими способами.
1. Используя сервис shodan.
2. Если у вас заключен договор на тестирование, можете истребовать данную информацию у заказчика.
3. Можно проанализировать трафик IoT устройства с помощью Wireshark, часто в логах проскакивает названия устройства.
4. Если у вас есть физический доступ к устройству, можно разобрать, подключится и прочитать содержимое. Правда есть нюансы, если чип SPI проще, с NAND сложнее. В любом случае последний пункт, не зная схемотехнику и микроэлектронику лучше не лазить.
В нашем случае, у нас есть доступ к админке, и мы ее просто посмотрим.
название как мы видим выглядит следующим образом:
V4.02.R12.00006531.100.10.142100
Ниже я предоставлю ссылку на таблицу c расшифровкой данного префикса, а также таблицу с ссылками на прошивки основных производителей ip камер, по ней вы легко найдете вам нужную. Она не раз меня выручала . Нашел ее на просторах интернета.
Ссылка скрыта от гостей
Топаем на сайт производителя, в нашем случае:
Ссылка скрыта от гостей
и скачиваем нужный нам файл.Файл будет следующего вида: General_HZXM_IPC_HI3518E_53H13_S38_V4.02.R12.Nat.OnvifS.20160913_ALL.bin
Давайте посмотрим, что он из себя представляет.
Для этого воспользуемся инструментом binwalk, он входит в кали по умолчанию и предназначен для анализа прошивок.
Мы видим следующее:
Формат сжатия файлов используется ZIP , бывают еще(LZMA, Tar, итд)
Фаловая система CramFS, еще может встретится SquashFS
Загрузчик у нас U-Boot, так же может встретится Redboot
Теперь нам нужно распаковать нашу прошивку с помощью утилиты unzip
У нас 8 файлов, обращаю внимание на файлы, которые заканчиваются на *.img.
В нашем случае это несколько измененные образы файловой системы CramFS, давайте приведем образ к нормальному состоянию, для этого нужно обрезать 64 байта заголовка.
Отлично, остальные файлы кроме u-boot.bin.img делаем таким же образом.
А сейчас немного пробежимся по основным файлам , в крадце расскажу что они собой представляют.
u-boot.bin.img - загрузчик U-boot.
custom-x.cramfs.img - дополнительные настройки платформы.
user-x.cramfs.img - программа видеорегистратора Sofia и дополнителный софт.
InstallDesc – скрипт , используется для обновления прошивки.
romfs-x.cramfs.img -операционная система linux под архитектуру ARM, на ней сейчас мы акцентируем внимания, так как именно там содержится файл с паролем.
Что бы двигаться дальше нам нужно установить дополнительный пакет, а именно cramfsprogs.
Для этого нам нужно добавить репозитарий в source.list и обновится.
Далее распаковываем образ:
Заходим в каталог с распакованной системой, в нашем случае это romfs, ищем файл passwd, открываем и вуаля у нас хэш пароля. Далее мы можем скормить хэш John the Ripper, hydra или воспользоваться онлайн сервисами, в моем же случае хэш пароля лежал в гугле.а именно : логин root пароль xmhdipc
Здесь выкладываю общий скрин моих действий.
Давайте проверим и зайдем в ip камеру используя наш логин и пароль.
Как видите у нас все получилось.
Всем спасибо за внимания, продолжение следует…
Последнее редактирование модератором: