Все уязвимости

CVE-2024-6197

libcurl: ошибка освобождения памяти при разборе TLS-сертификата

Проверьте curl/libcurl 8.6.0–8.8.0, собранные с GnuTLS, wolfSSL, Schannel, Secure Transport или mbedTLS. Специальный сертификат сервера мог вызвать падение; исправление — 8.9.0.

Проверено 3 ноября 2026Medium по шкале curl, CWE-590. Обычно ожидается падение процесса; более тяжёлые последствия возможны только в особых условиях.

Кому нужно проверить

Администраторам и разработчикам сервисов, принимающих внешние TLS-соединения через curl/libcurl. Важна не только марка продукта, но и конкретная версия, способ установки, операционная система и конфигурация.

В чём риск

При разборе специально сформированного сертификата могла выполниться операция освобождения памяти вне heap. Современный malloc обычно завершает процесс; выполнение кода не заявлено как обычный результат.

Затронутые версии

Затронуты curl/libcurl 8.6.0–8.8.0 с GnuTLS, wolfSSL, Schannel, Secure Transport или mbedTLS. Уязвимый путь разбирает некорректную UTF-8 строку ASN.1 в сертификате TLS от сервера. Сборки с другими TLS-backend по advisory не затронуты.

Исправленные версии

Исправлено в curl/libcurl 8.9.0; допустимы патч или незатронутый TLS-backend. Для пакета ОС учитывайте backport.

Что сделать

  1. 1Проверьте версию и TLS-backend реальной libcurl, включая копии в контейнерах и приложениях.
  2. 2Сделайте резервную копию доверенных сертификатов и проверьте исправление на staging; не отключайте TLS-проверку.
  3. 3Установите 8.9.0 или пакет поставщика, пересоберите статические приложения и подготовьте откат образа.
  4. 4Временно ограничьте обращения к недоверенным TLS-серверам, если обновление задерживается; это не замена патчу.
  5. 5Перезапустите процессы со старой библиотекой, проверьте падения и не публикуйте core dump.

Путь от сертификата к сбою

Нужны подходящая версия, TLS-backend и некорректное поле сертификата.

  1. 1Сервер предлагает сертификат с некорректной ASN.1-строкой.
  2. 2Подходящий backend передаёт её libcurl.
  3. 3Парсер освобождает не принадлежащий heap буфер.
  4. 4Процесс обычно завершается; обновление закрывает путь.

Примеры конфигурации и проверки

Проверить версию и TLS-backend (shell)
curl -q --version

Локальная read-only команда без sudo. Она не делает запрос; встроенная libcurl приложения может отличаться от системного curl.

Как не подпустить ботов к сайту

BotProtection принимает запросы перед вашим сайтом и фильтрует автоматизированные обращения. Поэтому ботам сложнее добраться до уязвимого компонента и начать его проверять или атаковать, а вероятность успешной автоматизированной атаки становится значительно ниже. Это дополнительный слой защиты: обновление уязвимых компонентов, проверка журналов и реагирование на инциденты остаются обязательными.

Первоисточники

Снизьте шанс атаки до того, как бот дойдёт до сайта

Подключите BotProtection как фильтр перед сайтом: подозрительные автоматизированные запросы отсекаются до обращения к вашему серверу. Это значительно снижает вероятность автоматизированной атаки, но не исправляет саму уязвимость, поэтому обновление и настройка компонентов остаются обязательными.