概述
一、Spring Boot Actuator漏洞描述
- 事件
2019年2月28日,阿里云云盾应急响应中心监测到有国外安全研究人员披露Spring Boot
Actuator模块中间件存在未授权访问远程代码执行漏洞。
- 漏洞描述
Actuator是Spring Boot提供的服务监控和管理中间件,默认配置会出现接口未授权访问,部分接口会泄露网站流量信息和内存信息等,使用Jolokia库特性甚至可以远程执行任意代码,获取服务器权限。
- 漏洞评级
严重
- 影响版本
全版本且无安全配置
- 安全建议
禁用所有接口,将配置改成:endpoints.enabled = false
或者引入spring-boot-starter-security依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
开启security功能,配置访问权限验证,类似配置如下:
management.port=8099
management.security.enabled=true
security.user.name=xxxxx
security.user.password=xxxxxx
- 原文地址:https://bbs.aliyun.com/read/592982.html
二、基本原理
Spring Boot Framework包含许多称为执行器的功能,可帮助您在将Web应用程序投入生产时监视和管理Web应用程序。它们旨在用于审计,运行状况和指标收集,它们还可能在配置错误时打开服务器的隐藏门。
当Spring Boot应用程序运行时,它会自动将多个端点(例如’/ health’,’/ trace’,’/ beans’,’/ env’等)注册到路由进程中。对于Spring Boot 1 - 1.4,它们无需身份验证即可访问,从而导致严重的安全问题。从Spring 1.5版开始,默认情况下,除“/ health”和“/ info”之外的所有端点都被视为敏感和安全,但应用程序开发人员通常会禁用此安全性。
以下Actuator端点可能具有安全隐患,从而导致可能的漏洞:
- /dump - 显示线程转储(包括堆栈跟踪)
- /trace - 显示最后几条HTTP消息(可能包含会话标识符)
- /logfile - 输出日志文件的内容
- /shutdown - 关闭应用程序
- /mappings - 显示所有MVC控制器映射
- /env - 提供对配置环境的访问
- /restart - 重新启动应用程序
对于Spring 1x,它们在根URL下注册,并且在2x中它们移动到“/actuator/”基本路径。
- 备注
通过上述url可以获取部分关键信息,如/env客户获取应用的配置信息(数据库、kafka、redis等其他依赖项);/restart重启应用,如果淘宝暴露此漏洞,你可以重启淘宝应用,想想都可怕; /shutdown关闭应用,那还得了;/mappings 获取应用所有接口列表,对其进行攻击,致使接口无法正常使用;
- 更多说明参考原文
作者:慕凌峰
链接:https://www.jianshu.com/p/3162ce30a853
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
最后
以上就是快乐小土豆为你收集整理的【漏洞预警】Spring Boot Actuator未授权访问远程代码执行漏洞[转]的全部内容,希望文章能够帮你解决【漏洞预警】Spring Boot Actuator未授权访问远程代码执行漏洞[转]所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复