Исследователь Леннерт Ваутерс (Lennert Wouters) из Лёвенского католического университета обнаружил баг, который позволял взломать и изменить прошивку умного брелока бесключевого доступа (key fob) Tesla Model X. В итоге данная атака позволяла угнать чужой автомобиль за считанные минуты.
Интересно, что это уже третья попытка взлома Tesla от Ваутерса, и ранее исследователь обнародовал информацию о двух других атаках на электромобили компании в 2018 и 2019 годах.
Новая атака работает благодаря багу, найденному в процессе обновления прошивки брелоков Tesla Model X. Уязвимость можно эксплуатировать при помощи старого ECU (electronic control unit), оставшегося от другого автомобиля Model X.
Обычно модуль Bluetooth активируется в ключе Tesla только после смены батарейки. Ваутерс обнаружил, что беспроводную связь также можно включить из автомобиля — за это отвечает устройство Body Control Module. Следующая ошибка реализации — протокол связи, в котором подлинность сигнала от Body Control Module удостоверяется кодом на основе пяти последних цифр VIN-номера. А вот его можно просто подсмотреть: он, как у почти всех автомобилей, виден под лобовым стеклом.
Следующий этап: после подключения к брелку нужно переписать его прошивку. Она, в свою очередь, позволяет вытащить секретный ключ из аппаратного хранилища. Этот ключ позволяет атакующему открыть автомобиль. Но и только. Завести машину и уехать не получится. Для этого нужно, уже находясь в автомобиле, подключиться к CAN-шине и заставить встроенный Body Control Module прописать брелок злоумышленника как доверенный.
В итоге получилась очень красивая и достаточно сложная атака, драматическая версия которой показана в видеоролике. Ваутерс отмечает, что уязвимости ключей от Tesla мало чем отличаются от таковых в машинах других производителей, просто электрокары Илона Маска интереснее взламывать.
Что впечатляет, так это скорость взлома. При наличии нужного оборудования и навыков вся процедура занимает около 90 секунд. После этого в распоряжении угонщика окажется специальный радиокод для разблокировки Model X, который можно быстро установить на специальный брелок бесключевого доступа к авто.
Единственным минусом данного подхода можно назвать сравнительно громоздкую аппаратуру, необходимую для взлома. Впрочем, все оборудование можно спрятать в рюкзаке, сумке или другой машине. Также Ваутерс подчеркивает, что для атаки не потребуются какие-либо дорогостоящие комплектующие. Понадобятся только: Raspberry Pi (35 долларов) и CAN-shield (30 долларов), модифицированный брелок, старый ECU (100 долларов на e.b.a.y) и батарея LiPo (30 долларов).
Исследователь обнаружил данный баг летом текущего года и тогда же уведомил о проблеме инженеров Tesla. Отчет о баге был опубликован уже после того, как на прошлой неделе Tesla выпустила патч для всех своих автомобилей Model X. По словам Ваутерса, обновление прошивки 2020.48 исправляет найденную им проблему.