Уязвимость в cURL/libcurl при использовании HTTP/3 и wolfSSL (CVE-2025-5025)

Команда разработчиков curl выпустила обновление для устранения уязвимости CVE-2025–5025, оцененной как средней (Medium Severity).
Уязвимость проявляется при выполнении трех условий:
1.Используется TLS-библиотека wolfSSL
2.Соединение устанавливается по протоколу HTTP/3 (QUIC).
3.Включена функция безопасности certificate pinning (пиннинг публичного ключа сертификата сервера).
Проверка пиннинга не выполнялась. Это означает, что злоумышленник может провести атаку 'Атака посредника' (MITM-атака) и представить любой действительный сертификат, curl примет соединение, несмотря на несоответствие ожидаемого ключа. Это позволяет злоумышленнику перехватывать и модифицировать зашифрованный трафик.
Ей подвержены системы, где:
1.Установлена уязвимая версия curl/libcurl (8.5.0 — 8.13.0).
2.cURL специально скомпилирован с поддержкой wolfSSL.
3.Приложения или скрипты активно используют HTTP/3 и certificate pinning.
Рекомендуется:
1.Обновить curl до версии до 8.14.0 или выше.
2.Не использовать wolfSSL (а использовать, например, OpenSSL) (узнать бэкенд можно командой curl -V)
3.Если вы не используете HTTP/3 или не настраиваете certificate pinning, риски минимальны.
4.Временные меры (если обновление невозможно) - избегать использования связки HTTP/3 + certificate pinning в curl, собранном с wolfSSL.
Критичность уязвимости оценивается как Средняя (Medium Severity). Ее реальное воздействие на инфраструктуру ограничено так как:
1.wolfSSL. Большинство стандартных пакетов curl в основных дистрибутивах Linux (Debian/Ubuntu, RHEL/CentOS/Fedora, openSUSE, Arch) скомпилированы с OpenSSL (или GnuTLS) по умолчанию, а не с wolfSSL. Уязвимость проявляется только при использовании wolfSSL.
2.Большинство серверов и клиентов работают на HTTP/1.1 или HTTP/2 (TCP+TLS), для которых пиннинг с wolfSSL работал корректно.
3.Специфичность использования Certificate Pinning: Certificate pinning — это мера безопасности, не включенная по умолчанию. Ее сознательно настраивают только в определенных, часто высокозащищенных сценариях. Обычные скрипты curl для скачивания файлов или API-запросов ее не используют.
4.Требуется MitM позиция: Эксплуатация требует, чтобы злоумышленник имел возможность перехватывать трафик целевой системы. Это сложно в защищенных сетях.
5.Злоумышленнику нужен сертификат, который клиент сочтет доверенным, что обычно требует компрометации CA или иной атаки на инфраструктуру PKI.
Кто может быть уязвим:
1.Пользовательские системы или серверы, на которых специально собран curl/libcurl с поддержкой wolfSSL (например, для встраиваемых систем, IoT, или из-за лицензионных предпочтений).
2.Приложения, использующие эту специальную сборку libcurl с wolfSSL, устанавливающие соединения по HTTP/3 и явно настроившие certificate pinning.
3.Пользователи нишевых дистрибутивов или специализированных встраиваемых платформ, где wolfSSL выбран в качестве TLS-бэкенда по умолчанию.
Рекомендации для администрирующих ОС Linux:
1.Уязвимость очень специфична и не касается стандартных конфигураций.
2.Проверить бэкенд: Выполнить curl -V | grep -i ssl. Если видите OpenSSL, GnuTLS, NSS и т.д. (но не wolfSSL), уязвимость вас не касается.
3. Обновите пакет curl до последней доступной версии в вашем дистрибутиве.
CVE-2025–5025 — это специфичная и ограниченная уязвимость средней степени серьезности. Ее реальное влияние на типичную инфраструктуру крайне невелико из-за редкости использования wolfSSL в стандартных дистрибутивах.
На данный день разработчикам cURL не известно о действительном эксплойте на данную уязвимость. Так же стоит отметить, что уязвимость касается именно утилиты cURL, а не библиотеки WolfSSL.
>>> CVE-2025–5025
