springboot 框架
actuator 配置不当的漏洞
Actuator 是 springboot 提供的用来对应用系统进行自省和监控的功能模块,借助于 Actuator 开发者可以很方便地对应用系统某些监控指标进行查看、统计等。在 Actuator 启用的情况下,如果没有做好相关权限控制,非法用户可通过访问默认的执行器端点(endpoints)来获取应用系统中的监控信息,从而导致信息泄露甚至服务器被接管的事件发生。
https://www.freebuf.com/news/193509.html
https://www.freebuf.com/articles/network/234719.html
利用Spring Boot 2的三个特性实现远程命令执行
https://www.freebuf.com/fevents/225377.html
看到跳转到/#/目录下,可能会有许多渗透测试经验多的同学们,已经看出来了,可能是Webpack
使用Tomcat搭建了SpringBoot接口服务的表现
https://www.freebuf.com/vuls/255640.html
Spring Boot Actuator hikari配置不当导致的远程命令执行漏洞
Spring Boot whitelabel error page SpEL rce
利用条件
至少知道一个触发 springboot 默认错误页面的接口及参数名
如何查看用的什么springboot版本
代码
pom.xml
文件夹中的jar文件提示有spring-boot-…版本号
步骤一:找到一个正常传参处
比如发现访问 /article?id=xxx ,页面会报状态码为 500 的错误: Whitelabel Error Page,则后续 payload 都将会在参数 id 处尝试。
步骤二:执行 SpEL 表达式
输入 /article?id=${77} ,如果发现报错页面将 77 的值 49 计算出来显示在报错页面上,那么基本可以确定目标存在 SpEL 表达式注入漏洞。
其中对寻找漏洞比较重要接口的有:
/env、/actuator/env
GET 请求 /env 会泄露环境变量信息,或者配置中的一些用户名,当程序员的属性名命名不规范 (例如 password 写成 psasword、pwd) 时,会泄露密码明文;
同时有一定概率可以通过 POST 请求 /env 接口设置一些属性,触发相关 RCE 漏洞。
/jolokia
通过 /jolokia/list 接口寻找可以利用的 MBean,触发相关 RCE 漏洞;
/trace
一些 http 请求包访问跟踪信息,有可能发现有效的 cookie 信息v