
CVE-2025-24813 - RCE su Apache Tomcat tramite deserializzazione della sessione - Exploit PoC

Apache Tomcat - Esecuzione di codice remoto tramite deserializzazione di sessione
PUT parziale non autenticato + path traversal + deserializzazione guidata da gadget
Le istanze di Apache Tomcat con il servlet predefinito PUT abilitato (readonly=false) consentono di scrivere file tramite richieste HTTP PUT. Creando un percorso che esce dalla directory di upload per raggiungere la posizione di storage della sessione FileStore, un attaccante può posizionare un oggetto Java serializzato appositamente creato come file .session. La successiva richiesta che fa riferimento a questa sessione attiva la deserializzazione, eseguendo la catena di gadget incorporata.
readonly=false in conf/web.xmlorg.apache.catalina.session.PersistentManager con configurato nel dell'applicazione webFileStoreMETA-INF/context.xmlorg.apache.commons.collections.enableUnsafeSerialization=true (o commons-collections < 3.2.2)PUT e path traversal non sono filtrati da un proxy inverso o 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