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

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

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

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

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

Категории

Все категории
Loading categories
AutoGenerateXalanPayload — Инструмент автоматической генерации payload-ов для Jdk Xalan, расширенный на основе cve-2022-34169, который может генерировать соответствующие xslt-файлы для разных версий JDK. | Kitploit
Инструменты/GitHubGitHub/flowerwind/autogeneratexalanpayload
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийЭксплуатация Бинарных Файлов
GitHubflowerwind/autogeneratexalanpayload

AutoGenerateXalanPayload

Инструмент автоматической генерации payload-ов для Jdk Xalan, расширенный на основе cve-2022-34169, который может генерировать соответствующие xslt-файлы для разных версий JDK.

Репозиторий
94613 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

AutoGenerateXalanPayload

Описание

Это инструмент для автоматической генерации полезной нагрузки (payload) для уязвимости переполнения JDK Xalan, основанный на уязвимости CVE-2022-34169. Поскольку в разных версиях JDK требуются разные полезные нагрузки для переполнения, был создан этот автоматический генератор. Достаточно запустить этот проект с разными версиями JDK, чтобы получить разные XSLT-файлы для эксплуатации.

Инструкция по использованию

Скопируйте select.bak.xslt как select.xslt и измените команду, которую хотите выполнить.

image-20230117143738105

Затем запустите java -jar AutoGenerateXalanPayload.jar. В процессе могут возникать ошибки, их можно игнорировать. После завершения программы полученный файл select.xslt будет содержать полезную нагрузку для эксплуатации переполнения Xalan, соответствующую версии JDK.

image-20230117144434703

Идея модификации

https://mp.weixin.qq.com/s/xxAtjFvk9RxWiY-pwGf8Ow

Сравнение версий JDK

Из-за большого количества минорных версий JDK я использовал бинарный поиск для сравнения версий от JDK 1.6 до JDK 1.8. В качестве примера возьмём тестирование версии 1.7: сначала тестируем самую высокую минорную версию JDK 1.7, получаем XSLT и обозначаем его содержимое как тип A. Затем тестируем самую низкую минорную версию JDK 1.7, получаем XSLT. Если содержимое этого XSLT полностью совпадает с содержимым, сгенерированным для самой высокой минорной версии, то это означает, что для всех версий от самой низкой до самой высокой JDK 1.7 подходит один и тот же тип A payload. Если же они различаются, я беру среднюю версию JDK 1.7 и тестирую её — и так продолжаю делить пополам. Это, на мой взгляд, самый быстрый способ, не требующий установки всех версий, но при этом покрывающий все варианты. В качестве примера из протестированных результатов: Jdk-8u301 — тип A payload, Jdk-8u202 — тип A payload. Тогда Jdk-8u221 — это средняя версия между ними; она не может быть типом B, верно?

Ниже приведены полученные мной результаты. Обнаружено, что между JDK 1.6 и JDK 1.8 существует шесть типов полезных нагрузок.

Версия JDKТип XSLS
Jdk-8u301A
Jdk-8u202A
Jdk-8u162A
Jdk8u152A
Jdk8u151B
Jdk8u144B
Jdk8u131B
Jdk8u121C
Jdk8u111C
Jdk8u102D
Jdk8u101D
Jdk8u91D
Jdk8u60D
Jdk8u20D
Jdk7u40D
Jdk7u21D
Jdk7u10D
Jdk7u05D
Jdk7u04D
Jdk7u03E
Idk7u02E
Jdk7u0E
Jdk6u45E
Jdk6u20E
Jdk6u17F
Jdk6u15F
Jdk6u10F
Jdk6u0F

Ссылки

https://blog.noah.360.net/xalan-j-integer-truncation-reproduce-cve-2022-34169/

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