Учёные взломали 1024-битное шифрование RSA в криптобиблиотеке GnuPG

Материал из Викиновостей, свободного источника новостей
Перейти к: навигация, поиск

4 июля 2017

Логотип GnuPG

Группа учёных из США, Нидерландов и Австралии обнаружила серьёзную уязвимость в криптографической библиотеке, реализованной в GnuPG, позволившую им взломать 1024-битное шифрование RSA и извлечь секретный ключ для дешифровки данных.

GNU Privacy Guard (GnuPG, GPG) — свободная программа для шифрования информации и создания электронных цифровых подписей. Используется на многих операционных системах — от Linux и FreeBSD до Windows и macOS.

Проблема, получившая идентификатор CVE-2017-7526, присутствует в библиотеке Libgcrypt20, уязвимой к локальной атаке по сторонним каналам Flush+Reload. Как выяснили специалисты, для вычислений Libgcrypt20 использует метод скользящего окна (англ. sliding window) по схеме слева направо, что позволяет получить больше информации о битах показателя степени, нежели схема справо налево, и таким образом полностью извлечь RSA ключ.

По словам экспертов, разработанная ими атака по сторонним каналам также может использоваться против RSA-2048.

По словам разработчиков Libgcrypt, на практике существуют более простые методы получить доступ к закрытым ключам, чем продемонстрированный исследователями. Тем не менее, на виртуальных машинах (ВМ) данная атака может использоваться одной ВМ для кражи закрытых ключей с другой ВМ.

Уязвимость устранена в выпуске Libgcrypt 1.7.8. Более подробно с исследованием ученых можно ознакомиться в публикации: Sliding right into disaster: Left-to-right sliding windows leak.

RSA (аббревиатура от фамилий Rivest, Shamir и Adleman) — криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи факторизации больших целых чисел. Криптосистема RSA стала первой системой, пригодной и для шифрования, и для цифровой подписи. Алгоритм используется в значительном количестве криптографических приложений, в том числе PGP, S/MIME, TLS/SSL, IPSEC/IKE и других.

Flush+Reload — атака по сторонним каналам на кэш, когда отслеживается доступ к данным в совместно используемых страницах памяти.

 

Источники[править]


 
Комментарии[править]
Викиновости, Викимедиа РУ и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.