OpenSSL закрывает семь уязвимостей, включая опасную утечку данных в RSA KEM

OpenSSL

Криптографическая библиотека OpenSSL, фундаментальный компонент безопасности для миллионов веб-серверов, приложений и устройств по всему миру, выпустила срочные обновления. В новых версиях 3.6.2, 3.5.6, 3.4.5 и 3.3.7 устранено семь уязвимостей, одна из которых, оцененная как умеренно опасная, может приводить к утечке конфиденциальных данных. Это событие вновь привлекает внимание к критической важности своевременного обновления базовых инфраструктурных компонентов, от которых зависит безопасность интернета в целом.

Детали уязвимостей

Наиболее серьёзной проблемой в этом пакете стала уязвимость CVE-2026-31790, затрагивающая механизм инкапсуляции ключей RSA KEM RSASVE. Суть проблемы заключается в некорректной обработке ошибок в функции "RSA_public_encrypt()". Если операция шифрования завершается неудачей, код, вместо того чтобы вернуть ошибку, может ошибочно указать на успех. В результате вызывающая сторона получает доступ к буферу, содержащему неинициализированную или остаточную память процесса, и использует эти данные как валидный зашифрованный ключ. Фактически это означает, что при определённых условиях - а именно при использовании функции "EVP_PKEY_encapsulate()" с непроверенным открытым ключом RSA, предоставленным злоумышленником, - в сеть может утечь фрагмент памяти приложения. Этот фрагмент может содержать остатки паролей, сессионных ключей или других чувствительных данных от предыдущих операций. Важно отметить, что уязвимость затрагивает и модули, сертифицированные по стандарту FIPS (Federal Information Processing Standards), что делает её особо значимой для государственного сектора и регулируемых отраслей.

Второй по значимости, но помеченной как низкоопасная, стала уязвимость CVE-2026-31789 - переполнение буфера в куче при преобразовании данных в шестнадцатеричное представление. Проблема возникает при обработке специально сформированных сертификатов X.509 с чрезмерно большими значениями OCTET STRING в расширениях, например, в идентификаторах ключей. На 32-разрядных платформах расчёт размера необходимого буфера может привести к целочисленному переполнению, в результате чего выделяется недостаточно памяти. Последующая запись данных вызывает переполнение буфера в куче, что теоретически может привести к выполнению произвольного кода. Однако практическая эксплуатация осложнена необходимостью обработки сертификатов гигабайтного размера, что делает атаку маловероятной, но не невозможной.

Остальные пять уязвимостей также получили низкий уровень опасности, но их совокупность рисует картину системных проблем с обработкой граничных случаев и ненадёжных данных. Среди них: чтение за пределами буфера (CVE-2026-28386) в оптимизированном коде AES-CFB-128 для процессоров с поддержкой AVX-512, что может вызвать аварийное завершение программы; потенциальное обращение к уже освобождённой памяти (use-after-free, CVE-2026-28387) в клиентском коде DANE (DNS-based Authentication of Named Entities, система аутентификации на основе DNS) при работе с редкими комбинациями записей TLSA; а также три различные ошибки, связанные с разыменованием нулевого указателя (NULL pointer dereference). Последние возникают при обработке некорректно составленных списков отзыва сертификатов (CRL, CVE-2026-28388) и сообщений криптографического формата CMS (Cryptographic Message Syntax, CVE-2026-28389, CVE-2026-28390). Хотя эти уязвимости в основном ведут к отказу в обслуживании (Denial of Service), они затрагивают широкий спектр версий OpenSSL, включая давно поддерживаемые ветки 1.1.1 и 1.0.2, что подчёркивает необходимость внимания даже к, казалось бы, незначительным багам в столь распространённом ПО.

Контекст этой ситуации выходит за рамки простого списка исправлений. OpenSSL является краеугольным камнем современной криптографии в интернете, обеспечивая работу TLS-соединений, которые защищают данные при передаче. Любая уязвимость в этой библиотеке потенциально угрожает конфиденциальности и целостности коммуникаций по всему миру - от банковских транзакций до переписки в мессенджерах. Уязвимость CVE-2026-31790 особенно коварна, поскольку связана с утечкой данных, которая может остаться незамеченной. В отличие от аварийного завершения, которое сразу бросается в глаза, утечка фрагментов памяти - это тихая катастрофа, последствия которой могут проявиться спустя долгое время, когда данные уже будут скомпрометированы.

Для специалистов по информационной безопасности и системных администраторов это событие служит очередным напоминанием о критически важных практиках. Во-первых, необходим строгий и своевременный процесс управления обновлениями для всех инфраструктурных компонентов, особенно тех, что входят в цепочку поставок программного обеспечения. Во-вторых, в свете уязвимости в RSA KEM, разработчикам приложений, использующих эту функцию, стоит рассмотреть временное обходное решение: выполнять проверку открытого ключа с помощью функций "EVP_PKEY_public_check()" или "EVP_PKEY_public_check_quick()" перед вызовом "EVP_PKEY_encapsulate()". В-третьих, инцидент подчёркивает важность защиты цепочек поставок и использования аппаратных или изолированных сред для обработки критически важных криптографических операций, чтобы минимизировать риски, связанные с утечками памяти.

Выпуск исправлений для OpenSSL - это не просто техническая рутина, а значимое событие для всей экосистемы кибербезопасности. Оно демонстрирует непрекращающуюся работу сообщества по поиску и устранению скрытых изъянов в фундаментальных технологиях, а также служит тестом на зрелость для организаций, проверяя их способность быстро и эффективно реагировать на угрозы такого масштаба. В конечном итоге, безопасность цифрового мира зависит от этой кропотливой, часто остающейся за кадром работы, и от дисциплины тех, кто применяет её результаты.

Ссылки

Комментарии: 0