The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В Libgcrypt/GnuPG выявлена уязвимость, позволяющая воссоздать RSA-ключи

05.07.2017 10:27

Разработчики пакета GnuPG выпустили обновление библиотеки Libgcrypt 1.7.8, предлагающей набор компонентов, лежащих в основе механизмов шифрования, применяемых в GnuPG. В новой версии устранена опасная уязвимость (CVE-2017-7526), выявленная группой исследователей под руководством Дэниэла Бернштейна (Daniel J. Bernstein), известного эксперта в области криптографии и создания защищённого ПО, разработавший такие проекты, как qmail, djbdns, Ed25519, Curve25519 и ChaCha20-Poly1305.

Уязвимость позволяет восстановить содержимое закрытого ключа RSA через проведение атаки по сторонним каналам (side-channel attacks) на базе техники FLUSH+RELOAD. Суть проблемы в том, что злоумышленник, имеющий возможность запустить свой код на многопользовательской системе на которой в текущий момент используется закрытый RSA-ключ, может пошагово смоделировать содержимое процессорного кэша, в котором оседают данные вычислений с использованием закрытого RSA-ключа, оставляемые в памяти в процессе возведения в степень при помощи метода скользящего окна (left-to-right sliding window, в основе шифрования RSA лежит операция возведения в степень по модулю большого числа).

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

Если ранее известные методы атак на основе утечки информации, сохраняемой в процессе работы алгоритма скользящего окна, позволяли восстановить лишь 33% содержимого ключа при 5-разрядном окне и 40% при 4-разрядном, то новый метод получает достаточно данных для полного восстановления 1024-разрядного ключа RSA. Теоретически метод может применяться и для 2048-битовых ключей, но атака будет эффективна лишь для 13% ключей и потребует значительных вычислений. Наиболее вероятным объектом атаки является приложение GnuPG, в котором начиная с версии 2.0 базовая логика шифрования вынесена в библиотеку Libgcrypt.

Разработчики Libgcrypt отмечают, что с практической точки зрения атака через указанную уязвимость маловероятна, так как при наличии у злоумышленника непривилегированного доступа к системе, скорее всего для получения RSA-ключа или компрометации системы он воспользуется более простыми способами, такими как ожидание новой локальной уязвимости и её эксплуатация до установки обновления. При этом не исключается возможность проведения атаки на системах виртуализации для определения RSA-ключа другого виртуального окружения, работающего на том же сервере.

Обновления пакетов с устранением уязвимости уже доступны для Debian, Ubuntu, FreeBSD, Fedora. Пока не выпущены обновления для SUSE и openSUSE. RHEL и CentOS проблеме не подвержены, но уязвимость затрагивает пакеты с Libgcrypt из репозитория EPEL.

  1. Главная ссылка к новости (http://www.mail-archive.com/in...)
  2. OpenNews: Критическая уязвимость в генераторе случайных чисел GnuPG и Libgcrypt
  3. OpenNews: Техника определения RSA-ключей через анализ изменения шума от компьютера
  4. OpenNews: Обновление GnuPG с устранением уязвимости, позволяющей восстановить закрытые RSA-ключи
  5. OpenNews: Атака по подбору RSA-ключей
  6. OpenNews: Разработан метод атаки на уязвимость в DRAM-памяти с использованием JavaScript
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/46812-libgcrypt
Ключевые слова: libgcrypt, gpg
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (12) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, anonus (?), 10:57, 05/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +19 +/
    >Разработчики Libgcrypt отмечают, что с практической точки зрения атака через указанную уязвимость для получения RSA-ключа маловероятна

    Ну хоть не not a bug.

     
     
  • 2.2, Аноним (-), 11:01, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +13 +/
    Они правы, для  проведения подобных атак нужны идеальные условия, которые обычно достигаются только при специальной демонстрации атаки. В обычной системе кроме gpg крутится ещё куча всякого софта и "шумы" в кэше  от его активности сводят на нет вероятность успешной атаки.
     

  • 1.3, X4asd (ok), 11:13, 05/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    и как они это смогли исправить?

    складывается ощущение -- будто бы уязвимость в самой идеалогии использования процессором кэша. (уязвимость в ЦПУ-и-его-друзьях)

     
     
  • 2.4, Аноним (-), 11:23, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Размывают содержимое ключа при сохранении рандомным мусором.

    https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commit;h=a9f612def8

     
  • 2.5, КО (?), 13:01, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Никак, они усложнили атаку, до "практически нереально". Правда и до этого оно было в том же статусе. :)
     

  • 1.6, Аноним (-), 13:08, 05/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > RHEL и CentOS проблеме не подвержены

    Любопытная интерпретация резолюции WONTFIX.

     
     
  • 2.9, Аноним (-), 14:16, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Любопытные у тебя фантазии
     
     
  • 3.11, Аноним84701 (ok), 14:39, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Любопытные у тебя фантазии

    Так прояснили бы в двух словах. Вроде бы в таком (проблеме не подвержен) случае должен быть традиционный "NOTABUG", а не:
    > https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2017-7526
    > Status: CLOSED WONTFIX

     
     
  • 4.17, Аноним (-), 21:47, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    На федору плевать, но пошёл по ссылке. Похоже, у вас ссылка репорт о CVE, а в багтрекере федоры он тут: https://bugzilla.redhat.com/show_bug.cgi?id=1466267

    >This is an automatically created tracking bug!  It was created to ensure that one or more security vulnerabilities are fixed in affected versions of fedora-all.

    И статус, внезапно, "ON_QA".

     
     
  • 5.20, Аноним (-), 23:39, 05/07/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > в багтрекере федоры он тут

    Так речь не о федоре, а о RHEL.

     

  • 1.15, Ivan_83 (ok), 15:58, 05/07/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это ДЖБ так тролит всё что не его 25519.
    Они все подвержены тайминг атакам.

    А скользящее окно - я думал оно только в эллиптической крипте для умножения точки на скаляр, да и то оно уже не самый лучший метод, довольно давно.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру