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