ИБ-специалист Леннерт Воутерс (Lennert Wouters) из Лёвенского католического университета обнаружил баг, который позволял взломать и изменить прошивку умного брелока бесключевого доступа (key fob) Tesla Model X. В итоге данная атака позволяла угнать чужой автомобиль за считанные минуты.
Интересно, что это уже третья попытка взлома Tesla от Воутерса, и ранее исследователь обнародовал информацию о двух других атаках на электромобили компании в 2018 и 2019 годах.
Новая атака работает благодаря багу, найденному в процессе обновления прошивки брелоков Tesla Model X. Уязвимость можно эксплуатировать при помощи старого ECU (electronic control unit), оставшегося от другого автомобиля Model X. Такой ECU можно без труда приобрести в интернете, в том числе на eBay или в магазинах, которые специализируются на продаже подержанных запчастей для Tesla.
Воутерс пишет, что злоумышленники могут модифицировать старый ECU таким образом, чтобы обмануть брелок жертвы и заставить его поверить, что он подключается к сопряженному с ним автомобилю. После останется лишь отправить вредоносное обновление прошивки на брелок посредством BLE (Bluetooth Low Energy).
«Поскольку механизм обновления не защищен должным образом, мы смогли взломать брелок по беспроводной связи и получить полный контроль над ним. Впоследствии мы сумели получить действительные сообщения о разблокировке, чтобы позже разблокировать автомобиль с их помощью», — гласит отчет.
В итоге атака выглядит следующим образом:
- аткаующий приближается к владельцу автомобиля Tesla Model X (как минимум на 5 метров, чтобы старый модифицированный ECU мог поймать сигнал брелока жертвы);
- злоумышленник отправляет вредоносное обновление прошивки брелоку. Для выполнения атаки потребуется около 1,5 минут, но хакер может отойти на расстояние около 30 метров, что позволит ему достаточно дистанцироваться от жертвы и не привлекать внимание;
- после взлома брелока злоумышленник извлекает него сообщения о разблокировке автомобиля;
- эти сообщения о разблокировке используются для проникновения в машину жертвы;
- в машине атакующий подключает старый ECU к диагностическому разъему автомобиля (обычно он используется техническими специалистами Tesla для обслуживания авто);
- этот разъем используется для сопряжения с автомобилем собственного брелока хакера, который позже будет использован для запуска двигателя. На выполнение этой фазы атаки также нужно несколько минут.
Единственным минусом данного подхода можно назвать сравнительно громоздкую аппаратуру, необходимую для взлома. Впрочем, все оборудование можно спрятаться в рюкзаке, сумке или другой машине. Также Воутерс подчеркивает, что для атаки не потребуются какие-либо дорогостоящие комплектующие. Понадобятся только: Raspberry Pi (35 долларов) и CAN-shield (30 долларов), модифицированный брелок, старый ECU (100 долларов на eBay) и батарея LiPo (30 долларов).
Исследователь обнаружил данный баг летом текущего года и тогда же уведомил о проблеме инженеров Tesla. Отчет о баге был опубликован уже после того, как на прошлой неделе Tesla выпустила патч для всех своих автомобилей Model X. По словам Воутерса, обновление прошивки 2020.48 исправляет найденную им проблему.