## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-PAYATU-CVE-2017-5638
# CVE-2017-5638
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° (RCE) Π² Apache Struts 2.0
ΠΡΠΎ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ CVE-2017-5638. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π²Π½Π΅Π΄ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Content-Type.
Apache Struts 2 β ΡΡΠΎ Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Java EE Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ Java Servlet API, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ±ΡΠ΄ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ Β«ΠΌΠΎΠ΄Π΅Π»Ρ-ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅-ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΒ» (MVC).
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π½Π΅Π΄Π΅Π»Ρ ΠΌΠ°ΡΡΠ° 2017 Π³ΠΎΠ΄Π° Ρ
Π°ΠΊΠ΅Ρ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Ρ Apache Struts ΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ Β«Nike ZhengΒ», ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ proof-of-concept ΡΠΊΡΠΏΠ»ΠΎΠΉΡ, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡΠΈΠΉ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ Apache Struts 2.
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ CVE-2017-5638 β https://vulners.com/cve/CVE-2017-5638 β ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° (RCE) ΡΠ΅ΡΠ΅Π· ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Content-Type Π² HTTP-Π·Π°ΠΏΡΠΎΡΠ΅. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Content-Type, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΡΡΠ·Π²ΠΈΠΌΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. ΠΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π΅ΡΠ΅ΠΊΡ Π² Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ΅ Apache Struts Jakarta Multipart ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Content-Type Π²ΠΌΠ΅ΡΡΠΎ Π΅Π³ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΡΠ»Π΅ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠ° Π±ΡΠ»ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΉ, Π½Π°ΡΠ΅Π»Π΅Π½Π½ΡΡ
Π½Π° ΠΏΠΎΠΈΡΠΊ ΡΡΠ·Π²ΠΈΠΌΡΡ
ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Apache. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΊΡΠΏΠ»ΠΎΠΉΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡ Π² Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ, Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ·Π²ΠΈΠΌΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ. Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ Π±ΡΠ»ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΡΠ°ΡΡΡΠ΅ Π°ΡΠ°ΠΊΠΈ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Π²ΡΠΈΠ΅ Π·Π° ΠΌΠ°ΡΡΠΎΠ²ΡΠΌΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ.
ΠΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΡΠΈΡ
ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠΏΡΠΎΡΠΈΠ» Π½Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²ΡΠ΅ ΠΈΡ
IP-Π°Π΄ΡΠ΅ΡΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΡΠ·Π²ΠΈΠΌΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Apache Struts 2 ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π»ΠΈ ΡΠΎΡΠ½ΡΡ
Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ IP (Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΡ) ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ·Π²ΠΈΠΌΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Apache. Π’ΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΎΠΊΠΎΠ»ΠΎ ΡΡΡΡΡΠΈ IP-Π°Π΄ΡΠ΅ΡΠΎΠ². ΠΠ»ΠΈΠ΅Π½Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π» ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΡΠ΅ Π΄ΠΎΠΌΠ΅Π½Ρ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΠΎΠΌ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Linux ΠΈΠ»ΠΈ Windows. Π§ΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ IP Π²ΡΡΡΠ½ΡΡ, Ρ Π½Π°ΠΏΠΈΡΠ°Π» Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ.
Π‘ΠΊΡΠΈΠΏΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ/Π·Π°Π΄Π°ΡΠΈ:
1. Π§ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ ΡΡΠ·Π²ΠΈΠΌΡΡ
Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΎΠ΄Π½ΠΎ Π·Π° Π΄ΡΡΠ³ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ².
2. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠ·Π²ΠΈΠΌΡΡ
ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
3. ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠ° ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Windows ΠΈΠ»ΠΈ Linux.