Хакеры выяснили, что никакой аутентификации на первой стадии не ведется — таким образом, злоумышленник может сформировать ответ, и сразу запустить вторую стадию с обменом ключами. Но основная уязвимость заключена именно во второй фазе.
Бельгийцы обнаружили, что для превращения исходной посылки в кодовый ответ используется устаревший алгоритм DST40. Его уязвимость еще в 2005 году показала команда профессора Эви Рубина из Университета информационной безопасности Джонса Хопкинса. Американцы тогда смогли полностью воссоздать работу алгоритма.
В процессе команда Рубина выяснила, что для вычисления правильного шифроключа нужно всего два раза отправить случайную посылку, оба раза записав сформированый беспроводным ключом ответ. Если пользоваться так называемыми «радужными таблицами» — списком заранее вычисленных пар «запрос-ответ» — то на подбор ключа уходит всего пара секунд. В свою очередь, сформировать «радужную таблицу» можно за несколько часов работы специальной платы-брутфорсера.
Специалисты из COSIC собрали макет средства для атаки, состоящий из недорогих компонентов: одноплатного компьютера Raspberry Pi 3 Model B+, радиомодулей Proxmark3 и Yard Stick One, а также мощной батареи. Доступ к радужным таблицам на удаленном диске осуществлялся по Wi-Fi.
Ниже вы можете посмотреть видео с примером атаки.