Взлом камеры видеонаблюдения, особенности и секреты
Содержание:
- А теперь о взломе камер
- Собираем информацию
- WWW
- Методика SQL инъекций
- Взломать камеру видеонаблюдения с помощью грубой атаки
- Часть 1: Можно ли взломать камеру смартфона, зная только номер телефона?
- Изучение камеры
- Заключительные слова
- Подготовка веб камеры к тестированию
- DoS в функции procedure analyse() из MySQL
- Способ через дорки в Shodan
- Часть 3: Как «шпионить» за телефоном незаметно для его владельца (для устройств с Android)
- Меры безопасности
- Ставим цели
- Какие камеры взламывают чаще?
- Интро
- WARNING
- Ставим цели
- В бой!
- Изучение камеры
- Как взломать веб камеру — итоги
А теперь о взломе камер
Прежде чем начать, нам нужно подготовить свою программную базу, с чем мы будем иметь дело.
Cписок необходимого ПО, ссылки на загрузку:
1. (пароль от архива: lamerland ) {Антивирус может ругаться}
2.
3.
Приступим:
Итак, для начала нам нужны диапазоны ip нужного нам города. Переходим на сайт , вводим название города.
После чего, получаем большой список IP диапазонов
Копируем его(для быстроты, можно фрагмент), запускаем KPortScan, и вставляем наши диапазоны в левый столбец. Так же нужно выставить порт 8000, и после этого нажимаем «Start»:
Ждём, пока наберётся приличное кол-во «гудов»:
После завершения проверки, открываем из папки с программой текстовик «results.txt».
И копируем все IP адреса.
Открываем папку с программой Yoba Parser.
Из папки с программой открываем текстовик ip.txt — и вставляем сюда все наши IP.
Запускаем программу — Она без интерфейса, так что просто нужно подождать, пока она закроется:
После завершения программы открываем текстовый документ «out.txt» и видим наши результаты!
IP адресс камеры — (1)
Логин от камеры — (2)
Пароль от камеры — (3)
Запускаем программу iVMS-4200:
• Нажимаем Device Management
• Нажимаем кнопку «Add»
• В поле «Nickname» — вводим любое называние
• В поле «Adress» -вводим IP адрес камеры
• В поле «Login» — вводим Логин камеры (admin)
• В поле «Password» — вводим Папроль камеры (12345)
• И нажимаем кнопку «Add»:
Собираем информацию
Я начал поиски альтернативного способа подчинить себе динамик камеры — просканировал камеру при помощи Nmap.
Уже немало…
С портами 80 (HTTP) и 554 (RTSP) все понятно, 1935-й порт вроде как используется приложением Flash, через которое браузер показывает видео с камеры, а вот что висит на остальных портах — пока загадка.
Мое внимание привлек открытый 23-й порт. Но вот незадача — логин и пароль от веб-интерфейса к Telnet не подходят, в интернете на этот счет ничего нет, а техподдержке поставщика пароль неизвестен
Через веб-интерфейс настроить или отключить Telnet нельзя, остается только гадать, для чего или для кого он вообще работает. Но ведь если есть Telnet, значит, должны быть и учетные данные на него. Что ж, придется искать.
Почти все манипуляции я проводил в Ubuntu desktop 16.04. Для начала я скачал прошивку камеры и начал ее изучать. Нужно заметить, что прошивки для исследуемой камеры в зависимости от версии могут иметь разное содержимое. Мне попадались следующие варианты содержимого архива с прошивкой.
- Файлы и . Первый содержит корневую файловую систему, включая искомый с паролем на Telnet, второй — включает «брендированный обвес» — веб-интерфейс с логотипом и другими индивидуальными особенностями конкретного продавца (об этом позже).
- Файл , который корневую ФС не включает.
- Файл , внутри которого сразу корневая ФС и «обвес».
Далее попробовал определить тип файла командой file.
Для дальнейших манипуляций с файлами прошивки понадобится утилита binwalk. Забегая вперед, отмечу еще, что обязательно наличие модуля jefferson — для распаковки JFFS2.
WWW
На странице проекта в GitHub есть вся необходимая информация по установке.
Я заглянул внутрь бинарника при помощи binwalk.
Вывод binwalk
Squashfs — это специализированная сжатая файловая система, которая часто применяется в роутерах, IP-камерах и прочих IoT-устройствах, а JFFS2 — файловая система, часто используемая на флеш-памяти. В интернете можно найти несколько способов монтирования JFFS2 и Squashfs, но проще всего распаковать их через тот же binwalk.
где
- включает режим извлечения;
- пытается распаковывать вложенные элементы.
В итоге получилось два каталога с содержимым прошивки. В каталоге можно найти файл , внутри которого находится хеш типа MD5 (Unix). Брутанув этот хеш с помощью John или hashcat, можно получить искомый пароль для подключения по Telnet.
Вот пример запуска брута через hashcat:
Здесь
- — тип хеша, который будем брутить, 500 — md5crypt / MD5 (Unix);
- — режим работы, 0 — атака по словарю;
- — игнорировать предупреждения;
- — файл, в который я положил взламываемый хеш;
- — словарь;
- — файл, в который будет записан восстановленный пароль.
Hashcat отработал очень быстро, так как пароль тривиален и есть в популярных словарях. Учетки на Telnet получены, но моя история только начинается…
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!
Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя!
Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
Методика SQL инъекций
Достаточно оригинальный способ SQL инъекция, который был введен в практику жителем Польши. Суть методики заключается в формировании некоторого набора входящих данных, посредством которых включается определенная команда языка, используемого сегодня для осуществления работы с набором реляционных параметров в веб. Для этого адрес ip может не потребоваться, достаточно лишь знать особенности формирования систем данных посредством языка.
Важны условия работы, а именно:
- Довольно некорректной возможности обработки параметров входа.
- Доскональным набором знаний самой структуры и специфики работы базы данных взломщиков.
- Наличие определенных прав, актуальных для последующей работы с SQL командами, с веб.
Такой подход позволит выполнить много задач в целевой базе веб, в частности и осуществить взлом камеры (к примеру, это может быть та же камера веб, установленная как элемент системы наблюдения). Методика SQL инъекций может быть отлично использована в случае превышения скорости водителем средства передвижения. Основной секрет заключается в оригинальном номере транспортного средства, который фактически при передаче на камеру будет иметь вид некорректно введенных данных, и программа внесения его в базу данных нарушителей не сможет его распознать и зафиксировать.
Взломать камеру видеонаблюдения с помощью грубой атаки
Представьте, что камера видеонаблюдения использует пароль, основанный на обычном слове, которое можно найти в словаре, таком как « бог, дом, секрет » и т. Д.
Кто-нибудь может взломать камеру видеонаблюдения, просто попробовав разные пароли, пока не найдете правильный. Это то, что работает.
Хорошо, теперь вы думаете, что этот метод слишком сложный и медленный, поскольку сложно набрать любое слово, которое доступно в словаре, просто чтобы попытаться найти то, которое будет работать для входа в камеру видеонаблюдения, верно?
Что ж, если вы дадите эту задачу программному обеспечению, которое может проверять сотни или тысячи паролей в минуту, у вас будет больше шансов на успех.
Посмотрите на диаграмму ниже, чтобы понять, как работает эта техника.
Вы можете использовать Hydra для Linux или Windows, и вам просто нужно иметь готовый файл паролей со словами, которые вы хотите использовать, и выполнить команду
hydra -s 88 -l admin -P /root/desktop/pass.txt -e ns <IP-адрес камеры>
Смотрите ниже синтаксис
-s 88 — номер порта на IP-камере
-l admin — имя для входа по умолчанию, которое будет использоваться (admin)
-P /root/desktop/pass.txt — файл списка паролей
-e — пустой пароль
ns — попробуйте логин и пустой пароль
Программное обеспечение запускается и начинает пробовать разные слова, которые оно получает из txt-файла, и продолжайте делать это до совпадения. Если камера CCTV допускает такие быстрые попытки, это всего лишь вопрос времени, когда программное обеспечение найдет правильный пароль.
Современные IP-камеры видеонаблюдения не допускают такого рода атаки методом перебора, потому что они блокируются на некоторое время после слишком большого количества попыток входа в систему.
Часть 1: Можно ли взломать камеру смартфона, зная только номер телефона?
Прежде чем перейти к хакингу камеры телефона, ответим на один вопрос, который нам очень часто задают в последнее время: возможно ли «хакнуть» телефон, зная только используемый на нем номер?
Ответ — да. Однако некоторым кажется, что это слишком сложный процесс. К том уже, нужно взломать оригинальную прошивку смартфона, а это может сделать его уязвимым для хакерских атак и компьютерных вирусов.
У большинства обычных пользователей нет ни навыков, ни желания связываться со взломом прошивки смартфона. Если это можно сказать и о вас, то лучше используйте тот метод, о котором речь пойдет ниже.
Изучение камеры
Начинать любое исследование железа лучше всего с изучения доступной документации.
Открываем PDF, полученный на сайте Microdigital, и узнаем, что у камеры есть веб-интерфейс с пользователями root (пароль root) и anonymous.
Ну и раз уж мы на сайте компании, прихватим актуальную прошивку для камеры. Долго искать не пришлось, она доступна в соответствующем разделе.
Не факт, правда, что в прошивке содержится вся нужная для тестирования информация, поэтому смысл ее изучать будет, только если нет полноценного админского доступа в консоль устройства либо когда надо изучить апдейт. Поэтому не будем сейчас тратить время и вернемся к прошивке позже.
Заключительные слова
Существуют различные способы взлома камеры видеонаблюдения, и все они включают в себя, по крайней мере, некоторые базовые навыки злоумышленника, которые должны быть в состоянии хотя бы немного понять интернет и то, как использовать компьютер и программное обеспечение.
Помните, что любое IP-устройство, подключенное к Интернету, находится под угрозой, и нет никакой гарантии, что оно 100% и не может быть взломано кем-либо. Идея этой статьи — помочь людям понять, как можно взломать камеру видеонаблюдения и как минимизировать шансы злоумышленника.
74 просмотров
Отказ от ответственности: Автор или издатель не публиковали эту статью для вредоносных целей. Вся размещенная информация была взята из открытых источников и представлена исключительно в ознакомительных целях а также не несет призыва к действию. Создано лишь в образовательных и развлекательных целях. Вся информация направлена на то, чтобы уберечь читателей от противозаконных действий. Все причиненные возможные убытки посетитель берет на себя. Автор проделывает все действия лишь на собственном оборудовании и в собственной сети. Не повторяйте ничего из прочитанного в реальной жизни. | Так же, если вы являетесь правообладателем размещенного на страницах портала материала, просьба написать нам через контактную форму жалобу на удаление определенной страницы, а также ознакомиться с инструкцией для правообладателей материалов. Спасибо за понимание.
Подготовка веб камеры к тестированию
Приступим к изучению аппаратной составляющей. Для этого разбираем устройство (ничего сложного, четыре винта по периметру) и получаем печатную плату.
Также видим следующее:
- память S34ML01G100TF100;
- чип DM368ZCE;
- интерфейсы: четыре пина UART, USB, MicroSD, Ethernet.
Пины, отмеченные как BLE, я не рассматриваю, так как это, скорее всего, контакты для подключения модуля Bluetooth. Нас это в данный момент не интересует.
Модуль S34ML01G100TF100 — энергонезависимая NAND-память в корпусе TSOP-48. Datasheet легко гуглится. Из него узнаем подробнее о типе корпуса (NAND08) и размере хранилища — 128 Мбайт.
Для дальнейшей работы потребуется сделать бэкап данных, чтобы в случае «окирпичивания» камеры можно было вернуть ее в изначальное состояние. Для этого идеально подходит программатор ProMan TL86 или TL866 с переходником NAND08 → DIP48.
Содержимое флеш-памяти сохраним в нашу рабочую директорию. Как и к прошивке, возвращаться к ней нужно будет только в том случае, если не выйдет дорваться до админской консоли.
Картинки по запросу tl86
Для чипа DM368ZCE тоже не составило проблем нагуглить документацию (PDF). Оказывается, архитектура чипа — ARM. К тому же из документации можно достать его распиновку, но нам она не потребуется.
Пройдемся по интерфейсам. Из документации очевидно, что USB и MicroSD нужны в основном для того, чтобы подключать к устройству внешние носители и использовать их в качестве хранилища. Для полноты картины можем подключить к устройству USB-фаззер facedancer21 и, используя утилиту umap2scan, получить список поддерживаемых устройств.
К сожалению, камера не поддерживает ни одно из известных нам устройств.
Как насчет UART? Тут предстоит определить, за что отвечает каждый пин и какова скорость передачи данных. Для этого воспользуемся логическим анализатором Saleae Logic. Для удобства я подключился через проводок, который соединяет плату устройства и инфракрасные лампочки.
Пронумеруем пины для удобства.
Прежде чем включать логический анализатор, подключаем заземление к пину GND интерфейса для подключения BLE.
Теперь включаем логический анализатор и само устройство и смотрим, что из этого выйдет.
После включения устройства на пине номер 3 (в программе отсчет идет с нуля и пин нумерован как 2) передаются бинарные данные. Этот пин интерфейса UART отвечает за передачу данных (TX). Просмотрев длину одного бита, получаем текущую скорость передачи — 115 200 бит в секунду. При корректных настройках мы даже можем разглядеть часть текста.
У пина под номером 1 постоянное напряжение 3 В — следовательно, он предназначен для питания. Пин номер 4 связан с пином GND интерфейса для подключения модуля BLE. Значит, этот пин тоже «земля». И остается последний пин под номером 2, он отвечает за прием байтов (RX). Теперь у нас есть вся информация для общения с камерой по UART. Для подключения я воспользуюсь Arduino UNO в режиме переходника TTL.
Начинаем мониторить порт UART и получаем следующее.
При старте устройства первым делом подгружается загрузчик системы U-Boot. К сожалению, на уровне загрузки пин TX отключен в настройках камеры, поэтому мы можем наблюдать только отладочный вывод. Через какое-то время подгружается основная система, позволяющая ввести логин и пароль для доступа в администраторскую консоль. Пара root/root (аналогичная той, что используется для веб-админки и указана в документации) прекрасно подошла.
Получив консоль, мы можем изучить все работающие сервисы. Но не забываем, что у нас есть еще один неизученный интерфейс — Ethernet. Для его исследования нужно будет подготовить систему мониторинга трафика
Причем важно отслеживать первое же подключение к сети
Для перехвата трафика я буду пользоваться устройством Lan Tap Pro.
Никакой связанной с обновлениями активности мы, впрочем, не обнаруживаем. На этом разведка закончена, и мы полностью готовы к поиску уязвимостей!
DoS в функции procedure analyse() из MySQL
Нет
BRIEF
Автор эксплоита нашел возможность вызвать DoS в MySQL версий до 5.5.45 включительно. В функции падение происходит при обработке подзапроса.
Пример вызова функции:
Соответственно, PoC будет таким:
Проверка:
Падение приложения MySQL
Другой пример атаки — это запуск полезной нагрузки, которая была сохранена в файл и подана на вход (он показан на скриншоте ниже).
Перенаправление атаки на mysql.exe
Если после появления сообщения о падении проверить лог вывода Event Viewer, то ты сможешь увидеть, что приложение mysqld.exe действительно упало. При этом смещение для указателя на ошибку будет равно .
Лог вывода Event Viewer после падения mysqld
Если же мы подконнектимся к процессу с помощью IDA, то сможем увидеть, что падение происходит в структуре из-за поля, которое не было выделено.
Представление функции обработки таблиц в IDA
EXPLOIT
В качестве тестового стенда автор использовал Damn Vulnerable Web Application (DVWA).
Если атакующий найдет веб-приложение, уязвимое к SQL-инъекции, то он сможет с легкостью провести DoS-атаку, MySQL-сервер перестанет отвечать и все используемые базы данных тоже перестанут быть доступными.
В Windows достаточно простого запроса для вызова падения и, скорее всего, понадобится ручная перезагрузка:
Пример атакующего запроса на тестовое приложение с MySQL
На *nix-системах mysqld автоматически восстанавливается, но если мы пошлем многочисленные GET-запросы с такой полезной нагрузкой, то база данных все равно упадет.
Пример такой атаки с помощью bash-скрипта, который использует cURL для GET-запросов:
Помимо небольшого bash-скрипта, автор написал версию эксплоита на Python:
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!
Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя!
Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
Способ через дорки в Shodan
К слову, есть ещё один способ проверки веб камер. Через всеми нами любимый Shodan.
Мы будем делать поиск по данному запросу:
realm="GoAhead", domain=":81"
(порт можно выбрать 81,8080).
Копируем IP адрес, с указанием порта, вставляем в новую вкладку.И приписываем следующее:
/system.ini?loginuse&loginpas
Получится как-то так:
179.252.228.9:81/system.ini?loginuse&loginpas
После этого у вас должен был скачаться файл system.ini, его нужно открыть. Среди лишних символов тут содержится логин и пароль от камеры.
Если вдруг не скачивается файл, переходите к другому IP. После чего, переходите на тот самый IP с портом, должно вылезти окошко авторизацииВводим туда логин/пароль с файла system.ini, пробуем варианты.
Входить можно как и через браузер, так и через клиент iVMS 4200.
Часто бывает, что производитель оставляет в прошивке камеры служебный вход для сервис-центров. Он остается открытым даже после того, как владелец камеры сменил дефолтный пароль. В мануале его уже не прочтешь, а вот найти на тематических форумах можно.
Огромная проблема состоит в том, что во многих камерах используется один и тот же веб-сервер GoAhead. В нем есть несколько , которые производители камер не спешат патчить.
GoAhead, в частности, подвержен переполнению стека, которое можно вызывать простым запросом HTTP GET. Ситуация усложняется еще и тем, что китайские производители модифицируют GoAhead в своих прошивках, добавляя новые дыры.
Камеры среднего и высокого класса оснащают поворотными креплениями. Взломав такую, можно сменить ракурс и полноценно осмотреть все вокруг. Особенно занятно бывает играть в перетягивание камеры, когда, помимо тебя, ей одновременно пытается управлять кто-то еще. В общем случае атакующий получает полное управление камерой прямо из своего браузера, просто обратившись по нужному адресу.
Часть 3: Как «шпионить» за телефоном незаметно для его владельца (для устройств с Android)
Если вам нужно проследить за телефоном с операционной системой Android, мы рекомендуем приложение-трекер Cocospy для Android. Оно позволяет «шпионить» за смартфоном дистанционно и совершенно незаметно.
Выполните 3 простых действия, чтобы начать следить за смартфоном без взлома прошивки
Чтобы активировать Cocospy для слежки за устройством с Android, вам нужно сделать следующее:
- Бесплатно создайте учетную запись на сайте Cocospy
- Установите приложение Cocospy
- Начните следить за интересующим вас смартфоном
Шаг 2. Установите приложение Cocospy на интересующий вас смартфон
После завершения процесса оплаты просто следуйте инструкции по установке приложения. Если вы запутались, обратитесь к подробному руководству по установке >>
Шаг 3. Начните следить за интересующим вас смартфоном
Готово! После установки Cocospy вы можете получить доступ к данным об устройстве, за которым хотите шпионить.
Какие функции Cocospy для Android доступны без взлома прошивки?
Прежде всего, я хочу подчеркнуть несколько замечательных особенностей приложения Cocospy:
Все сообщения, отправленные с телефона, отображаются в вашем личном кабинете Cocospy в режиме реального времени, в том числе и переписка в соцсетях и мессенджерах.
Вы можете шпионить за входящими и отправленными сообщениями в WhatsApp, Facebook Messenger, Snapchat, Telegram и других мессенджерах. ВНИМАНИЕ! Все эти замечательные функции доступны без взлома прошивки смартфона с Android!
Основные функции Cocospy включают в себя:
1. Доступ к данным о звонках и к текстовым сообщениям
Вы без проблем сможете отслеживать входящие и исходящие звонки, читать смски и переписку в чатах на телефоне с ОС Android с помощью Cocospy.
Это приложение позволяет пользователям получать уведомления о входящих звонках в режиме реального времени, а также дает полный доступ к контактам на телефоне.
Стоит отметить, что приложение-«шпион» сохраняет даже те сообщения, которые были удалены со смартфона.
2. Доступ к истории браузера
Вы сможете узнать, какие веб-страницы посещал владелец телефона с ОС Android. Эту функцию часто используют родители, чтобы проверить, не заходит ли ребенок на потенциально небезопасные сайты.
Если вы — владелец компании, Cocospy поможет вам проследить за тем, чтобы сотрудники использовали корпоративные телефоны только для решения рабочих задач, а не для личных целей.
3. Функция «Keylogger»
Термин «keylogging» означает регистрацию всех нажатий клавиш на устройстве. С помощью этой функции Cocospy можно вовремя выявить неблагоприятные ситуации, отследив их по определенным ключевым словам, напечатанным на клавиатуре телефона.
Функция кейлоггинга позволяет отследить и прекратить общение с потенциально опасными незнакомцами, Интернет-троллями или представителями компаний-конкурентов.
4. Информация об установленных приложениях
Многие родители хотят выяснить не только то, с кем и о чем переписывается их ребенок в Интернете, но и то, какие приложения он устанавливает на своем телефоне.
Cocospy позволяет «шпионить» за приложениями, загруженными на смартфон с ОС Android из Play Store, в том числе за приложениями в формате .apks. Есть также возможность дистанционно заблокировать установку приложений на смартфон с Android.
5. Возможность просматривать фотографии и медиафайлы
Информацию в Интернете можно передавать не только текстовыми сообщениями, но и с помощью фотографий, музыкальных файлов и видеороликов.
Cocospy дает вам возможность незаметно ознакомиться с содержанием мультимедийных файлов на интересующем вас смартфоне.
Можно просматривать изображения и видеоматериалы, загруженные на телефон его владельцем или присланные кем-то другим. Эта функция доступна для любых устройств с операционной системой Android.
6. Получение GPS-координат устройства
Приложение Cocospy позволяет вам следить за текущим местонахождением смартфона в режиме реального времени.
Вы можете отметить определенные места как нежелательные — например, бары, казино, какие-то конкретные адреса. Если устройство, за которым вы шпионите, вдруг окажется в одной из этих точек, вы сразу же получите соответствующее уведомление.
Рекомендуем также статью Как поймать изменника: 20+ лучших «шпионских» приложений, скрытых камер и уловок
Меры безопасности
Если вы внимательно относитесь к компьютерной безопасности, но хотите дополнительно подстраховаться, можете проделать следующее:
- Выключайте веб-камеру, когда не пользуетесь ей. В Windows это можно сделать через диспетчер устройств. Откройте командную строку с правами администратора и выполните команду devmgmt.msc – откроется список с категориями доступных устройств. Веб-камеры часто находятся в разделе «Устройства обработки изображений». Найдите свою камеру, щелкните по ней правой кнопкой и нажмите «Отключить устройство».
- Также вы можете отключать микрофон, если боитесь, что вас могут подслушивать. В Windows для этого достаточно щелкнуть правой кнопкой по значку динамика в трее и выбрать пункт «Записывающие устройства». В появившемся списке устройств щелкаем правой кнопкой мыши по необходимому микрофону и выбираем пункт «Отключить». Можно не отключать микрофон, а войти в свойства устройства и снизить его чувствительность до нуля.
- Ах да, камеру можно просто заклеить малярным скотчем (или использовать задвижки, шторки и т.п.). Только не заклеивайте светодиод, расположенный рядом с камерой – в случае несанкционированного доступа к видеопотоку он, скорее всего, загорится, и вы сможете отключиться от сети и начать поиск уязвимости, которой воспользовались злоумышленники.
Поделиться
Ставим цели
К счастью, мы живем в то прекрасное время, когда от желаемого до действительного — пара строчек кода. Давай проверим, чем нам может помочь современный мобильный телефон на базе ОС Android.
Сегодня мы напишем маленькую программу, которая в фоновом режиме будет собирать из окружающего пространства важные для нас данные, а затем отправлять их на указанный интернет-ресурс.
В статье из позапрошлого номера «Повелитель ботов на Android» мы написали хорошее и полезное приложение, но у него был один недостаток: его нельзя запустить для работы в фоне и пойти заниматься своими делами. Все дело в так называемом жизненном цикле приложения (Activity lifecyсle). Советую изучить официальные материалы по теме, а пока коротко скажу так: как только система видит, что пользователь перестал работать в приложении, оно становится в очередь на выгрузку из памяти для освобождения ресурсов под другие задачи. Поэтому, если мы хотим денно и нощно следить за окружающим миром с помощью телефона, придется действовать по-другому.
Пусть наша программа периодически самостоятельно запускается, делает фотографию с фронтальной камеры и пишет звук с микрофона, после чего полученные данные должны отправляться в интернет на указанный нами сервер. Для большей гибкости включим в нее возможность менять настройки поведения, периодически загружая из интернета конфигурационный файл.
Рис. 1. Блок-схема приложения
Какие камеры взламывают чаще?
Начнем с главного: да, получить доступ ко многим камерам довольно легко, поэтому вероятность взлома существует. Однако хакеры чаще атакуют не встроенные веб-камеры ноутбуков, а внешние IP-камеры, устанавливаемые, например, в частных домах и торговых залах (эти устройства видеонаблюдения управляются через специальный веб-интерфейс).
Такие камеры, как правило, защищены паролями, но многие владельцы камер оставляют пароли, выставленные производителями оборудования по умолчанию. При этом многие уязвимые устройства можно найти с помощью Google (для этого формируются запросы с использованием инструкций inurl и intitle) или через сайт Shodan. Халатность владельцев камер приводит к тому, что хакеры получают доступ к видеопотоку без каких-либо усилий.
Интро
Для всех нас безопасность близких людей стоит на первом месте. Вспомни ощущения, когда важный тебе человек не отвечает на звонки, а сообщения в WhatsApp остаются непрочитанными. В такие моменты мы готовы многое отдать, лишь бы получить представление о том, что же там происходит. Конечно, сотовые операторы предоставляют услуги по геолокации абонента, но информация, что «девушка находится где-то посередине» Большой Дмитровки, душу не успокаивает. Посмотрим, что мы можем с этим сделать.
WARNING
Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.
Ставим цели
К счастью, мы живем в то прекрасное время, когда от желаемого до действительного — пара строчек кода. Давай проверим, чем нам может помочь современный мобильный телефон на базе ОС Android.
Сегодня мы напишем маленькую программу, которая в фоновом режиме будет собирать из окружающего пространства важные для нас данные, а затем отправлять их на указанный интернет-ресурс.
В статье из позапрошлого номера «Повелитель ботов на Android» мы написали хорошее и полезное приложение, но у него был один недостаток: его нельзя запустить для работы в фоне и пойти заниматься своими делами. Все дело в так называемом жизненном цикле приложения (Activity lifecyсle). Советую изучить официальные материалы по теме, а пока коротко скажу так: как только система видит, что пользователь перестал работать в приложении, оно становится в очередь на выгрузку из памяти для освобождения ресурсов под другие задачи. Поэтому, если мы хотим денно и нощно следить за окружающим миром с помощью телефона, придется действовать по-другому.
Пусть наша программа периодически самостоятельно запускается, делает фотографию с фронтальной камеры и пишет звук с микрофона, после чего полученные данные должны отправляться в интернет на указанный нами сервер. Для большей гибкости включим в нее возможность менять настройки поведения, периодически загружая из интернета конфигурационный файл.
Рис. 1. Блок-схема приложения
В бой!
Начнем с конфигурационного файла. Для удобства работы будем раз в день загружать из сети XML-файл и парсить его с помощью библиотеки XMLPullParser. В данном случае мы проверяем наличие открывающихся тегов audio и photo. Естественно, этот класс позволяет и большее, поэтому проблем с созданием гибких настроек не будет. Непосредственно настройки будут храниться в SharedPreferences, их мы уже много раз использовали, рекомендую пролистать предыдущие статьи.
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!
Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя!
Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
Изучение камеры
Начинать любое исследование железа лучше всего с изучения доступной документации.
Открываем PDF, полученный на сайте Microdigital, и узнаем, что у камеры есть веб-интерфейс с пользователями root (пароль root) и anonymous.
Ну и раз уж мы на сайте компании, прихватим актуальную прошивку для камеры. Долго искать не пришлось, она доступна в соответствующем разделе.
Не факт, правда, что в прошивке содержится вся нужная для тестирования информация, поэтому смысл ее изучать будет, только если нет полноценного админского доступа в консоль устройства либо когда надо изучить апдейт. Поэтому не будем сейчас тратить время и вернемся к прошивке позже.
Как взломать веб камеру — итоги
Важный момент в том, что файл прошивки, предоставленный производителем на сайте, общий для всех шести IP-камер серии N. И вероятнее всего, часть найденных уязвимостей присутствуют и в других устройствах Microdigital, которых, как говорилось в начале статьи, «свыше 150 моделей»!
Также стоит упомянуть, что на конференции Positive Hack Days 8 был конкурс на взлом IP-камер — CAMBreaker. Среди подопытных числилась и эта модель. Одним из призеров конкурса был Иван Анисеня, который, как оказалось, еще в прошлом году нашел уязвимость внедрения произвольных SQL-запросов и с ее помощью обошел авторизацию на этой камере.
Остается животрепещущий вопрос: как защитить периметр от злоумышленников, если в нем есть подобная камера? Для обеспечения безопасности нужно:
- установить камеру в физически недоступном для злоумышленника месте;
- внимательно изучить документацию;
- отключить невостребованные сервисы, например FTP;
- сменить все пароли и, желательно, имена пользователей устройства;
- закрыть на стороне шлюза (чаще всего в роли шлюза выступает роутер) port-forwarding до IP-камеры.
Этим же списком рекомендаций можно руководствоваться при настройке любого другого умного устройства.