获取 Spring heapdump中的密码明文

2022-07-22 9,283

Actuator是Spring Boot提供的应用系统监控的开源框架。在攻防场景里经常会遇到Actuator配置不当的情况,攻击者可以直接下载heapdump堆转储文件,然后通过一些工具来分析heapdump文件,从而可进一步获取敏感信息。


01、jvisualvm分析

jvisualvm是jdk自带可视化java监控工具,在cmd命令行直接输入jvisualvm就可以运行这款工具。

(1)通过jvisualvm加载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())

image.png

02、jhat命令分析

jhat 是jdk自带的用于分析JVM heapdump文件的工具。

(1)使用jhat命令分析heapdump文件,启动一个端口为7000的http服务。备注:jhat 后面可配置jvm参数,避免heapdump文件占用过大内存。

image.png

(2)访问http服务,搜索关键字进入依次查看对象,获取到redis数据对象。

image.png

(3)点击password,从而获取到redis对象的明文密码。

image.png

03、heapdump_tool 敏感信息查询工具

本质上是基于jhat,通过通过jhat解析heapdump文件,从而实现heapdump敏感信息搜索。

下载地址:

https://toolaffix.oss-cn-beijing.aliyuncs.com/heapdump_tool.jar
利用自动化工具,快速搜索查找密码明文,AK-SK等。

image.png

04、Eclipse Memory Analyzer(MAT)

Eclipse Memory Analyzer(简称MAT)是一个功能丰富且操作简单的JVM Heap Dump分析工具,可以用来查找 spring heapdump中的密码明文。

下载地址:

https://www.eclipse.org/mat/downloads.php

(1)使用 MAT直接打开下载的 heapdump 文件,点击 OQL 标签,构建语句进行关键字查询。


Spring boot 1.x版本:select  from java.util.Hashtable$Entry x WHERE (toString(x.key).contains(“password”))Spring boot 2.x版本:select  from java.util.LinkedHashMap$Entry x WHERE (toString(x.key).contains(“password”))

(2)在 java.util.LinkedHashMap$Entry 实例的键值对中,找到明文密码。

image.png


本文作者:Bypass007

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/184037.html

Tags:
评论  (0)
快来写下你的想法吧!

Bypass007

文章数:94 积分: 218

一个网络安全爱好者,对技术有着偏执狂一样的追求。

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号