Добавить в корзинуПозвонить
Найти в Дзене

curl 8.16 вышел: важные заплатки и новые опции

Если вы когда‑нибудь скачивали файл по ссылке, дергали API из скрипта или собирали микросервис, шанс велик, что под капотом работал curl. 10 сентября 2025 года команда проекта выпустила версию 8.16 — это уже 270‑й релиз, который закрыл две уязвимости и добавил полезные мелочи для ежедневной работы. Главное — закрыты две проблемы. Первая связана с обработкой пути cookie: при экзотичном стечении обстоятельств безопасный cookie мог быть перезаписан менее безопасным с тем же именем. Вторая касается реализации WebSocket: curl неверно обновлял маску исходящих фреймов. Для большинства пользователей это звучит академично, но для продакшн‑систем означает ровно одно — обновляться надо как можно скорее. Если у вас в инфраструктуре крутятся скрипты с curl или приложения на libcurl (а это практически любой современный софт, взаимодействующий с сетью), откладывать патчинг — плохая идея. В компаниях с жёсткими SLA даже небольшая уязвимость может обернуться простоем или дополнительными затратами на ау
Оглавление

curl 8.16 вышел: важные заплатки и новые опции

Если вы когда‑нибудь скачивали файл по ссылке, дергали API из скрипта или собирали микросервис, шанс велик, что под капотом работал curl. 10 сентября 2025 года команда проекта выпустила версию 8.16 — это уже 270‑й релиз, который закрыл две уязвимости и добавил полезные мелочи для ежедневной работы.

Что исправили по безопасности

Главное — закрыты две проблемы. Первая связана с обработкой пути cookie: при экзотичном стечении обстоятельств безопасный cookie мог быть перезаписан менее безопасным с тем же именем. Вторая касается реализации WebSocket: curl неверно обновлял маску исходящих фреймов. Для большинства пользователей это звучит академично, но для продакшн‑систем означает ровно одно — обновляться надо как можно скорее.

Если у вас в инфраструктуре крутятся скрипты с curl или приложения на libcurl (а это практически любой современный софт, взаимодействующий с сетью), откладывать патчинг — плохая идея. В компаниях с жёсткими SLA даже небольшая уязвимость может обернуться простоем или дополнительными затратами на аудит.

Какие фишки добавили

  • В консольной утилите появились опции follow и out‑null. Первая упрощает управление перенаправлениями, вторая — позволяет «сбрасывать» вывод в никуда для тестов и пайплайнов.
  • В libcurl добавились две новые публичные функции — это расширяет сценарии встраивания библиотеки в ваши приложения.
  • Под капотом — десятки правок и оптимизаций: 17 изменений, 453 коммита и 260 закрытых багов за 56 дней. В выпуске участвовали 76 контрибуторов, из них 39 — новички. Для опенсорса это отличный темп.

Почему это важно обычным пользователям

curl и libcurl живут не только в терминалах. Их используют менеджеры загрузок, клиенты облачных хранилищ, SDK крупных сервисов, обновлялки ПО и даже некоторые мобильные приложения. Обновление снижает риски утечек и сбоев, а новые опции упрощают жизнь администраторам и разработчикам: меньше костылей в пайплайнах, чище логи и стабильнее автотесты.

Как обновиться быстро

  • Linux: чаще всего достаточно обновить систему стандартным менеджером пакетов. В корпоративных репозиториях обновление может приехать с задержкой — проверяйте политикам безопасности.
  • macOS: если ставили через Homebrew, обновите пакет и убедитесь, что в PATH у вас именно новая версия.
  • Windows: многие используют winget или Chocolatey — обновление в пару команд. Если curl у вас «вшит» в сборку, проверьте скрипты и пути к бинарям.

Проверить текущую версию можно одним простым вызовом в терминале: curl —version. Там же вы увидите, с какими протоколами собрана ваша сборка: HTTP/2, HTTP/3, FTP, SFTP и т. д. Это полезно, если вы работаете с прокси, нестандартными сертификатами или, например, отправляете почту через SMTP.

На что обратить внимание при переходе

  • Тесты. Прогоните критичные запросы: авторизацию с cookie, длинные цепочки перенаправлений, загрузку больших файлов и работу через прокси. Так вы заранее поймёте, не сломались ли внутренние скрипты.
  • libcurl. Если у вас своё приложение на C/C++ или вы используете биндинги для Python, PHP или Perl, проверьте совместимость API. Команда проекта традиционно бережно относится к обратной совместимости, но локальные обёртки и плагины лучше пересобрать.
  • Сборочные контейнеры. Обновите базовые образы: свежий curl в CI/CD — это меньше сюрпризов при интеграционных тестах и в проде.

Контекст: почему curl развивается так быстро

Проект — один из столпов опенсорса: он поддерживает десятки протоколов (HTTP/1.x–3, FTP/SFTP, SMTP/IMAP/POP3, LDAP, SMB, RTSP и другие), работает на всех платформах и при этом остаётся лёгким и предсказуемым. Такой темп релизов позволяет закрывать дыры и быстро добавлять востребованные возможности, не заставляя пользователей ждать годами.

Итог

curl 8.16 — это аккуратный, но важный апдейт: закрыли две уязвимости, подкрутили удобство команды и расширили API библиотеки. Для домашнего пользователя это минус потенциальные проблемы при загрузках и работе с веб‑сервисами. Для бизнеса — ещё один плюс к безопасности и стабильности пайплайнов. Обновляйтесь раньше, чем о вашем curl вспомнят злоумышленники.

Ключевые слова: curl 8.16, libcurl, обновление безопасности, уязвимости, WebSocket, cookie, HTTP3, загрузка файлов, DevOps, CI/CD