从Spring Boot未授权访问到GetShell

一、Spring Boot简介

Spring是Java Web中常见的组件,而Spring Boot则是Spring框架的扩展。Actuator是Spring Boot提供的功能模块,用于对应用系统进行自省和监控。然而,如果未进行权限控制,非法用户可以通过访问默认的执行器端点获取应用系统中的监控信息。

图片[1]-从Spring Boot未授权访问到GetShell-山海云端论坛

二、攻击步骤

1. 检测漏洞

利用FOFA搜索关键字为”body=Whitelabel Error Page”的网站,查找Spring Boot框架搭建的网站。进入目标网站,并尝试未授权访问添加后缀/actuator,成功访问接口。

图片[2]-从Spring Boot未授权访问到GetShell-山海云端论坛

2. 查看接口配置信息

访问/actuator/env接口,查看相关配置信息,如数据库密码(加密后),发现存在数据库密码但无法查看明文。继续查看其他接口,发现/actuator/heapdump接口未禁止访问,访问后自动下载heapdump文件。

图片[3]-从Spring Boot未授权访问到GetShell-山海云端论坛

3. 分析heapdump文件

利用MemoryAnalyzer工具打开heapdump文件,通过查找语句找到数据库密码信息。然后利用该密码信息连接数据库,成功获取管理员账号和密码。

4. 查找网站后台登录接口

利用获取的管理员账号密码登录网站后台。

5. 获取Shell

尝试文件上传,发现无法上传jsp脚本文件。通过ueditor在线文件管理功能和已有路径信息,确认网站的web绝对路径。结合前面获取的mysql权限,尝试直接往web目录中写入webshell。

首先检查mysql读写权限,发现没有限制。尝试将webshell写入web服务根路径,成功上传webshell并获取系统权限。

以上是从Spring Boot未授权访问到获取Shell的攻击实例,展示了渗透测试中常见的漏洞利用过程。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容