Разработчики систем умного дома обычно рисуют вот такую приятную картину: тяжелый рабочий день подошел к концу, вы стоите на пороге своего смарт-жилища; дверь автоматически открывается перед вами, распознав ваше лицо и сетчатку глаза.
В доме уже тепло, у входа горит свет, тихо играет музыка, и совсем недавно, буквально перед вашим приходом, закипел умный чайник.
Поужинав, вы расслабляетесь на диване, немного приглушив свет и включив телевизор — разумеется, прямо через смартфон. Жить в умном доме очень удобно — почти каждая повседневная мелочь либо автоматизирована, либо управляется со смартфона. Но не менее вероятен и другой сценарий. Вы подходите к двери, но она не открывается — система «забыла» ваше лицо и рисунок сетчатки. Конечно, вы понимали, что такое может случиться, поэтому у вас с собой всегда есть обычный ключ. Открыв дверь, вы неожиданно оказываетесь в темном помещении. Внутри холодно, потому что отопление не включилось за два часа до вашего прихода, как вы его запрограммировали.
Через несколько секунд начинает трезвонить умная сигнализация, считая, что в дом проник посторонний — хотя она должна была определить присутствие смартфона и отключиться. Наконец вы замечаете, что хоть что-то работает: телевизор включен. Но только показывает он странное: на экран выведено видео в реальном времени с умной камеры на потолке, следящей за вами. А за окном слышны сирены мчащихся к дому пожарных.
Да что же такое стряслось? Все просто — ваш умный дом кто-то взломал. Такого развития событий можно ожидать, если кто-то получит доступ к контроллеру вашего умного дома, который управляет всеми приборами в нем. Эксперт «Лаборатории Касперского» Владимир Дащенко показал на выставке Mobile World Congress 2018, что сделать это довольно просто.
Что такое контроллер умного дома?
Контроллер является нервным центром и мозгом вашего умного дома. Выглядит он как небольшая коробочка, иногда снабженная сенсорным дисплеем. По специальным протоколам контроллер обращается ко всем умным устройствам в доме, а они передают ему свои данные и рапортуют о выполнении команд.
Если контроллер без экрана, обычно им можно управлять через мобильное приложение или веб-сервис (либо обоими способами) и таким образом программировать умную технику. Контроллер позволяет синхронизировать все гаджеты в вашем доме и централизованно управлять ими. Это очень удобно с точки зрения пользователя, но это также означает, что злоумышленнику достаточно взломать всего одно устройство — контроллер, — чтобы захватить контроль над всей системой умного дома.
Как можно взломать контроллер умного дома
Наши эксперты протестировали контроллер умного дома одного производителя, чье имя мы не будем называть. Серьезных уязвимостей в коде они не нашли, однако обнаружили нескольких логических ошибок — и этого оказалось достаточно для того, чтобы взломать контроллер, причем сделать это удаленно, даже без доступа к сети Wi-Fi владельца системы умного дома. Управляя контроллером через веб-портал, пользователь отправляет ему команду синхронизации из веб-интерфейса. Файл конфигурации назначается контроллерам по их серийному номеру. Контроллер загружает соответствующий ему файл и изменяет настройки системы умного дома в соответствии с тем, что записано в этом файле.
Проблемы в этом механизме две. Во-первых, файл конфигурации передается через не защищенное соединение HTTP, так что файл могут подменить в процессе передачи. А во-вторых, серийный номер контроллера — единственный идентификатор получателя. Если злоумышленник знает серийный номер взламываемого контроллера, он может отправить ему свой файл конфигурации, и контроллер сразу же его примет.
Узнать серийный номер, как оказалось, не так уж сложно. Не все пользователи осознают, что серийный номер устройства является главным ключом к их системе умного дома и его надо хранить в тайне. Например, пользователи без задней мысли выкладывают на YouTube свои обзоры контроллеров и показывают в кадре все данные, необходимые для их взлома, в том числе серийные номера.
Кроме того, серийный номер можно банально угадать методом полного перебора. Имя пользователя и пароль к каждому контроллеру умного дома внесены в файл конфигурации. Имя пользователя хранится в открытом виде. Пароль, к счастью, зашифрован — однако шифрование не слишком надежное, так что его можно относительно быстро расколоть одной из утилит, доступных в Интернете. Кроме того, производитель не требует от пользователя создание сложных паролей, что дополнительно упрощает задачу взлома. С именем пользователя и паролем на руках хакер получает полный доступ к контроллеру и всем подключенным к нему устройствам. С такой властью он вполне может превратить жизнь несчастного владельца умного дома в ад.
Как избежать апокалипсиса в умном доме
Системы умного дома — явление относительно новое, пока должным образом не изученное и таящее в себе уязвимости, что, к сожалению, и подтвердило наше исследование (более того, мы уже демонстрировали это ранее, показав, как можно взломать различные умные устройства).
В данном случае производитель допустил ряд ошибок, которые позволили взломать его систему умного дома. Давайте еще раз перечислим их: файл конфигурации передается по HTTP без шифрования; при обновлении конфигурации аутентификация происходит только по серийному номеру; сведения об имени пользователя и пароле сравнительно легко заполучить.
Как же защитить свои смарт-устройства? Для рассмотренного контроллера решение выглядит достаточно просто:
Не показывайте никому серийный номер своего контроллера умного дома. Это главный ключ, открывающий все двери. В том числе и в буквальном смысле, если к контроллеру подключен умный замок.
Не покупайте бывшие в употреблении умные устройства. Их прошивку могли модифицировать предыдущие владельцы, оставив себе (а заодно и злоумышленникам) полный удаленный доступ к вашему умному дому.
При этом не стоит забывать, что хакеры могут взламывать контроллеры умных домов по случайным серийным номерам. Так что, увы, обезопасить себя на 100% нельзя. Ради собственной безопасности лучше подождать, когда контроллеры умных домов тщательно обследуют на наличие уязвимостей и залатают если не все, то как минимум наиболее очевидные дыры. Что касается той системы умного дома, о которой мы говорили в этом посте, производитель еще не закончил работу над обновлением безопасности, поэтому мы и не называем его имени.