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

CVE-2023-27534

curl SFTP: знак тильды мог привести к выбору другого каталога

Проверьте curl/libcurl 7.18.0–7.88.1, если программа принимает SFTP-пути с тильдой от пользователя. Ошибка преобразования пути могла направить операцию в неожиданный каталог; исправление появилось в 8.0.0.

Проверено 6 ноября 2026Low (низкая) по оценке curl. Реестр CVE содержит более широкое описание последствий и оценку CVSS 3.1 8.8 от CISA ADP; ниже описан подтверждённый проектом механизм выбора пути, без обещания неизбежного выполнения кода.

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

Владельцам файловых обменников, выгрузок и резервного копирования через SFTP, особенно если пользователь может выбрать удалённый путь. Важна не только марка продукта, но и конкретная версия, способ установки, операционная система и конфигурация.

В чём риск

Тильда — знак ~, который curl использует как сокращение домашнего каталога пользователя. Уязвимая версия могла подставить домашний каталог туда, где тильда была лишь частью имени. Проверка пути в приложении и реальное место операции могли разойтись. Права учётной записи на SFTP-сервере по-прежнему ограничивают доступ: ошибка клиента сама по себе их не отменяет. Advisory curl подтверждает неожиданный путь и возможность обхода фильтра; дополнительные последствия зависят от приложения.

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

Затронуты curl/libcurl 7.18.0–7.88.1 при передаче файлов по SFTP и использовании тильды в первом элементе пути. SFTP — передача файлов через SSH. Специальное сокращение для домашнего каталога ошибочно распознавалось также как начало более длинного элемента. Важны поступление пути от недоверенного источника и правила приложения, проверяющие этот путь.

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

Исправлено в curl/libcurl 8.0.0. Для эксплуатации выбирайте поддерживаемую исправленную сборку. Поставщик ОС может перенести патч в старую ветку без смены основного номера версии; сверяйте статус именно этого CVE.

Что сделать

  1. 1Найдите программы и задания с SFTP и уточните версию их libcurl. Проверьте, кто задаёт путь: администратор, пользователь формы или внешний источник.
  2. 2Изучите правила работы с тильдой и допустимыми каталогами в коде приложения. Для проверки используйте только собственное тестовое хранилище с вымышленными файлами; не пытайтесь читать соседние каталоги в рабочей системе.
  3. 3Сохраните настройки и резервную копию изменяемых файлов. Проверьте новую сборку на отдельной копии системы: обычные разрешённые пути должны работать, запрещённые — отклоняться.
  4. 4Установите поддерживаемый пакет с исправлением CVE-2023-27534; пересоберите приложение, если оно содержит собственную libcurl. После обновления перезапустите использующие библиотеку процессы по инструкции поставщика.
  5. 5До обновления проект рекомендует избегать тильды в SFTP URL. Для собственных заданий задайте согласованные явные пути; если пути вводят пользователи, временно запретите такую возможность или тильду после проверки совместимости. Это не заменяет исправление и не решает все ошибки проверки путей.
  6. 6Проверьте журналы передач и фактическое расположение тестовых файлов. Храните прежнюю конфигурацию для отката, но при возврате старой сборки сохраняйте временный запрет опасного сценария.

Почему проверенный текст пути и итоговый каталог могли различаться

Последовательность показана статичным текстом, без воспроизведения опасного пути. Цвет и движение не нужны; настройка reduced motion ничего не меняет.

  1. 1Приложение получает удалённый путь.
  2. 2Оно проверяет допустимость введённого текста.
  3. 3Уязвимая libcurl неправильно раскрывает тильду.
  4. 4Операция направляется в неожиданный каталог в пределах доступных прав.
  5. 5Исправленная библиотека распознаёт сокращение по правильным правилам.

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

Посмотреть поддержку SFTP в локальном curl (shell)
curl -q --version

Оболочка Linux/macOS с установленным curl; запускайте обычным пользователем внутри проверяемого окружения. В выводе ожидаются версии curl/libcurl и список Protocols: наличие sftp означает поддержку протокола в этом CLI. Команда не подключается к серверу и не меняет файлы, откат не нужен. Она не подтверждает версию встроенной библиотеки другого приложения и наличие backport; это проверяют отдельно по его сборке и бюллетеню поставщика.

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

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

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

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

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