Исследование представляет интерес скорее своей сложностью, а не потенциальными последствиями. Для успешной атаки требуется физический доступ к устройству. Более того, нужно будет разобрать устройство и поработать паяльником, а сама атака занимает (в худшем случае) около 10 часов. В случае если речь идет об особо ценной информации, впрочем, и такие усилия могут быть оправданы. Но настоящая заслуга NinjaLab заключается в том, что они нашли уязвимость в особо защищенном и очень хорошо протестированном микроконтроллере компании Infineon, который используется и в контроллерах YubiKey, и во многих других устройствах.
На микроконтроллеры Infineon серии SLE78 и OPTIGA была успешно проведена атака по сторонним каналам. Под сторонним каналом понимается, например, потребляемый устройством во время работы ток. Если это энергопотребление измерять с высокой точностью, можно увидеть косвенные признаки работы алгоритма шифрования. В худшем (с точки зрения безопасности) сценарии потребление энергии меняется в зависимости от шифруемых данных. Либо меняется время, требуемое на проведение конкретной вычислительной операции, и эту разницу можно вычислить, опять же, из изменений энергопотребления. Бороться с такими утечками секретных данных можно как аппаратными, так и программными методами. В криптографии в целом стараются сделать так, чтобы время, затрачиваемое на вычисления, не зависело от входящих данных — таким образом получается, что защита от атак по стороннему каналу реализуется в софте.
Проблема была обнаружена в реализации алгоритма
Полностью сценарий атаки выглядит следующим образом: у пользователя без его ведома нужно похитить не только ключ YubiKey, но и остальные части «многофакторной» аутентификации к требуемому сервису, например логин и пароль. Затем потребуется много (тысячи) раз обратиться к сервису, наблюдая за работой контроллера Infineon в ключе YubiKey. Множество последовательных измерений из-за ошибки в коде в итоге позволят вычислить приватный ключ, а он, в свою очередь, позволит создать, по сути, клон устройства. К счастью, проблема была успешно решена, после того как NinjaLab раскрыла информацию пострадавшим вендорам весной этого года. Была пропатчена как стандартная библиотека Infineon, так и ключи YubiKey. Обновление прошивки до версии 5.7, выпущенное в мае этого года, заменяет стандартную библиотеку Infineon на собственную реализацию компании Yubico, которая этой уязвимости не подвержена.
Что еще произошло
Исследователи «Лаборатории Касперского» приводят в новой
Опубликовано подробное
Израильский исследователь Мордехай Гури