Аппаратные токены считаются одним из наиболее надежных вариантов для защиты двухфакторной аутентификации, в отличие от ненадежных SMS-сообщений с одноразовыми кодами, которые можно перехватить самыми разными способами. Даже компания Google уже начала отказываться от использования SMS и ратует за использование токенов. Но, к сожалению, даже такие устройства тоже нельзя считать абсолютно защищенными, что и продемонстрировали исследователи на конференции DEF CON, прошедшей в Лас-Вегасе на прошлой неделе.
«Аппаратные токены – это шаг вперед. Это здорово. Они предоставляют уровень защиты, с которым не может соперничать ничто. Но нужно помнить о железе. Если нам говорят, что этот волшебный токен безопасен, это не значит, что нужно безоговорочно этому верить», — рассказывает ИБ-специалист Джо Фицпатрик (Joe FitzPatrick), который вместе со своим коллегой Майклом Лейбовицем (Michael Leibowitz) представил доклад на конференции.
На GitHub можно свободно найти исходный код для эмуляции устройства YubiKey посредством Arduino, однако исследователи не ограничились только лишь этим. Вместо «голой» платы с эмуляцией, они постарались воссоздать физический аппаратный ключ YubiKey, назвав получившийся результат DoobieKey. В ходе презентации специалисты показали, что серверы YubiKey распознают эту подделку как легитимный токен YubiKey.
И хотя DoobieKey выполнен достаточно грубо (см. фото выше), и вряд ли такая подделка сможет кого-либо обмануть, на презентации Лейбовиц продемонстрировал и более убедительный 3D-макет для печати.
Что именно предлагают исследователи? Атаку на цепочку поставок. «Вы модифицируете устройства до того как их получат пользователи», — объясняет Фицпатрик. На практике это означает, что атакующие могут изготовить партию поддельных токенов DoobieKey и, к примеру, распространить их среди посетителей какой-нибудь ИБ-конференции, или даже продать под видом настоящих. После того как пользователи привяжут к DoobieKey, например, свои аккаунты Gmail, атакующие будут иметь копию их токенов.
В ответ на предостережения исследователей представители компании Yubico сообщили, что подобные атаки действительно могут представлять угрозу и напомнили о том, что поэтому приобретать железо и софт следует только у проверенных поставщиков. Представители компании заверили, что Yubico контролирует свою цепочку поставок и гарантирует безопасность продаваемых устройств.
Также Фицпатрик и Лейбовиц продемонстрировали атаку на RSA-токены (устройства, которые отображают на встроенном экране специальный одноразовый код, который пользователь должен сообщить сайту или сервису для завершения аутентификации). Подделать такие гаджеты тоже не составило труда: фальшивые RSA-токены могут сообщать одноразовые коды злоумышленникам посредством Bluetooth. Конечно, в данном случае атакующему придется находиться где-то неподалеку от жертвы.
Исходные коды этой разработчики, а также спецификации плат для поддельных RSA-токенов исследователи обещают опубликовать на GitHub в ближайшем будущем. То есть в данном случае злоумышленнику понадобится изготовить кастомную плату и дополнительно приобрести bluetooth-модуль. «Но самым сложным этапом будет приведение кода в работоспособное состояние», — отмечает Фицпатрик.
Фото: Joseph Cox