Ученые из университета штата Мичиган обнаружили серьезную уязвимость в
популярном открытом криптографическом пакете OpenSSL. Наличие этого бага
позволило им получить секретный ключ шифрования.
Особую пикантность ситуации придает то обстоятельство, что OpenSSL
используется практически повсеместно, в огромном количестве приложений и
операционных систем по всему миру. Особенно эффективным разработанный
специалистами метод атаки является против бытовых устройств и
медиапроигрывателей с функцией защиты от копирования.
Представитель разработчика OpenSSL на условиях анонимности сообщил, что
программисты уже работают над выпуском соответствующего патча, подчеркнув при
этом, что осуществить атаку в реальной жизни крайне непросто. Авторы метода
нападения в свою очередь подчеркивают, что устранить брешь можно добавлением в
шифруемый контент фрагментов случайных данных.
Вводя во время обработки закодированного контента небольшие искажения в блок
питания аппаратного устройства на базе процессора Spark и ОС Linux,
исследователи шаг за шагом получили 8800 сбойных сообщений, каждое из которых
содержало по 4 бита секретного ключа. Это стало возможным из-за недоработки в
открытой криптографической библиотеке, которая приводила к ошибке умножения при
аутентификации открытого RSA-ключа. Принуждая систему проводить умножение с
одним ошибочным битом, ученые каждый раз получали искомые 4 бита.
В итоге, обработав полученные данные на кластере, состоящем из 81 машины на
базе процессоров Pentium 4 с частотой 2,4 ГГц, исследователи за 104 часа собрали
полный 1024-битный ключ.
По данным исследовательской группы, аналогичный способ вполне реально
применить и к другим открытым библиотекам шифрования, например – к библиотеке,
которую предлагает Mozilla Foundation.
Ознакомиться с оригиналом работы можно
здесь.