一、什么是Actuator
Spring Boot Actuators 模块端点信息官方文档:
Spring Boot Actuator Web API Documentation
Spring Boot Actuator 模块提供了健康检查,审计,指标收集,HTTP 跟踪等,是帮助我们监控和管理Spring Boot 应用的模块。这个模块采集应用的内部信息,展现给外部模块,可以查看应用配置的详细信息,例如自动化配置信息、创建的Spring beans信息、系统环境变量的配置信以及Web请求的详细信息等。
如果Actuator使用,可能造成信息泄露等严重的安全隐患(外部人员非授权访问Actuator端点)。其中heapdump作为Actuator组件最为危险的Web端点,heapdump因未授权访问被恶意人员获取后进行分析可进一步获取敏感信息。
注意:
SpringBoot 1.x 和 2.x 的 Actuator模块设置有差别,访问功能的路径也有差别,但现在多使用的SpringBoot版本为2.x,这篇文章只讲SpringBoo 2.x Actuator模块带来的信息泄露。
Actuator 其提供的端点分为两类:
1.原生端点
请求方法
端点
描述
GET
/actuator
查看有哪些 Actuator端点是开放的。
GET
/actuator/auditevent
auditevents端点提供有关应用程序审计事件的信息。
GET
/actuator/beans
beans端点提供有关应用程序 bean 的信息。
GET
/actuator/conditions
conditions端点提供有关配置和自动配置类条件评估的信息。
GET
/actuator/configprops
configprops端点提供有关应用程序@Configura
本文介绍了Spring Boot Actuator模块的功能,强调了其可能导致的信息泄露问题,特别是heapdump端点的安全隐患。文章详细列举了Actuator的多个端点,并展示了如何利用这些端点获取敏感信息,如数据库密码和阿里云OSS凭证。提出了关闭不必要的端点、引入安全限制和定制Actuator路径等修复措施,提醒开发者重视Actuator带来的潜在风险。
最低0.47元/天 解锁文章

2579

被折叠的 条评论
为什么被折叠?



