
CVE-2025-24813 - Apache Tomcat RCE mediante deserialización de sesión - Exploit PoC

Apache Tomcat - Ejecución remota de código mediante deserialización de sesión
PUT parcial sin autenticación + path traversal + deserialización basada en gadgets
Las instancias de Apache Tomcat con el servlet por defecto con PUT habilitado (readonly=false) permiten escribir archivos mediante peticiones HTTP PUT. Al elaborar una ruta que atraviese el directorio de subida hasta la ubicación de almacenamiento de sesiones FileStore, un atacante puede colocar un objeto Java serializado manipulado como archivo .session. La siguiente petición que haga referencia a esta sesión desencadena la deserialización, ejecutando la cadena de gadgets incrustada.
readonly=false en conf/web.xmlorg.apache.catalina.session.PersistentManager con configurado en de la aplicación webFileStoreMETA-INF/context.xmlorg.apache.commons.collections.enableUnsafeSerialization=true (o commons-collections < 3.2.2)PUT y el path traversal no están filtrados por un proxy inverso o un WAFgit clone https://github.com/yuzuki-ayanami/CVE-2025-24813
cd CVE-2025-24813
pip install -r requirements.txt
python cve-2025-24813.py http://target:8080 --ysoserial ysoserial.jar -c 'id'
python cve-2025-24813.py http://target:8080 --ysoserial ysoserial.jar -c 'whoami' --gadget CommonsCollections7