The OpenNET Project / Index page

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

Выпуск OpenSSL 3.6.0 с поддержкой EVP_SKEY и устранением переполнения буфера

02.10.2025 10:00

Состоялся релиз библиотеки OpenSSL 3.6.0, предлагающей с реализацию протоколов SSL/TLS и различных алгоритмов шифрования. OpenSSL 3.6 отнесён к выпускам с обычным сроком поддержки, обновления для которых выпускаются в течение 13 месяцев. Поддержка прошлых веток OpenSSL 3.5 LTS, 3.4, 3.3, 3.2 и 3.0 LTS продлится до апреля 2030 года, октября 2026 года, апреля 2026 года, ноября 2025 года и сентября 2026 года соответственно. Код проекта распространяется под лицензией Apache 2.0.

Основные новшества:

  • Добавлена поддержка структуры EVP_SKEY (Symmetric KEY) для представления симметричных ключей как непрозрачных (opaque) объектов. В отличие от raw-ключей, представленных массивом байтов, в EVP_SKEY структура ключа абстрагируется и содержит дополнительные метаданные. Допустимо применение EVP_SKEY в функциях шифрования, обмена ключами и формирования ключей (KDF). Для работы с ключами EVP_SKEY добавлены функции EVP_KDF_CTX_set_SKEY(), EVP_KDF_derive_SKEY() и EVP_PKEY_derive_SKEY().
  • Добавлена поддержка верификации цифровых подписей на базе схемы LMS (Leighton-Micali Signatures), использующей хэш-функции и древовидное хэширование в форме дерева Меркла (Merkle Tree, каждая ветка верифицирует все нижележащие ветки и узлы). Цифровые подписи LMS устойчивых к подбору на квантовом компьютере и разработаны для заверения целостности прошивок и приложений.
  • Добавлена поддержка категорий безопасности NIST для параметров объектов PKEY (открытые и закрытые ключи). Выставление категории безопасности осуществляется через настройку "security-category". Для проверки уровня безопасности добавлена функция EVP_PKEY_get_security_category(). Уровень безопасности отражает стойкость к подбору на квантовых компьютерах и может принимать целые значения от 0 до 5:
    • 0 - реализация, не стойкая ко взлому на квантовых компьютерах;
    • 1/3/5 - реализация не исключает поиск на квантовом компьютере ключа в блочном шифре со 128/192/256-битным ключом;
    • 2/4 - реализация не исключает поиск на квантовом компьютере коллизии в 256/384-битном хэше).
  • Добавлена команда "openssl configutl" для обработки файла конфигурации. Утилита позволяет на основе многофайловой конфигурации с include-включениями сформировать сводный файл со всеми настройками.
  • В криптопровайдер FIPS добавлена поддержка детерминированного формирования цифровых подписей ECDSA (при одних и тех же входных данных генерируется одна и та же подпись), в соответствии с требованиями стандарта FIPS 186-5.
  • Повышены требования к сборочному окружению. Для сборки OpenSSL теперь недостаточно инструментария с поддержкой ANSI-C и требуется компилятор, совместимый со стандартом C-99.
  • Объявлены устаревшими функции, связанные со структурой EVP_PKEY_ASN1_METHOD.
  • Прекращена поддержка платформы VxWorks.

