Исследователь информационной безопасности пару недель назад объявил о наличии уязвимости в инструменте мониторинга вождения Progressive Snapshot. Эта уязвимость позволяет взламывать бортовую систему автомобилей, оснащенных подобным оборудованием. Snapshot — небольшое устройство, подключаемое через порт OBD-II. Американская страховая компания Progressive предлагает его установку своим клиентам. Назначение Snapshot — мониторинг стиля вождения, на основе собранных им данных аккуратным водителям страховщик дает скидки.
Для незнакомых с тематикой читателей поясним, что OBD-II — это стандартный для современных автомобилей разъем, обычно он расположен где-нибудь под рулевым колесом (в большинстве случаев внизу слева). Через этот порт подключаются все инструменты диагностики бортовых систем автомобиля при обслуживании в сервисе.
Если говорить упрощенно, компьютерная сеть вашего автомобиля состоит из различных датчиков, электронных управляющих блоков и специальной шины CAN. Электронных управляющих блоков в системе автомобиля может быть достаточно много. Они выполняют различные функции, но в основном служат для обработки сигналов от датчиков, отслеживающих все — от работы двигателя до срабатывания подушек безопасности, а также многих других параметров, о которых вы, вероятно, никогда и не слышали.
Управляющие блоки связаны между собой через CAN. То есть, к примеру, если вы во что-то врезались, датчики сообщают одному управляющему блоку о том, что машина попала в аварию, управляющий блок через шину CAN передает информацию другому управляющему блоку, который посылает команду выпустить подушки безопасности.
Инструмент мониторинга вождения @Progressive #Snapshot уязвим и открывает возможность взлома машины:
Tweet
В свою очередь вышеупомянутый порт OBD-II до недавних пор был единственной точкой входа в сеть CAN, через которую общаются все электронные элементы автомобиля. Новейшие исследования показывают, что теперь доступ к бортовой сети можно получить удаленно, по беспроводному подключению.
Кори Тван (Cory Thuen), исследователь, работающий в Digital Bond Labs, повозился с одним из устройств Snapshot, установленных на данный момент примерно в 2 млн автомобилей. С помощью некоторых не слишком простых, но и не чересчур сложных процедур ему удалось выяснить, как оно работает.
#Security Holes in @Progressive Dongle Could Lead to Car Hacks — http://t.co/4iWReok2F4
— Threatpost (@threatpost) January 19, 2015
Подключив девайс к собственному автомобилю Toyota Tundra (важно уточнить — речь идет не о каких-то чересчур умных автомобилях вроде Tesla, а о совершенно обычных машинах), Кори Тван продолжил исследование и в итоге выяснил, что в Snapshot не используются даже элементарные механизмы обеспечения безопасности: нет ни аутентификации, ни шифрования передаваемой информации, не говоря уже о более сложных вещах.
Устройства Snapshot «общаются» с сервером Progressive через сотовую сеть в режиме открытого текста. В свою очередь это означает, что атакующий может, к примеру, установить связь с поддельной базовой станцией и провести атаку типа «человек посередине».
Несмотря на такую серьезную уязвимость, устройство напрямую общается с CAN-шиной. Таким образом, есть большая вероятность, что через Snapshot хакер может удаленно внедрить вредоносный код в сеть, контролирующую срабатывание подушек безопасности или системы экстренного торможения. Тван почти смог внедрить код в сеть автомобиля. По заявлениям эксперта, ему просто стало интересно, есть ли в устройстве средства безопасности, способные его остановить.
Пока паниковать не стоит: в прошлом году я разговаривал о возможности внедрения кода в CAN-шину с директором по исследованиям безопасности автомобилей из IOActive — с известным исследователем автомобильных систем Крисом Валасеком (Chris Valasek), который заверил меня, что это легче сказать, чем сделать.
Конечно, есть гипотетическая возможность «приказать» автомобилю начать процесс автоматической параллельной парковки в тот момент, когда он мчится по шоссе. Однако во время езды электронные управляющие блоки обрабатывают тысячи других сигналов. Поэтому для срабатывания функции автоматической парковки (или другой подобной функции) атакующему необходимо обрушить на CAN-шину огромное количество сигналов, чтобы «перевесить» легитимные данные, поступающие с других датчиков.
Очередное, совсем уже явное, доказательство того, что хакнуть автомобиль очень легко: http://t.co/IRa4QwOvJZ
— Kaspersky (@Kaspersky_ru) November 10, 2014
Пару лет назад Валасек и его коллега Чарли Миллер (Charlie Miller) научились манипулировать механизмом блокировки машины из-за непристегнутых ремней безопасности, а также тормозной и рулевой системами, посылая массу поддельных сигналов с датчиков. Но это было очень трудоемкой задачей даже для таких светлых умов, как Миллер и Валасек, которые получили на это исследование грант от DARPA.
Хорошая новость, таким образом, состоит в том, что исследователей уязвимостей CAN-шины не так много, так что вероятность использования данной уязвимости злоумышленниками не так высока. С другой стороны, множество экспертов работают над исследованием безопасности браузеров. Взлом автомобилей, скорее всего, станет более привычным делом только тогда, когда производители машин начнут в массовом порядке внедрять браузеры и другие функции, требующие подключения к Интернету.