Уязвимости умных домов

Уязвимости умных домов

Технологии никогда не стоят на месте. Электронные приборы, смарт тв и умные лампочки уже не существуют в цифровом вакууме отдельно друг от друга. Уже сегодня сотни умных устройств объединяются в целые сети, которые представляют из себя системы умного дома.

Огромные счета за электроэнергию, пугающие отключения света и даже пожар - все это последствия взлома умных домов.

Все, что имеет выход в интернет - уязвимо. Достаточно распространенная фраза, которая имеет под собой множество оснований. Так давайте же рассмотрим слабые места умных домов и разберемся, как обезопасить свое жилище.

Немного теории

Во главе любой системы умного дома всегда стоит так называемый контроллер. Некий мозг, который соединяет в единую систему множество устройств, начиная кофеваркой и заканчивая датчиками регуляции температуры.

Если говорить о технической части передачи данных между устройствами, то в солянке из разных устройств нужен какой-то протокол передачи данных. Но как правило в умном доме используются сразу несколько протоколов. Например: WiFi, Bluetooth, ZigBee, Z-Wave.

Для каждого из этих протоколов есть разная поверхность применения, тот же Wifi используется для передачи данных видеокамер. Bluetooth для умных колонок. ZigBee для различных датчиков и Z-Wave используется как общий протокол передачи для разных вендоров.

Разведка

Думаю, вы уже догадались, что основным инструментом для поиска панелей входа для контроллеров или самих IoT устройств послужит небезызвестный Shodan и не менее известный Censys. Так же не стоит забывать про Google Dorks.

Точки входа

Первым делом злоумышленники будут искать имена вендоров, дабы найти какие-то публичные уязвимости или документацию, которая может помочь в раскрутке уязвимостей.

Вообще, абсолютно любой человек при наличии технических навыков может создать свой умный дом, банально связав «железки» разных компаний через самописное приложение или веб-интерфейс, поэтому на просторах интернета очень много небольших компаний, которые занимаются самостоятельным производством систем, не поставленных на промышленные рельсы.

О чем это говорит? Да о том, что частные лица с небольшим делом как правило хуже защищены от различных атак, с помощью которых можно лучше узнать техническую начинку внутренней сети дома.

Уязвимости

Если вся информация максимально собрана, если социальная инженерия уже отработала, то злоумышленники будут приступать к технической реализации уязвимостей. Далее мы рассмотрим атаки на самые популярные компоненты умных домов.

Атаки на интерфейс

Большая часть умных домов соединена с внешним интернетом посредством веб-интерфейсов и андроид приложений.

Вообще, стоит понимать, что такого рода интерфейс может быть как для контроллера, который объединяет все устройства, так и для отдельных компонентов системы. В целом, суть не меняется.

Когда вы увидели вендора и посмотрели доступные эксплоиты, вас могут встретить эксплоиты на веб-интерфейс, если же их нет, то преступники могут в ручном режиме ломать сайт. Самыми вероятными атаками будет брутфорс, Sql Injections и атаки на «корявый» логин внутрь системы. Думаю, последствия объяснять не нужно.

Умные лампочки

Умные лампочки в преобладающем большинстве работают по протоколу BLE(Bluetooth Low Energy)

Соответственно злоумышленник легко может просканировать диапазон устройств рядом, где и будут ваши лампочки. Понятное дело, что злоумышленнику нужно будет находиться в непосредственной близости, но что ему мешает делать сканирование возле дома?

Немного о том, как именно будет вестись сканирование:

Пример сканирования

С помощью утилиты hci мы можем просканировать наши устройства рядом. Умной лампы у меня не имеется, но устройства инструмент спокойно находит.

Далее нам очевидно нужно подключиться к устройству. В этом поможет gatttool.

Инструмент gatttool

После запуска нужно ввести команду connect, если подключение удачно, мы можем посмотреть список байтов, которые отвечают за функционал устройства. Ведь умная лампа не понимает ни русского, ни английского, она понимает только язык байтов(в виде 0x01a)

Т.е каждый из этих байтов означает команду для той или иной лампы. Возьмем значения из головы, пусть 0x01a включает лампу, 0x05b меняет цвет лампы с помощью шестнадцатеричного кода цвета, а команда 0x09c выключает лампу.

Чтобы послать эти команды лампе нам нужно вписать следующую команду в уже запущенный gatttool.

char-write-req 0x05b «COLOR_CODE»

При удачном исполнении команды цвет лампы изменится.

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

Как обезопаситься?

1) По возможности ознакомьтесь с технической документацией взаимодействия с лампочкой или же попросите знакомых вынести вердикт насчет безопасности

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

3) Не стоит забывать о репутации компании, которая продает лампы. Если компания допустила утечку, почему бы ей этого не сделать еще раз?

Умные замки

Очень часто умные замки связывают с владельцем дома посредством Android приложения.

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

Но что если злоумышленник обладает навыками хакера?

Естественно он начнет заниматься реверс инжинирингом Android приложения, где идет генерация открытых и закрытых ключей, а так же механизма обмена. То есть в теории злоумышленник может узнать алгоритм шифрования и создать копию такого же приложения, которое будет открывать этот замок. В интернете уже есть множество материалов раскрытых криптографических уязвимостей умных замков.

Так же имели место и случаи, когда API сервер компании предоставлял публичный доступ к конфиденциальным данным клиентов, и получить его можно было просто зная ID пользователя, который легко угадывался и перебирался. При этом на бэкенде даже не было лимита на запросы, что очень сильно могло облегчить работу хакерам при перечислении данных.

В целом комбинация реверс инжиниринга совместно со знаниями криптографии будет распространяться и на умные розетки.

И не стоит забывать про атаки на BLE, описанные в предыдущем пункте статьи.

Как обезопаситься?

1) Избегайте замков, на которые можно оказать физическое воздействие, так как бывали случаи, что замки спокойно спиливались болгаркой и взламывались с помощью мощного магнита.

2) Изучите открытые источники на наличие уязвимостей в криптографии того или иного умного замка, дабы не стать жертвой таких же умных воров.

Видеокамеры

Способов взаимодействия с IP-камерой может быть два. Первый способ - веб интерфейс. Второй - андроид приложение.

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

Если IP вашей камеры не изолирован, то всегда присутствует риск взлома. Да, интерфейс взаимодействия запрашивает пароль, но многие ли меняют дефолтный пароль от производителя, который легко гуглится?

Но может возникнуть и другой вопрос, как же злоумышленники будут искать камеры?

Конечно же старый добрый Shodan, с помощью которого ищутся случайные по региону камеры, но какова вероятность, что ваша камера не будет в этом списке? Например легко сработает такой дорк в Shodan netcam city:Moscow. Да, может вам и повезет, но зачем испытывать судьбу?

Как обезопаситься?

1) После покупки камеры удостоверьтесь, что поставщик камер и разработчик ПО грамотно относятся к безопасности клиентов и не допускают утечек файлов с облака.

2) Сразу же после настройки камеры в обязательном порядке поменяйте дефолтный пароль.

Заключение

«Умных» устройств в «умных» домах придумано уже безмерное количество. Но каждая атака на аппаратную часть вашей системы будет опираться на одни и те же принципы, которые слабо от вас зависят. Поэтому стоит придерживаться общих рекомендаций и никакой злоумышленник не позволит себе нарушить ваши личные границы в пределах вашего же дома.