Исправленные уязвимости:

  • CVE-2025-9230 - уязвимость в коде дешифровки CMS-сообщений, зашифрованных с использованием пароля (PWRI). Уязвимость может привести к записи и чтению данных вне выделенного буфера, что позволяет инициировать аварийное завершение или повреждение памяти в приложении, использующем OpenSSL для обработки CMS-сообщений. Не исключается эксплуатация уязвимости для организации выполнения своего кода, но опасность проблемы снижает то, что шифрование CMS-сообщений с использованием пароля на практике применяется крайне редко. Кроме версии OpenSSL 3.6.0 уязвимость устранена в выпусках OpenSSL 3.5.4, 3.4.3, 3.3.5, 3.2.6 и 3.0.18. Проблема также исправлена в обновлениях библиотеки LibreSSL 4.0.1 и 4.1.1, развиваемой проектом OpenBSD.
  • CVE-2025-9231 - реализация алгоритма SM2 подвержена атаке по сторонним каналам, позволяющей на системах с 64-разрядными CPU ARM воссоздать закрытый ключ, анализируя изменение времени выполнения отдельных вычислений. Потенциально атака может быть проведена удалённо. Опасность атаки снижает то, что OpenSSL напрямую не поддерживает использование сертификатов с ключами SM2 в TLS.
  • CVE-2025-9232 - уязвимость в реализации встроенного HTTP-клиента, приводящая к чтению данных из области вне буфера при обработке в функциях HTTP Client специально оформленного URL. Проблема проявляется только при выставленной переменной окружения "no_proxy" и может привести к аварийному завершению приложения.


  1. Главная ссылка к новости (https://openssl-library.org/po...)
  2. OpenNews: Выпуск криптографической библиотеки OpenSSL 3.5.0
  3. OpenNews: Выпуск криптографических библиотек OpenSSL 3.4, LibreSSL 4.0, Botan 3.6 и Rustls 0.23.15
  4. OpenNews: Выпуск криптографической библиотеки Libgcrypt 1.11.0
  5. OpenNews: Выпуск криптографической библиотеки Botan 3.1.0
  6. OpenNews: Amazon опубликовал открытую криптографическую библиотеку для языка Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63979-openssl
Ключевые слова: openssl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (33) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (2), 10:52, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Уязвимость может привести к записи и чтению данных вне выделенного буфера
    > уязвимость в реализации встроенного HTTP-клиента, приводящая к чтению данных из области вне буфера

    Странно. Местные эксперты говорили, что если обложить все статическими анализаторами и валгриндами, то на C и C++ можно писать абсолютно безопасный по памяти код. 🤔 Что-то пошло не так?

     
     
  • 2.11, Аноним (11), 12:34, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Никто не обкладывал.
     
     
  • 3.37, Аноним (37), 17:48, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Никто не обкладывал

    Неужели опять те самые "ненастоящие сишники"?

     
  • 2.20, 12yoexpert (ok), 14:08, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а что, нельзя? раскрой мысль, очень интересно
     
     
  • 3.38, Аноним (37), 18:26, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > а что, нельзя?

    Можно конечно! Он вроде и не спорил. Не будут же опернетные эксперты врать.

    Но вопрос "что же пошло не так" остается открытым. Видимо, OpenSSL пишут какие-то бракоделы, которые не обложили бы санитайзерами.

     
  • 2.24, Аноним (24), 15:00, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Что-то пошло не так?

    То просто проггер не о чем попался. Вот настоящий сишник никогда не допустил этого.

     
     
  • 3.25, Аноним (25), 15:05, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Настоящий сишник что сферический конь, бывает только в вакууме
     
  • 2.26, Аноним (26), 15:09, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Никто и не обкладывал.
     

  • 1.3, Аноним (3), 11:23, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Заголовок из разряда кликбейт. Формально то оно так, но ничего вроде бы опасного для широких масс населения.
     
  • 1.5, Аноним (-), 11:30, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    kek_unwrap_key(): Fix incorrect check of unwrapped key size
    - if (inlen < (size_t)(tmp[0] - 4)) {
    + if (inlen < 4 + (size_t)tmp[0]) {

    Прям топ-кек))
    ЛуДшие погромисты опять не смогли правильно посчитать разрамер буфера! Никогда такого не было и вот опять))

    А ведь openssl обмазана санитайзерами по самое немогу.
    И что? Помогли вам эти санитайзеры?))

     
     
  • 2.9, Аноним (9), 11:50, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ты же не думаешь, что это случайно.
     
     
  • 3.16, Аноним (16), 13:54, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ты же не думаешь, что это случайно.

    Неужто вы намекаете, что все эти "случайные" ошибки настоящих сишников™ совсем не случайны???
    Но ведь они появляются практически в каждом проекте больше хеллоуволда!
    Это ж как так, вообще всех скупили, вообще все продались. Как страшна жЫть...

     
  • 3.21, Аноним (-), 14:08, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут вопрос скорее в другом.
    У опенССЛьки есть спонсоры [1]
    Среди которых довольно сурьезные компании платящие немаленькие деньги (It requires a commitment of $100,000 or more, which may be payable over multiple years. [2])

    Им вообще норм, что бракоделы овнячат бекдоры?
    Или они просто "в доле")

    [1] openssl-foundation.org/about/sponsors/
    [2] openssl-foundation.org/donate/premier/

     
     
  • 4.27, Аноним (9), 16:17, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Все понимают, в чьих интересах. Возможности отказаться у них нет.
     
     
  • 5.29, Аноним (29), 16:47, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зато есть LibreSSL, от группки известных паранойиков из OpenBSD.
    но пользоваться ей большинство не хотят...
     
     
  • 6.30, Аноним (-), 16:51, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Зато есть LibreSSL, от группки известных паранойиков из OpenBSD.

    А толку?
    "Проблема также исправлена в обновлениях библиотеки LibreSSL 4.0.1 и 4.1.1, развиваемой проектом OpenBSD."
    Дыры те же.

     
  • 3.39, Аноним (37), 19:02, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
     
  • 4.40, Аноним (9), 19:21, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
     
  • 5.41, Аноним (-), 19:28, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 6.43, Аноним (9), 19:40, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.14, Аноним (14), 13:12, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сама по себе эта конструкция уже хороша:

    (size_t)(tmp[0] - 4))

    Но это в той части, которой никто не пользуется и компиляцию которой вырубают.

     
     
  • 3.44, Аноним (44), 23:46, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Почему вообще арифметика указателей и операций с size_t с применением числовых констант не запрещена статическими анализаторами? Им мало примера Adobe Flash, который на 64-битную архитектуру портировать не смогли? Сегодня там int32, а завтра int64 или вообще структура неопределённого размера. И такие изменения фиг отследишь поскольку константа это просто число и никакой тревоги компилятора она не вызовет.
     
  • 2.33, Аноним (33), 16:59, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > ЛуДшие погромисты опять не смогли правильно посчитать разрамер буфера!

    это как раз те которые говорят, что им математика не нужна!

     

  • 1.10, Аноним (10), 12:01, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >  в реализации встроенного HTTP-клиента

    зачем HTTP клиент-то встраивать?

     
     
  • 2.13, oauth отстой (?), 13:11, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    может для oauth какого-нибудь. это yблюдство сейчас много куда пихают.
     
  • 2.17, OpenEcho (?), 13:54, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Official:
    > It's intended for testing purposes only

    Ну и например,
    - в кроне проверять сертификаты на удаленных сервисах
    - проверять поддержку протоколов

     
  • 2.34, Аноним (33), 17:00, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    так он ведь для тестов, а не продакшена.
     

  • 1.15, OpenEcho (?), 13:48, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Состоялся релиз библиотеки OpenSSL 3.6.0, предлагающей с реализацию протоколов SSL/TLS

    Давно уже пора переименовать в OpenTLS, т.к. от SSL поддержки там давно уже ничего не осталось

     
  • 1.31, Аноним (33), 16:55, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В отличие от raw-ключей, представленных массивом байтов, в EVP_SKEY структура ключа абстрагируется и содержит дополнительные метаданные.

    чтобы легче искать в памяти?

     
  • 1.32, Анонимусс (-), 16:56, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > требуется компилятор, совместимый со стандартом C-99

    Получается что они прям застряли в 90х
    Все те улучшения, которые попали в сишку хотя бы с с11, так и будут недоступны.

    Ради чего они продолжают хвататься за этот копролит?
    Даже ядро переехало на более новую версию языка!

     
     
  • 2.35, Oldi (?), 17:08, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Расчет ядра так себе аргумент
     
     
  • 3.36, Анонимусс (-), 17:28, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Расчет ядра так себе аргумент

    Почему?
    Ядро сложнее чем эта либа.
    Ядро работает на куче платформ, в том числе некроплатформ.
    Почему они должны использоваться именно с99?

     
  • 2.45, Аноним (45), 00:43, 03/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ради чего они продолжают хвататься за этот копролит?

    Действующие системы. В которых нет компиляторов с новым стандартом.

     

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



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

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