Умный дом, а в нем — взлом

Взлом камер видеонаблюдения через выключатель и другие интересные особенности умных домов.

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

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

Fibaro: облачная угроза

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

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

Там же хранился и пароль от панели администратора для удаленного управления домом. Он, в отличие от остальных ключей, защищен — преобразован в хеш. Однако если злоумышленник скачает вообще все резервные копии, хранящиеся в облаке Fibaro, то сможет угадать самые простые и часто встречающиеся пароли типа password1 — хеши для них будут одинаковыми.

Проникнув в панель администратора, взломщик, скорее всего, воспользуется одной из уязвимостей, позволяющих удаленно выполнить код и получить в системе права суперпользователя. Их обладатель ничем не ограничен и может творить в доме все, что его душе угодно. Забавно, что у хозяина дома прав суперпользователя нет — производитель решил, что так безопаснее (и во многом это правда).

Fibaro: вредоносное обновление

Другой сценарий атаки, обнаруженный нашими экспертами, пароля и вовсе не требует. Как мы уже упомянули, резервные копии можно не только скачивать с сервера Fibaro безо всякой авторизации, но и загружать на него. А еще облако позволяет отправить владельцу дома SMS или письмо.

То есть злоумышленнику достаточно создать вредоносную копию бэкапа, загрузить ее на сервер и убедить жертву установить «обновление». Это можно сделать, сымитировав сообщение от Fibaro. Даже если взломщик не угадает нужный формат письма, велик шанс, что ничего не подозревающая жертва все равно скачает зловредный бэкап — письмо приходит с адреса ******@fibaro.com, что внушает доверие. В результат взломщик, как и в первом случае, получит права суперпользователя.

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

Nest: выключатель для умной камеры

Другое исследование, проведенное американскими исследователями из колледжа Вильгельма и Марии, касается защищенности сразу двух платформ для умного дома: Nest производства компании Nest Labs, принадлежащей Google, и Hue, которую выпускает Philips. Обе платформы оказались уязвимы, причем каждая по-своему.

Разработчики Nest Labs уделили особое внимание защите охранных систем: сторонние приложения и устройства не могут менять настройки камер видеонаблюдения и других компонентов, отвечающих за безопасность дома, и не имеют права включать или выключать их. Точнее, они не могут делать этого напрямую.

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

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

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

Разрешение на управление режимами «дома / вне дома» есть у нескольких устройств, совместимых с платформой Nest. Исследователи решили проверить защищенность выключателя Kasa производства компании TP-Link. Помимо уже указанной возможности считывать и изменять параметр «вне дома», на выбор повлияла популярность приложения для дистанционного управления этим устройством — шутка ли, более миллиона установок из Google Play! Эксперты не промахнулись: при ближайшем рассмотрении выяснилось, что программа позволяет злоумышленнику перехватывать соединение с сервером и отправлять на него команды.

Проблема обнаружилась в процедуре авторизации, точнее, в том, как разработчики приложения позаботились о ее безопасности. Чтобы данные об аккаунте владельца не попали в чужие руки, программа и сервер перво-наперво создают зашифрованный канал, по которому будут их передавать. Для этого приложение отправляет запрос на сервер, а тот показывает ему SSL-сертификат — документ, подтверждающий, что серверу можно доверять.

Приложение проверяет подлинность сертификата, и если тот настоящий, по секрету сообщает серверу токен — информацию, по которой он вас опознает. Вот в эту-то проверку и закралась ошибка: приложение Kasa, как выяснилось, доверяло любому сертификату.

Исследователи так описали возможный сценарий взлома:

  1. Преступник выслеживает хозяина приглянувшегося дома и ждет, когда тот подключится к публичному Wi-Fi, например в кафе или метро.
  2. Приложение Kasa пытается соединиться с сервером.
  3. Войдя в ту же сеть, злоумышленник перехватывает соединение и показывает приложению свой SSL-сертификат.
  4. Приложение принимает преступника за сервер и передает ему токен, необходимый для аутентификации.
  5. Преступник, в свою очередь, демонстрирует этот токен настоящему серверу, и тот принимает его за приложение.
  6. Взломщик сообщает выключателю прямо из кафе, что хозяин вернулся.
  7. Параметр, отвечающий за присутствие хозяина, получает значение «дома».
  8. Цель достигнута — камера считывает параметр и прекращает запись, после чего преступник или его сообщники могут незамеченными проникнуть в дом.

Что самое неприятное — по словам исследователей, для такой атаки не требуется особой квалификации. Разработчики Kasa, как и создатели системы Fibaro, проявили сознательность и после обращения исследователей исправили баг.

Nest: проверка для галочки?

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

Однако на практике проверку сторонних устройств и приложений можно обойти. Так, разработчики Nest оценивают только те из них, которые имеют более 50 пользователей. А значит, уникальная программа, созданная злоумышленниками для атаки на конкретный умный дом, сможет к нему подключиться, минуя контроль. Продвинутым домушникам останется только убедить жертву скачать именно их приложение и дать ему нужные права.

Кроме того, даже у популярных приложений, не соответствующих требованиям Nest, есть шанс эту проверку пройти. Яркий тому пример — та самая программа Kasa, которая позволяла злоумышленнику подключаться к серверу от ее имени.

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

Hue: посторонним приложениям вход разрешен

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

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

Как выяснили исследователи, «нажимать» заветную кнопку может не только пользователь, но и… любая программа, уже подключенная к Hue. Дело в том, что «мозг» системы определяет, сработала ли кнопка, по значению одного из параметров блока управления. Это-то значение и могут менять приложения. Так что одна неблагонадежная программа, допущенная к платформе, способна бесконтрольно выдавать разрешение другим. И даже больше: с помощью того же параметра можно и отключать ранее присоединенные компоненты.

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

Как защитить умный дом

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

В любом случае, соблазниться преимуществами прогресса или поостеречься и не связываться с умным домом — решать вам. Но если решите, что умный дом вам необходим, то полезно будет минимизировать риск взлома. Вот как это сделать:

  • Поинтересуйтесь, что пишут о безопасности того или иного продукта, перед его покупкой. Обращайте внимание на то, как производитель реагирует на найденные уязвимости. Если компания ответственно относится к обнаруженным исследователями проблемам и быстро их устраняет — это хороший знак.
  • Остановившись на конкретном устройстве или приложении, не забывайте следить за новостями о его обновлениях и найденных уязвимостях. И своевременно устанавливайте все обновления, которые разработчики выпускают.
  • Защищайте устройства и панели управления длинным уникальным паролем. Тогда злоумышленник не сможет просто подобрать «ключик» к вашему дому.
  • Правильно настройте домашнюю беспроводную сеть.
  • Загружайте программы из официальных источников и не давайте им слишком много разрешений.
  • Подключаясь к публичному Wi-Fi, помните, что посторонние могут перехватить информацию, которую вы и ваши приложения отправляют в сеть — в том числе пароли и токены авторизации. Чтобы избежать этого, используйте защищенное подключение — VPN.
Советы