Периодически (примерно раз в несколько лет) в кибермире случается очередная нехорошая неприятность. Что-то совершенно неожиданно ново-зловредное. Для большинства из нас (вас) – это очередной нежелательный сюрприз. Мы с коллегами обычно между собой комментируем это так: «ну вот, дождались…». Мы видим и понимаем основные тенденции «дарк-интернета», представляем стоящие за ними силы и их мотивацию, можем прогнозировать векторы развития ситуации.
Короче, зловредные сюрпризы для меня и наших экспертов — в большинстве своём давно ожидаемые события, которые вот, наконец-то произошли. И тут настаёт тот неловкий момент, когда приходится выступать с речью на тему «Добро пожаловать в новую эпоху». Типа, «мы же вас давно предупреждали»…
Что на этот раз? Автомобильное!
Вчера в WIRED была опубликована статья, начинающаяся словами: «Я вёл машину на скорости 70 м/ч, когда эксплойт овладел системой управления» (70 м/ч ~= 110 км/ч). В сей статье описан успешный эксперимент по удалённому взлому «чересчур умной» машины: секюрити рисёрчеры разобрали электронную систему Uconnect Jeep Cherokee, нашли уязвимость и через Интернет сумели получить контроль над критическими функциями автомобиля. И это не единичный «лабораторный» кейс, а дыра в почти полумиллионе машин с Uconnect. Опппааа…
На самом деле, проблема безопасности «умных» машин не нова. На эту тему я шутил 1-го апреля 2002-го года. Дошутился :) Дурацкая шутка получилась :(
Да, всё логично и понятно. Производители борются за покупателя, а редкий покупатель сейчас ходит без смартфона с интернетами, так что машина (чем дороже, тем быстрее) потихоньку превращается в его придаток. Смартфона и интернета, а не пользователя – если вдруг кто-то неправильно понял ход моей мысли.
В смартфон выносят всё больше функций управления и диагностики автомобиля. Uconnect здесь не одинок – практически у каждого крупного производителям есть свой аналог разной степени продвинутости: Volvo On Call, BMW Connected Drive, Audi MMI, Mercedes-Benz COMAND, GM Onstar, Hyundai Blue Link и многие другие.
На практике оказывается, что в этой гонке вооружений, частенько игнорируются вопросы IT-безопасности.
Почему?
Во-первых, нужно быстрее-быстрее возглавить модное направление («а потом разберёмся»); во-вторых, удалённое управление – это перспективный бизнес (а план продаж горит!); в-третьих, среди автопроизводителей распространено мнение об автономности технологий – вроде как в электронную начинку машины ни у кого ни желания, ни мозгов не хватит залезть. Ну, конечно же, и то и другое регулярно случается.
С лирикой занончили. Теперь про физику явления. А с физической технической точки зрения происходит вот что.
В далёком-лохматом 1986г. компания Bosch разработала стандарт CAN, который регулирует обмен данными между различными устройствами (микроконтроллерами) напрямую, без центрального компьютера. Микроконтроллер центральной панели при нажатии на кнопку «Кондиционер» сообщает микроконтроллеру, ага, кондиционера, что водителя нужно охладить. Нажали на педаль тормоза – снова микроконтроллеры обменялись сигналами и тормозные колодки трутся об металл.
Иными словами, если верить достоверным источникам информации, электронная система современного автомобиля – это одноранговая компьютерная сеть, спроектированная ~30 лет назад. Несмотря на то, что с тех пор CAN пережил множество редакций и прокачек, он до сих пор не имеет никаких секюрити функций. Это понятно – какой дополнительной безопасности требовать, например, от COM-порта? CAN – это низкоуровневый протокол, «транспорт» и в его описании прямо сказано, что безопасность должны обеспечивать использующие его девайсы (приложения).
То ли мануалов не читают, то ли слишком увлеклись конкурентной борьбой, но факт налицо: [некоторые] автопроизводители навешивают на CAN всё больше контроллеров, не заботясь об основных правилах безопасности. На одну и ту же шину, не подразумевающую контроля доступа, вешают целиком внутреннюю систему управления всем-всем.
В действительности, как и в «большой» компьютерной сети в автомобилях необходимо разделение доверия к контроллерам. Штуки, которые общаются с внешним миром, будь то установка приложений в медиасистему из онлайн-магазина или слив диагностики производителю должны быть жёстко разделены с системой управления двигателем, безопасности и другими критическими блоками!
Если автомобилем управляет, скажем, Android-приложение, то любой специалист по безопасности с ходу перечислит десяток вариантов, как обойти защиту и перехватить управление. В данном случае автомобиль не сильно отличается от банковского счёта и к нему могут быть применимы схожие технологии взлома, например, с помощью банковских троянцев. Ну, и, конечно, остаётся вероятность взлома через уязвимость, как в случае с Jeep Cherokee выше.
Что вселяет оптимизм?
О проблеме знают и относятся к ней серьёзно. Сразу после публикации статьи в WIRED, в США немедленно организовались законодательные инициативы по стандартизации автомобильных технологий в области кибер-безопасности. Производители тоже по мере сил стремятся решить проблему: недавно американский Auto Alliance анонсировал создание «Центра обмена и анализа данных» (правда, не представляю, как они собираются работать без представителей секюрити-индустрии). Мы сами работаем с несколькими брендами (не скажу какими) — консультируем как сделать лучше.
В общем, есть свет в конце тоннеля. Однако…
… однако, описанная проблема безопасности не ограничивается автомобилестроением. CAN и ему подобные стандарты используются в промышленности, энергетике, транспорте, умных домах, даже в лифте в вашем офисном здании — везде, ВЕЗДЕ!! И везде одна и та же проблема: наращивание функциональности идёт без учёта безопасности! Главное побыстрее, покруче накрутить, привязать к смартфону, подключить к Интернету! А потом оказывается, что и самолётом можно управлять через его развлекательную систему.
Что делать?
Выход номер один – пересесть на старые, до-Интернет технологии типа винтовых самолётов с аналогово-механическими системами управления… Шутка, конечное же. Никто «вперёд в прошлое» не собирается, да уже и не сможет. Технологии прошлого тормозные, неудобные, низкоэффективные, да и… менее безопасные! Так что назад пути нет. Только вперёд!
Движение вперёд в эпоху полимеров, биотехнологий и цифр даёт просто сумасшедшие результаты – просто посмотрите вокруг себя и внутрь своих карманов. Всё движется, летает, доставляется, сообщается и обменивается на принципиально других скоростях по сравнению с предыдущими эпохами. Автомобили (да и другие транспортные средства) только часть этого.
Всё это действительно делает жизнь более комфортной и удобной, к тому же «цифра» закрывает многие старые проблемы надёжности и безопасности. Но, увы, одновременно создаёт и новые проблемы. И если вот так сломя голову рваться вперёд-вперёд, без оглядки, тяп-ляп «гнать функционал», то в конце концов мы придём к непредсказуемым и даже фатальным последствиям. Примерно как Цеппелины.
А ведь можно (и нужно!) сразу сделать красиво! Нужны отраслевые стандарты, новая, современная архитектура и ответственное отношение к разработке новых фичей с учётом безопасности.
Короче, очень интересное исследование и очень интересно как дальше будут развиваться дела. Кстати, на Black Hat в августе будет доклад авторов этого хака — надо обязательно послушать!
UPDATE: Наш подход к защите «умных» автомобилей.
PS: считайте меня ретроградом (хотя на самом деле я параноик :), но, какой бы крутой ни была «умная» начинка машины я бы первым делом её отключал… если бы была такая фича. Прямо кнопкой на панели – «ноу сайбер».
PPS: Хотя скоро, такими темпами, автомобили без подключения к «облаку» заводиться откажутся.
PPPS: А облако (и все подключенные к нему машины) быстренько взломают через какую-нибудь крайне важную функцию, типа распознавания лица владельца для автоматической подстройки зеркал и кресла.
PPPPS: а потом будут продавать авто бесплатно, но с привязкой к определённой сети заправок цифровой сети – и пихать попапы прямо на лобовое стекло. А на время рекламы перехватывать управление в автоматический гугл-режим.
PPPPPS: Кто еще чего добавит креативного по автобезопасности и вообще?