Безопасность интернета вещей: прогресс, хайп и головная боль
Чтобы в будущем таких вопросов возникало меньше, сегодня я попробую сформулировать более-менее четкое определение IoT, исходя не из задач производства или рекламирования соответствующих устройств и систем, а скорее из необходимости их защиты. Кроме того, я приведу пару ссылок на интересные исследования специалистов «Лаборатории» по теме, постараюсь дать оценку ситуации с безопасностью «интернета вещей» в настоящий момент, и даже сделаю попытку заглянуть в будущее.
Источником информации о чудо-устройствах в этой статье является твиттер Internet of Shit — его автор уже год занимается отважной работой по разоблачению попыток разных производителей направить развитие вещей интернета в направлении полного провала. Впрочем, лучше воспринимать этот канал как современную техносатиру: пока мы ржем над 100500-м чайником с фейсбуком внутри, реальный IoT приходит к нам незаметно, и без спроса. В этом-то и заключается настоящая проблема.
В умном доме что-то пошло не так
Пожалуй главной новостью в контексте «интернета вещей» в этом году стало выключение хаба для умного дома Revolv. Разработанное одноименным стартапом, устройство поступило в продажу в 2013 году. Уже в 2014-м продажи были прекращены после того, как вендора выкупила Nest, входящая в конгломерат гуглокомпаний Alphabet. Проданные устройства поддерживались вендором, но 15 мая этого года по решению Nest буквально превратились в тыкву.
Относительно немногочисленные владельцы Revolv Smart Home Solution были в ярости, и это еще мягко сказано. Внимание СМИ привлекли как цветистые проклятия в сторону модного вендора умных решений, так и общие проблемы любых умных устройств. Дело даже не в том, что владельцы устройства лишились поддержки вендора и обновлений. Устройства просто перестали работать. Вообще. Совсем, так как выключили обязательную связь с инфраструктурой. Взамен вендор предложил полностью вернуть деньги, потраченные на устройство (300 долларов), но по сравнению с реальной ценой всей системы умного дома, в котором главное управляющее устройство вдруг перестало работать, это копейки.
Между тем, причиной такого провала стало как раз правильное желание разработчиков решить проблему с множеством различных технологий, на которых построены умные устройства. Само устройство с одной стороны подключалось к интернету по WiFi, с другой — взаимодействовало с зоопарком беспроводных устройств (лампочки, умные выключатели и прочее) с помощью различных беспроводных протоколов. На уровне железа Revolv постарался предусмотреть поддержку всех стандартов радиосвязи, а добавление поддержки конкретных устройств производилось регулярно через облако, там же обеспечивалось взаимодействие с управляющим приложением на смартфоне владельца.
Это выгодно отличало данную модель от конкурентов, которые работали с жестко заданным списком устройств. В идеальном мире это гарантировало возможность расширения умного дома с помощью новых устройств, даже если ранее поддерживаемые исчезали из продажи. Увы, разработчики не предусмотрели вероятность отключения собственной инфраструктуры. А зря. Это очень напоминает мне историю с отключением серверов поддержки Maemo — удачной, но не пережившей бизнес-турбулентность мобильной платформы Nokia. В том случае правда все обошлось: энтузиасты Nokia N900, более ранних и поздних устройств, собрали средства и перенесли серверы обновлений и раздачи софта на независимую площадку.
Попытки определиться с терминами
Вся эта история имеет прямое отношение к безопасности: низкая защищенность устройств «интернета вещей» вызвана, во-первых, их перманентным включением в сеть, во-вторых, сложностями вендоров с обновлением софта и поддержки инфраструктуры для растущего парка устройств. Примеров последнего масса, вот например обсуждение, как апдейт Google API ломает работу умного холодильника. Здесь самое место все-таки попробовать сформулировать, что такое интернет вещей, в контексте безопасности.
Это совокупность цифровых устройств, которые:
— Обмениваются данными по локальной беспроводной сети и/или через интернет.
— Работают автономно, зачастую круглосуточно, без регулярного взаимодействия с человеком (а то и вовсе без такового).
Мне кажется, дальнейшие уточнения избыточны и не нужны (ожидаю, что этот момент станет дискуссионным — что ж, велкам в комментарии). Фоторамка, зачем-то постоянная подключенная к сети через WiFi — это Internet of Things. Умный термостат и чайник — это оно. Телевизор со скайпом — да. Весы с твиттером, добавьте их в друзья. Беспроводные счетчики воды. Контроллеры солнечных батарей. Свечка с автоподжигом через смартфон.
World’s first — and hopefully fucking last- smart candle pic.twitter.com/6KLqMvz95K
— Internet of Shit (@internetofshit) September 21, 2016
Серьезно, свечка!
На самом деле, сюда надо добавить множество штук, которые представляют не будущее, а давно укоренившееся настоящее: банкоматы, терминалы оплаты, терминалы для покупки билетов, принтеры билетиков для электронной очереди. И далее везде: камеры видеонаблюдения, домашние и промышленные, скоростные камеры, контроллеры городского освещения и светофоров. Вот здесь наши эксперты приводят примеры уязвимости почти всех устройств такого типа. Да, между подъездной камерой наблюдения и умным чайником мало общего с точки зрения функциональности. С точки зрения безопасности разницы нет, так как выполняются два условия: автономность и доступность из интернета, напрямую или вприсядку через сложный, но поддающийся взлому механизм.
Безопасность IoT
Оценка безопасности интернета вещей (впрочем, как и любого другого класса устройств или технологий) делится на два направления: теоретическая (исследование теоретической уязвимости) и практическая (анализ реальных атак). Пример теории приведен выше. Вот здесь есть еще один технический анализ различных устройств, с такими ужасными, говорящими примерами:
CONFIG_*******_ROOT_PASSWORD=«sVGhNBRNyE57»CONFIG_*******_ROOT_PASSWORD=«GFg7n0MfELfL»
Типичная (уже закрытая) уязвимость в IP-камере.
Примеры для более специализированных устройств тоже есть: вот анализ безопасности датчиков движения на дороге. Сюда же можно добавить закрытую на прошлой неделе уязвимость в суперкарах Tesla (взлом через WiFi), и множество других примеров.
INBOX: Vibrating navigation belt pic.twitter.com/sF8gSvf1i9
— James Cook (@JamesLiamCook) September 21, 2016
С практикой все интереснее. Теслу и чайники пока никто не ломает ввиду их малочисленности: пока не набрана критическая масса устройств, открывающая неминуемый интерес со стороны киберпреступников. Отслеживать и анализировать точечные атаки, даже если они происходят, крайне сложно и для обычных компьютеров, а тут подавно. Тем не менее, примеры есть, но относятся они к устройствам, которые не все согласны причислять к IoT — это роутеры, IP-веб-камеры и умные телеприставки. Повторюсь, в предложенной модели причисления устройств к IoT с точки зрения безопасности эти девайсы, доступные уже многие годы, законно занимают почетное место.
Так вот, эти знакомые и понятные устройства наглядно демонстрируют ситуацию с безопасностью в IoT в целом. Дефолтные пароли, доступные снаружи интерфейсы управления с типичными веб-уязвимостями, не говоря уж о некоторых примерах дыр, позволяющих выполнять произвольный код. Результат понятен: десятки, а то и сотни тысяч постоянно включенных в сеть и никак не управляемых владельцами устройств объединены в ботнет, использующийся для DDoS-атак и других криминальных активностей, не говоря уж о краже приватной информации. В конце прошлой недели произошла одна из крупнейших DDoS-атак (целью стал блог эксперта Брайана Кребса) — 665 гигабит в секунду. Если предварительная оценка компании Akamai (которая так и не смогла отразить атаку) подтвердится, это будет заодно и крупнейшая атака ботнетом из IoT-устройств.
Светлое Мрачное Неизбежное будущее
Атака на полтерабита — это уже серьезно, но в контексте развития «интернета вещей» это мелочи. Развитие IoT предполагает, что сетевые устройства, работающие автономно, будут исчисляться не сотнями тысяч, а десятками миллиардов. Если к этому времени не будут введены новые методы их защиты (очевидно, лучшие, чем в примерах настоящего времени) и методы закрытия уязвимостей (соответственно, будет решен вопрос обновления софта), у нас будут проблемы. И, в отличие от настоящего времени, когда мы можем покупать интернет-холодильник, а можем и не покупать, выбора уже не будет. Для оценки масштаба приведу эту новость о заключении контракта на установке умных счетчиков газа и электричества — 53 миллиона устройств только в одной стране (и это планы уже трехлетней давности).
what could possibly go wrong with a face computer that records everything to snapchat pic.twitter.com/kciD5RsTWs
— Internet of Shit (@internetofshit) September 24, 2016
Казалось бы, что может пойти не так с компьютером в очках, который отправляет все в Snapchat?
Уязвимость, и, хуже того, невозможность обновления миллиардов устройств приведет к массе проблем, которые могут затронуть как ничего не подозревающих пользователей, так и повлиять на работоспособность критически важной инфраструктуры. Аргумент, что в индустриальных системах другой IoT мне не кажется надежным: во-первых рост объемов производства приведет к консьюмеризации, во-вторых — критерии автономной работы и сетевого подключения сохраняются и в этом случае, уже сейчас.
Какие подходы могут быть использованы для защиты? Пример устройства Revolv намекает на то, что рынок рано или поздно придет к двум-трем основным платформам, на которых будут строиться все IoT-системы, и хаоса станет меньше. Скорее всего так и будет, как это уже произошло с количеством платформ для смартфонов в конце нулевых или операционных систем для ПК в 90-х годах прошлого века. А если нет? Концепция безопасности вряд ли должна строиться исходя из законов рынка.
Предположу, что нынешняя концепция «в интернете никто не знает, что ты кофеварка» должна измениться. К интернету вещей должно быть иное отношение, чем к десктопу и смартфону, что сейчас не всегда выполняется. Отдельные, защищенные каналы связи, собственные надежные методы авторизации, и главное — использование технологий, максимально снижающих вероятность выполнения чужого кода. Не исключено, что это не вещи интернета придется защищать от злодеев, а проще будет защитить смартфоны и компьютеры от интернета вещей — там подходы понятнее. Наконец, так как, на 100% неуязвимых сложных систем не бывает, проблему быстрого и надежного обновления миллиардов устройств все-таки придется решить.
Возможно решение этого вопроса будет находиться на стыке самых современных технологий. Программироваться правильный IoT может вовсе не так, как это происходит сейчас с традиционными компьютерами. Возможно надо искать другой подход, не пытаясь затащить в 21-й век техногенное наследие века двадцатого. В общем, та еще будет задачка.
Disclaimer: Данная колонка основана на реальных событиях, но все еще отражает лишь частное мнение ее автора. Оно может совпадать с позицией компании «Лаборатория Касперского», а может и не совпадать. Тут уж как повезет.