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

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

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

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

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

Категории

Все категории
Loading categories
tomcat-cve-2025-24813-lab — Локальная лаборатория для воспроизведения CVE-2025-24813 в Apache Tomcat, документирующая условия эксплуатации и проверку уязвимости с помощью ИИ. | Kitploit
Инструменты/GitHubGitHub/mega-starmie/tomcat-cve-2025-24813-lab
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика
GitHub
mega-starmie/tomcat-cve-2025-24813-lab

tomcat-cve-2025-24813-lab

Локальная лаборатория для воспроизведения CVE-2025-24813 в Apache Tomcat, документирующая условия эксплуатации и проверку уязвимости с помощью ИИ.

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

Популярное

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

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

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

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

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

Запись локального воспроизведения Apache Tomcat CVE-2025-24813

Только для локальных авторизованных экспериментов, понимания патчей и проверки защиты. Не отправляйте запросы на неавторизованные цели.

Этот проект документирует процесс воспроизведения CVE-2025-24813 на локальном экземпляре Apache Tomcat 9.0.98: с использованием partial PUT для записи временного файла, при включённой файловой персистентности Session и слабых условиях фильтрации десериализации проверяется цепочка загрузки файла Session и выполнения Payload.

Краткое изложение выводов

  • Тестируемая версия: Apache Tomcat 9.0.98 (скриншоты и записи локальных экспериментов)
  • Исправленная версия: Apache Tomcat 9.0.99
  • Ключевые предпосылки: включена возможность записи Default Servlet, доступен partial PUT, файловая персистентность Session использует расположение по умолчанию, а в classpath приложения присутствует эксплуатируемая библиотека десериализации.
  • В этом эксперименте сначала подтверждается успешная запись .inject.session в рабочий каталог, затем подтверждается, что обращение вызывает загрузку Session и выполнение Payload; нельзя судить об успехе только по HTTP-коду состояния.
  • Некоторые экспериментальные запросы возвращают 409 или 500, но запись файла и последующее срабатывание всё равно нужно оценивать поэтапно с учётом содержимого файла, журналов сервера и контролируемых побочных эффектов.

Официальный бюллетень безопасности Apache перечисляет условия срабатывания CVE-2025-24813, область воздействия (Tomcat 9.0.0-M1 до 9.0.98) и информацию об исправлении в 9.0.99: https://tomcat.apache.org/security-9

Экспериментальная среда

  • Apache Tomcat 9.0.98
  • Java 17 (фактическая версия на экспериментальной машине определяется по java -version)
  • Linux
  • Python 3, requests
  • Прослушивание только на локальном 127.0.0.1:8080

Структура каталогов

scripts/reproduce_local.py       # скрипт локальной проверки, цель по умолчанию localhost:8080
evidence/                         # скриншоты экспериментов (переименованы по шагам)

Способ запуска

python3 -m venv .venv
. .venv/bin/activate
python -m pip install requests
python scripts/reproduce_local.py

Цель в скрипте жёстко задана как локальный экспериментальный адрес и не содержит логики удалённого сканирования. Перед запуском следует убедиться в локальном экземпляре Tomcat:

  1. Возможность записи Default Servlet включена согласно конфигурации эксперимента;
  2. Файловая персистентность Session включена;
  3. Целевое приложение содержит необходимые для эксперимента библиотеки;
  4. Каталог журналов сервера и work/Catalina/localhost/ROOT доступны для наблюдения.

Ключевые моменты проверки

  1. PUT /inject/session с заголовком Content-Range, наблюдение за созданием временного файла;
  2. Проверка размера и содержимого work/Catalina/localhost/ROOT/.inject.session;
  3. Обращение к контролируемой локальной странице с JSESSIONID=.inject, наблюдение за загрузкой файла Session;
  4. Подтверждение выполнения Payload с учётом журналов Tomcat и побочных эффектов эксперимента;
  5. Раздельная запись HTTP-ответов, состояния файлов и результатов журналов, чтобы не принимать 409/500 напрямую за неудачу или успех воспроизведения уязвимости.

Замечания по формату запросов

HTTP-заголовки должны использовать настоящие CRLF (байты 0d 0a), не отправляйте 0x0d0x0a как видимый текст. В Python следует использовать b"\\r\\n" или позволить requests сформировать заголовки запроса.

Проверка защиты и исправления

В первую очередь обновитесь до версии Tomcat, содержащей исправление, и повторно проверьте права на запись Default Servlet, сценарии использования partial PUT и конфигурацию фильтра персистентности Session. После исправления повторите тот же набор шагов локальной проверки; ожидается, что цепочка записи временных файлов или цепочка загрузки Session больше не будет воспроизводиться.

Отказ от ответственности

Этот репозиторий не предоставляет функций сканирования, персистентности или массовой эксплуатации, направленных на интернет-цели. Всё содержимое ограничено локальной экспериментальной средой, контролируемой автором, и явно авторизованными полигонами.

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