Sploitus

Exploit for struts-s2-052-deserialization-rce-lab

kitploit Β· 2026-08-25

Exploit Code

MARKDOWN41 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-EXPERIENCE-ROOKIE-STRUTS-S2-052-DESERIALIZATION-RCE-LAB
# Apache Struts S2-052 XML 역직렬화 RCE

이 μ €μž₯μ†ŒλŠ” μ•…μ„± XML 역직렬화λ₯Ό μ΄μš©ν•œ **Apache Struts S2-052 (CVE-2017-9805)** μ•…μš©μ„ μ‹œμ—°ν•©λ‹ˆλ‹€.

ν•΄λ‹Ή μ΅μŠ€ν”Œλ‘œμž‡μ€ **INE eWPTX Practice Range – Struts XML Deserialization RCE 랩** 을 ν•΄κ²°ν•˜λŠ” κ³Όμ •μ—μ„œ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

* * *

## 취약점 κ°œμš”

Apache Struts REST ν”ŒλŸ¬κ·ΈμΈμ€ **XStream** 을 μ‚¬μš©ν•˜μ—¬ XML μš”μ²­μ„ μ—­μ§λ ¬ν™”ν•©λ‹ˆλ‹€.

μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ λ‹€μŒ μ½˜ν…μΈ  μœ ν˜•μ˜ XML을 μ²˜λ¦¬ν•  λ•Œ:

Content-Type: application/xml

κ³΅κ²©μžλŠ” μž„μ˜ λͺ…λ Ή 싀행을 μœ λ°œν•˜λŠ” μ•…μ˜μ μΈ μ§λ ¬ν™”λœ 객체 κ·Έλž˜ν”„λ₯Ό 곡급할 수 μžˆμŠ΅λ‹ˆλ‹€:

java.lang.ProcessBuilder

이둜 인해 **원격 λͺ…λ Ή μ‹€ν–‰(RCE)**이 λ°œμƒν•©λ‹ˆλ‹€.

* * *

## μ·¨μ•½ν•œ 흐름

ν΄λΌμ΄μ–ΈνŠΈ μš”μ²­ ↓ Struts REST ν”ŒλŸ¬κ·ΈμΈ ↓ XStream XML 역직렬화 ↓ μ•…μ„± 객체 κ·Έλž˜ν”„ ↓ ProcessBuilder.start() ↓ 원격 μ½”λ“œ μ‹€ν–‰

* * *

## 랩 ν™˜κ²½

ν”Œλž«νΌ: INE eWPTX Practice Range  
μ±Œλ¦°μ§€: Struts XML Deserialization RCE

* * *

## 영ν–₯을 λ°›λŠ” 버전

Struts 2.1.6 – 2.3.33 Struts 2.5 – 2.5.12