Системы с открытым кодом в IT
Поиск по сайту
Полезная реклама на сайте
Полезная реклама на сайте
Авторизация

https://gnupg.org/share/logo-gnupg-light-purple-bg.pngВ опубликованном на прошлой неделе выпуске криптографической библиотеки Libgcrypt 1.9.0, которая используется в GnuPG, выявлена легко эксплуатируемая критическая уязвимость, позволяющая добиться переполнения буфера при попытке расшифровки специально оформленных данных, на стадии до верификации или проверки цифровой подписи.

Библиотека предоставляет функции для использования в сторонних приложениях различных криптоалгоритмов, включая симметричные шифры (AES, Arcfour, Blowfish, Camellia, CAST5, ChaCha20, DES, GOST28147, Salsa20, SEED, Serpent, Twofish), алгоритмы хэширования (MD5, RIPE-MD160, SHA-*, SHAKE256, TIGER-192, Whirlpool), алгоритмы аутентифицированного шифрования (HMAC-*, CMAC-*, GMAC-*, Poly1305-*), шифрование с использованием публичных ключей (RSA, Elgamal, DSA, ECDSA, EdDSA, ECDH). Новая ветка полностью совместима на уровне API и ABI с веткой 1.8.x (для использования новой версии не требуется пересборка программ).

Уязвимость затрагивает GnuPG и другие приложения, использующие уязвимую версию Libgcrypt.

CVE-идентификатор уязвимости ещё не присвоен. Проблема устранена в обновлении Libgcrypt 1.9.1. Разработчики проекта GnuPG рекомендуют как можно скорее прекратить использование версии 1.9.0, которую уже успели включить в состав репозиториев Fedora 34 (Rawhide) и Gentoo. В ветке 1.8.x уязвимость не проявляется.

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

Изменение сводилось к оптимизации, заменяющей рекурсивный вызов функции на использование buf_cpy для копирования буферов. Переполнение возникало из-за некорректного определения размера буфера для расшифровываемого блока.

Источник