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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-24813-POC — CVE-2025-24813 Apache Tomcat RCE — доказательство концепции (PoC) | Kitploit
Инструменты/GitHubGitHub/alaatk/cve-2025-24813-poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеРазработка Полезной Нагрузки
GitHubalaatk/cve-2025-24813-poc

CVE-2025-24813-POC

CVE-2025-24813 Apache Tomcat RCE — доказательство концепции (PoC)

Репозиторий
4111 год назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2025-24813 Apache Tomcat RCE PoC

PoC для CVE-2025-24813 — уязвимости удаленного выполнения кода (RCE) в Apache Tomcat.

Важно: Данный PoC предназначен исключительно для тестирования собственных сред или в образовательных целях. Любое использование этого PoC для эксплуатации систем без соответствующего разрешения запрещено и может быть незаконным. Создатели и распространители этого PoC не несут ответственности за любое неправомерное использование или причиненный ущерб. Всегда получайте явное разрешение перед тестированием любой среды, которая вам не принадлежит.


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

python3 CVE-2025-24813.py --url <target_url>

Настройка окружения

Тестовый пейлоуд

В коде уже есть пейлоуд, закодированный в base64, сгенерированный с помощью ysoserial (https://github.com/frohoff/ysoserial), который создает файл RCE-success в /tmp следующим образом:

java -jar ysoserial-all.jar CommonsBeanutils1 "touch /tmp/RCE-success" | base64 -w 0

Настройка уязвимой конфигурации Tomcat

  1. Включите доступ PUT / запись

    Отредактируйте $CATALINA_HOME/conf/web.xml, чтобы добавить параметр readonly в раздел имени сервлета default и установить его в false.

        <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <init-param>
              <param-name>readonly</param-name>
              <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
  2. Включите сохранение сессий

    • Часть a) Отредактируйте $CATALINA_HOME/conf/context.xml и добавьте следующую настройку.
        <Manager className="org.apache.catalina.session.PersistentManager">
          <Store className="org.apache.catalina.session.FileStore" />
        </Manager>
    
    • Часть b) Отредактируйте $CATALINA_HOME/webapps/ROOT/index.jsp и убедитесь, что настройка сессии по умолчанию не установлена в "false", или просто удалите её.
     <%@ page session="true" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
    

    ИЛИ

     <%@ page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
    
  3. Загрузите зависимости в $CATALINA_HOME/lib/

cd $CATALINA_HOME/lib/
wget https[:]//repo1.maven[.]org/maven2/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar
wget https[:]//repo1.maven[.]org/maven2/commons-beanutils/commons-beanutils/1.9.2/commons-beanutils-1.9.2.jar
wget https[:]//repo1.maven[.]org/maven2/commons-logging/commons-logging/1.2/commons-logging-1.2.jar

Вывод

  • Успешная эксплуатация:
[+] Exploit most likely succeeded
  • Неудачная эксплуатация:
[-] Exploit failed with status code: {status_code}, instead of 500,409

Demo

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