Дата публікації: 8 червня 2018
Цього року форум Positive Hack Days відвідало більше 5000 чоловік, велика частина яких - фахівці з інформаційної безпеки. Відмітна риса відвідувачів форуму - нестандартний склад розуму і сверхінтуіція за багатьма технічними питань. Всі ці якості можна було проявити в хакерських конкурсах, які приготували організатори, одним з таких був конкурс по злому IP-камер CAMВreaker . Чи вдалося комусь впоратися з усіма поставленими випробуваннями - в нашій статті.
Кожен учасник міг приміряти на себе роль зломщика камер відеоспостереження і спробувати отримати несанкціонований доступ до різних IoT-пристроїв і розібрати вихідний код прошивок в пошуках різних вразливостей. Нагородою за всі старання були цікаві і корисні призи від організаторів.
Підготовка до конкурсу почалася за два місяці до початку заходу, і чесно скажемо - було непросто. Вона складалася з декількох етапів:
- Вибір камер для конкурсу.
- Ревізія камер на версійність прошивок, програмне забезпечення, пропоноване для роботи з ними, а також їх працездатність.
- Отримання прошивок (вбудоване програмне забезпечення) кожної камери. Воно здійснювалося декількома методами:
- Перехоплення прошивки під час поновлення камери через додаток Android.
- Завантаження з офіційного сайту виробника.
- Через підключення до пристрою за допомогою Telnet.
- Через підключення до пристрою за допомогою інтерфейсу UART. Для довідки: протокол UART (universal asynchronous receiver transmitter), або УАПП (універсальний асинхронний приймач) - найстаріший і найпоширеніший на сьогоднішній день фізичний протокол передачі даних. Найбільш відомий протокол сімейства UART - RS-232 (в народі - COM-порт).
- Підключення программаторов до Flash-чіпам, встановленим всередині камери, за допомогою затиску-прищіпки без випоювання електронних компонентів пристрою.
- І, мабуть, самий трудомісткий процес вилучення дампов - випоювання і вичитування чіпів за допомогою програматора.
- Налаштування статичних IP-адрес і даних аутентифікації на самих пристроях.
- Проектування, побудова локальної мережі для стенду конкурсу.
- Налаштування і конфігурація стенду в demo-середовищі.
Ось кілька фотографій, зроблених в процесі підготовки:
Процес вилучення даних з чіпа з допомогою програматора CH341A Плата однієї з камер Програматор і його друзі :) Деякі чіпи все ж довелося випоювати через особливості схеми включення
Стенд Відбувся з жорсткого каркаса, на якому були встановлені 11 камер і кілька світчей. Для учасників була розгорнута бездротова мережа, а також передбачений один вільний свитч з патчкордами для підключення до мережі.
стенд Великий брат стежить за ... братами поменше
FTP-сервер працював на що тримає всю мережу роутере, з якого учасники могли отримати прошивки камер. Адреси, облікові дані, серійні номери та інші дані камер були надбанням громадськості - зайти можна було на будь-яку з них.
Hackers @ work Потрапивши в мережу і отримавши прошивки, учасники відразу ж починають дослідження
У перший день змагання ми запропонували конкурсантам вирішити непросте завдання: знайти вразливість в камері, написати advisory по її експлуатації або працює PoC-експлойт. На жаль, значна частина учасників відсіялась, як тільки дізналася про таких високих вимогах. Але JTAGulator просто так не виграєш!
Більш стійкі годинами вивчали прошивки, сидячи на зручних пуфиках. Файли прошивок були доступні у доступний з локальної мережі конкурсу FTP-сервер. Для дослідження прошивок в пошуках вразливостей в хід йшли різні інструменти: IDA Pro, Binwalk, Radare2, Strings, Wireshark, Tcpdump, Sqlmap, Burp Suite. «Не варто прогинати мережу під мінливий світ, хай краще вона прогнеться під нас», - можливо, так вирішили учасники конкурсу, генеруючи сотні гігабайт трафіку в процесі досліджень.
О 13:37 - дуже вдалий « хакерської »Час - принесли пару кег холодного пива.
Охолодитися під час змагання можна було пивом
Після такої дозаправки процес злому анітрохи не зменшив оберти. Кілька учасників форуму, спочатку заманенних пивом, в результаті віддали перевагу залишитися в компанії пристроїв для зовнішнього і внутрішнього відеоспостереження. Проте в кінці першого дня ми не отримали жодного репорт.
Учасники конкурсу
Зате в другій день прийшли відразу два репорт про знайдені вразливості. Першу з них в камері vstarcam-c16s знайшов ІБ-фахівець з Новосибірська Павло Черепанов. Друга вразливість була виявлена іншим фахівцем, Іваном Анісеней. У веб-формі аутентифікації камери MDC-N4090W-8 він знайшов сліпу SQLi, яка дозволяє впровадити SQL-команди в параметр id і за допомогою техніки сліпий експлуатації витягти з бази даних всі логіни і паролі (в тому числі суперкористувача root).
Виробники камер повідомлені про всі знайдені вразливості, а все розроблені учасниками експлойти так і залишаються 0-day.
Павло та Іван отримали свої заслужені призи.
Нагородження: Павло Черепанов Нагородження: за Івана Анісеню приз отримав Георгій Зайцев