В традиционную рубрику «что еще не так с IoT» на прошлой неделе добавилось научное исследование специалистов из американского Мичиганского университета и бразильского Федерального университета Пернамбуку. В рамках исследования было изучено 96 IoT-устройств для умного дома из списка самых продаваемых на площадке Amazon. Ученые проанализировали приложения для управления этими устройствами со смартфона, как вручную, так и с помощью автоматизированных инструментов анализа сетевых коммуникаций. Искали прежде всего уязвимости, позволяющие перехватить контроль над IoT-устройствами из-за недостаточно защищенного соединения.
Для 96 разных устройств удалось собрать 32 уникальных управляющих приложения. Из них половина либо не шифрует трафик при работе с IoT, либо использует фиксированные ключи шифрования. Соответственно, управлять устройствами может не только владелец, но и вообще кто угодно, с одной оговоркой — если есть доступ к локальной сети. Исследование в PDF находится здесь, краткое содержание на русском есть в этой новости. Мы же остановимся на наиболее интересных деталях работы.
В отличие от типового исследования по безопасности, как правило, сфокусированного на конкретной уязвимости конкретного устройства, научная работа бразильских и американских специалистов предлагает комплексный подход. Он теоретически может быть использован для оценки безопасности любых IoT-устройств, способных подключаться к Интернету и/или локальной сети. Подход получился следующий: ограничимся исследованием управляющих приложений и тем, как они взаимодействуют с собственно устройствами умного дома. Бреши в самих устройствах не принимаются во внимание — предполагается, что если клиентская часть уязвима, дальше можно и не копать, и так все достаточно плохо.
Схема работы типичного устройства, такого как камера видеонаблюдения, предполагает взаимодействие со смартфоном через контроллер — либо напрямую через локальную сеть, либо через облачную систему на стороне производителя. Для начала исследователи приобрели пять самых популярных устройств для умного дома и изучили их вручную. Проблемы были незамедлительно обнаружены — например, вот с такой удаленно управляемой розеткой TP-Link:
Первоначальная настройка устройства через приложение на смартфоне происходит вовсе без шифрования. При нормальной работе шифрование данных обеспечивается, но ключ шифрования — один для всех устройств серии. Чтобы подтвердить практические последствия такого подхода, исследователи выложили видео, подтверждающее возможность перехвата контроля над устройством. Исследование пяти устройств позволило сформулировать вопросы, ответы на которые в дальнейшем находились с помощью (в основном) автоматизированной системы анализа:
Ответы для четырех избранных приложений получились следующие:
Kasa Smart — это приложение для устройств TP-Link, таких как приведенная выше умная розетка. LIFX — производитель удаленно управляемых лампочек. WeMo разрабатывает компания Belkin, а e-Control — компания BroadLink, в обоих случаях речь идет об управлении освещением и электроприборами, телевизорами и бытовой техникой через ИК-порт, а также об охранных системах. В случае с WeMo исследователи обнаружили отсутствие шифрования и какой-либо авторизации при связи с устройствами в локальной сети. Перехватывая сетевые пакеты, ученые смогли создать скрипт, который управляет умными устройствами Belkin без ведома владельца.
Общие результаты исследования: 16 приложений либо не используют шифрование, либо шифруют при помощи фиксированного ключа. 18 приложений общаются с устройствами по локальной сети, 14 взаимодействуют только через сервер производителя. 6 приложений используют уязвимые протоколы связи. Издание The Register запросило комментарии у упомянутых в исследовании компаний. Комментарий производителя умных лампочек LIFX сводится к тому, что компания ищет баланс между безопасностью и удобством, и это, в общем, ключевая проблема IoT-устройств.
Коммуникации напрямую между устройствами (или контроллером) и смартфоном по локальной сети защищают пользователя от внезапного банкротства производителя или прекращения поддержки устаревших устройств. Если в такой ситуации ваш IoT завязан на облако, вы оказываетесь один на один с неработающей железкой. Но довод производителей об отсутствии необходимости защищать коммуникации в локальной сети — тоже спорный. Локальную сеть могут взломать, также существует возможность скомпрометировать устройство, имеющее к ней доступ. Многочисленные уязвимости роутеров, настройки в которых можно менять открытием правильной ссылки в браузере, это подтверждают.
В исследовании приводятся примеры «правильных» устройств, в которых взаимодействие с управляющим приложением происходит только через облачную систему, с необходимым уровнем шифрования передаваемых данных. Это продукция компаний Nest и EZVIZ. В ней также реализован относительно безопасный способ первичной настройки устройства. В первом случае это рандомный код авторизации, выводимый на экран устройства. Во втором случае уникальная строка авторизации нанесена на устройство в виде QR-кода, который надо просканировать.
Приоритеты, расставленные исследователями в данной работе, могут быть оспорены, равно как и представления о правильном подходе к защите коммуникаций систем умного дома. Как минимум исследование еще раз подтверждает, что сознательно понижать защиту каналов связи даже в локальной сети не стоит. Последствия могут быть серьезные, особенно если небезопасные методы использует умная сигнализация или подключенный к Интернету дверной замок.
Disclaimer: Мнения, изложенные в этом дайджесте, могут не всегда совпадать с официальной позицией «Лаборатории Касперского». Дорогая редакция вообще рекомендует относиться к любым мнениям со здоровым скептицизмом.
Для 96 разных устройств удалось собрать 32 уникальных управляющих приложения. Из них половина либо не шифрует трафик при работе с IoT, либо использует фиксированные ключи шифрования. Соответственно, управлять устройствами может не только владелец, но и вообще кто угодно, с одной оговоркой — если есть доступ к локальной сети. Исследование в PDF находится здесь, краткое содержание на русском есть в этой новости. Мы же остановимся на наиболее интересных деталях работы.
В отличие от типового исследования по безопасности, как правило, сфокусированного на конкретной уязвимости конкретного устройства, научная работа бразильских и американских специалистов предлагает комплексный подход. Он теоретически может быть использован для оценки безопасности любых IoT-устройств, способных подключаться к Интернету и/или локальной сети. Подход получился следующий: ограничимся исследованием управляющих приложений и тем, как они взаимодействуют с собственно устройствами умного дома. Бреши в самих устройствах не принимаются во внимание — предполагается, что если клиентская часть уязвима, дальше можно и не копать, и так все достаточно плохо.
Схема работы типичного устройства, такого как камера видеонаблюдения, предполагает взаимодействие со смартфоном через контроллер — либо напрямую через локальную сеть, либо через облачную систему на стороне производителя. Для начала исследователи приобрели пять самых популярных устройств для умного дома и изучили их вручную. Проблемы были незамедлительно обнаружены — например, вот с такой удаленно управляемой розеткой TP-Link:
Первоначальная настройка устройства через приложение на смартфоне происходит вовсе без шифрования. При нормальной работе шифрование данных обеспечивается, но ключ шифрования — один для всех устройств серии. Чтобы подтвердить практические последствия такого подхода, исследователи выложили видео, подтверждающее возможность перехвата контроля над устройством. Исследование пяти устройств позволило сформулировать вопросы, ответы на которые в дальнейшем находились с помощью (в основном) автоматизированной системы анализа:
- Используется ли «дефолтный» ключ шифрования, прописанный в прошивке?
- Используется ли прямое соединение между устройством и смартфоном по локальной сети?
- Рассылают ли приложение и устройство broadcast-сообщения по сети?
- Используется ли заведомо уязвимый протокол связи?
Ответы для четырех избранных приложений получились следующие:
Kasa Smart — это приложение для устройств TP-Link, таких как приведенная выше умная розетка. LIFX — производитель удаленно управляемых лампочек. WeMo разрабатывает компания Belkin, а e-Control — компания BroadLink, в обоих случаях речь идет об управлении освещением и электроприборами, телевизорами и бытовой техникой через ИК-порт, а также об охранных системах. В случае с WeMo исследователи обнаружили отсутствие шифрования и какой-либо авторизации при связи с устройствами в локальной сети. Перехватывая сетевые пакеты, ученые смогли создать скрипт, который управляет умными устройствами Belkin без ведома владельца.
Общие результаты исследования: 16 приложений либо не используют шифрование, либо шифруют при помощи фиксированного ключа. 18 приложений общаются с устройствами по локальной сети, 14 взаимодействуют только через сервер производителя. 6 приложений используют уязвимые протоколы связи. Издание The Register запросило комментарии у упомянутых в исследовании компаний. Комментарий производителя умных лампочек LIFX сводится к тому, что компания ищет баланс между безопасностью и удобством, и это, в общем, ключевая проблема IoT-устройств.
Коммуникации напрямую между устройствами (или контроллером) и смартфоном по локальной сети защищают пользователя от внезапного банкротства производителя или прекращения поддержки устаревших устройств. Если в такой ситуации ваш IoT завязан на облако, вы оказываетесь один на один с неработающей железкой. Но довод производителей об отсутствии необходимости защищать коммуникации в локальной сети — тоже спорный. Локальную сеть могут взломать, также существует возможность скомпрометировать устройство, имеющее к ней доступ. Многочисленные уязвимости роутеров, настройки в которых можно менять открытием правильной ссылки в браузере, это подтверждают.
В исследовании приводятся примеры «правильных» устройств, в которых взаимодействие с управляющим приложением происходит только через облачную систему, с необходимым уровнем шифрования передаваемых данных. Это продукция компаний Nest и EZVIZ. В ней также реализован относительно безопасный способ первичной настройки устройства. В первом случае это рандомный код авторизации, выводимый на экран устройства. Во втором случае уникальная строка авторизации нанесена на устройство в виде QR-кода, который надо просканировать.
Приоритеты, расставленные исследователями в данной работе, могут быть оспорены, равно как и представления о правильном подходе к защите коммуникаций систем умного дома. Как минимум исследование еще раз подтверждает, что сознательно понижать защиту каналов связи даже в локальной сети не стоит. Последствия могут быть серьезные, особенно если небезопасные методы использует умная сигнализация или подключенный к Интернету дверной замок.
Disclaimer: Мнения, изложенные в этом дайджесте, могут не всегда совпадать с официальной позицией «Лаборатории Касперского». Дорогая редакция вообще рекомендует относиться к любым мнениям со здоровым скептицизмом.
SmnTin
Судя по поставленным в исследовании критериям, broadcast-сообщения по сети не приветствуются. Тогда несколько вопросов к экспертам. Чем же они так плохи? Можно ли реализовать их использование безопасно? И какие есть другие способы искать друг друга в локальной сети, если у нас DHCP?
mk2
Учитывая, что в этом исследовании также не приветствуется общение по локальной сети, то искать друг друга они вообще не должны — оба идут на сервер производителя, а он их соединяет.
Я, правда, такой подход совершенно не одобряю — во-первых, мы намертво привязываемся к производителю, и после прекращения им поддержки устройства получаем тыкву. И во-вторых, мы получаем задержку отклика всегда и невозможность работать без интернета/соединения с сервером производителя.