Spring Boot Actuator未授权漏洞

Actuator 是 Spring Boot 提供的服务监控和管理中间件。当 Spring Boot 应用程序运行时,它会自动将多个端点注册到路由进程中。由于对这些端点的错误配置,就有可能导致一些系统信息泄露。其中heapdump作为Actuator组件最为危险的Web端点,heapdump因未授权访问被恶意人员获取后进行分析,可进一步获取敏感信息。
heapdump文件是一个二进制文件,它保存了某一时刻JVM堆中对象使用情况。heapdump文件是指定时刻的Java堆栈的快照,是一种镜像文件。
heapdump是诊断与JVM内存相关的问题的重要手段,例如:内存泄漏、垃圾回收问题和java.lang.OutOfMemoryError。同时也是优化内存消耗的重要手段。

当从抓取的数据包获得接口URL后
可探索/ Actuator/heapdump路径
下载heapdump文件

打开heapdump的方法

  1. 使用 heapdump_tool 敏感信息查询工具
    本质上是基于jhat,通过通过jhat解析heapdump文件,从而实现heapdump敏感信息搜索
    下载地址https://github.com/wyzxxz/heapdump_tool
    将下载的heapdump_tool.jar和要解析的heapdump文件与jhat.exe放在同一路径中
    本机路径:C:\Program Files\Java\jdk1.8.0_201\bin
    打开heapdump文件后可通过password关键字进行搜索

  2. 使用Java VisualVM工具
    本机路径:C:\Program Files\Java\jdk1.8.0_201\bin\ jvisualvm.exe
    双击打开,装入heapdump文件,如图2

切换到OQL控制台标签,Springboot heapdump端点存在版本差异,构建OQL语句进行关键字查询,从而获取明文密码。

Spring boot 1.x版本:select s.value.toString() from java.util.Hashtable$Entry s where /password/.test(s.key.toString())
Spring boot 2.x版本:select s.value.toString() from java.util.LinkedHashMap$Entry s where /password/.test(s.key.toString())

posted on   Mario24678  阅读(3902)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示