Команда разработчиков curl выпустила экстренное обновление, устраняющее уязвимость CVE-2025-10966 в реализации SFTP-протокола через бэкенд wolfSSH. Проблема связана с отсутствием механизмов проверки подлинности удалённого хоста, что создаёт условия для атак типа "человек посередине" (MITM) при передаче данных.
Детали уязвимости
Уязвимость затрагивает версии curl с 7.69.0 по 8.16.0 включительно. В обновлённой версии 8.17.0 поддержка wolfSSH полностью удалена из кодовой базы проекта. Разработчики присвоили проблеме низкий уровень опасности, поскольку уязвимый компонент изначально позиционировался как экспериментальный и практически не использовался в рабочих средах.
Технический анализ показывает, что при установке SFTP-соединений через wolfSSH-бэкенд curl не выполнял критически важные процедуры верификации: проверку известных хостов (known host verification) и подтверждение подлинности ключей сервера (host key verification). Эти функции были намеренно пропущены при первоначальной интеграции wolfSSH в 2020 году в ожидании будущих доработок. Однако отсутствие сообщений об ошибках и запросов на улучшение функциональности свидетельствовало о минимальном практическом использовании данного бэкенда.
Особенностью архитектуры curl является возможность компиляции только с одним SSH-бэкендом. WolfSSH, будучи наименее распространённым вариантом, изначально поддерживал исключительно SFTP-протокол без реализации SCP-функциональности. Документация curl явно указывала на неполноту реализации и наличие неуспешных тестов, что дополнительно ограничивало его применение в production-средах.
Классификация уязвимости по Common Weakness Enumeration (CWE) соответствует 322 - "Обмен ключами без аутентификации субъектов". Потенциальный вектор атаки предполагает возможность перехвата и модификации данных при установке SFTP-соединения через уязвимые версии curl. Злоумышленник мог подменить идентификационные данные сервера, перенаправив трафик через контролируемый узел.
Разработчики подчёркивают, что проблема не связана с использованием языка программирования C и вряд ли могла быть предотвращена выбором иного языка реализации. Уязвимость затрагивает как библиотеку libcurl, так и одноимённую командную утилиту, однако её распространённость ограничена редким использованием wolfSSH в реальных развёртываниях.
Хронология реагирования началась 23 сентября 2025 года с получения отчёта о уязвимости. 29 октября была проведена координация с сообществом разработчиков дистрибутивов через distros@openwall. Финальный релиз curl 8.17.0 состоялся 5 ноября 2025 года одновременно с публикацией бюллетени безопасности.
На текущий момент не зафиксировано ни одного случая эксплуатации уязвимости в дикой природе. Команда безопасности curl рекомендует пользователям три варианта действий: незамедлительное обновление до версии 8.17.0, пересборка curl с альтернативным SSH-бэкендом либо временный отказ от использования SFTP-протокола в пользу более безопасных альтернатив.
Данный инцидент демонстрирует важность мониторинга экспериментальных функций в критически важном ПО. Разработчики curl планируют пересмотреть процессы контроля качества для подобных компонентов, чтобы предотвратить аналогичные ситуации в будущем. Современная политика проекта уже предусматривает более строгий процесс перевода функций из экспериментального статуса в стабильный.