На криптографической конференции CHES в Амстердаме студент Лёвенского католического университета Леннарт Вутерс рассказал о найденной уязвимости, которая позволяет злоумышленникам вскрывать автомобили и заводить мотоциклы всего лишь за пару секунд. Проблема касается электромобилей Tesla, «гибридов» Karma, суперкаров McLaren и даже мотоциклов Triumph — все они используют систему бесключевого доступа британской компании Pektron на американском чипе Texas Instruments модели TMS37F128.
Протокол радиообмена между автомобилем и ключом происходит в два этапа: автомобиль постоянно излучает сигнал с идентификатором автомобиля, а если ключ находится поблизости, он принимает сигнал и отправляет ответ. Получив его, автомобиль отправляет на ключ сгенерированный 40-битный код, который ключ шифрует встроенным алгоритмом и отправляет в ответ уже 24-битный код. Автомобиль параллельно выполняет ту же операцию, сверяет собственный код с полученным с ключа и, если они совпадают, открывается.
Принцип работы радиообмена в системах бесключевого доступа не является секретом, но бельгийцы выяснили, что на первой стадии отсутствует аутентификация, поэтому хакеры могут сформировать код на своём устройстве и сразу инициировать второй этап — обмен с автомобилем. Однако главная проблема заключается в том, что для шифрования кода в указанных автомобилях и мотоциклах до сих пор используется алгоритм DST40, уязвимость которого была раскрыта ещё в 2005 году.
Для вычисления верного кода нужно всего лишь дважды отправить автомобилю случайный запрос, записав при этом ответ. Далее нужно воспользоваться кодовыми таблицами для обращения криптографических хеш-функций, которые называют «радужными». Их применяют для вскрытия паролей, преобразованных при помощи сложнообратимой хеш-функции, а также для атак на симметричные шифры на основе известного открытого текста. На подбор верного ключа уходит не более пары секунд.
Формируются кодовые таблицы всего за несколько часов работы специальной платы-брутфорсера. Для осуществления хакерской атаки и вскрытия автомобиля требуются простые и дешёвые инструменты: бельгийцы воспользовались портативным компьютером Raspberry Pi 3 Model B+ и парой радиомодулей — Proxmark3 и Yard Stick One. Кодовые таблицы были заранее загружены в «облако», доступ к которому осуществлялся при помощи мобильного интернета. В эксперименте принимал участие электрокар Tesla Model S.