文章总结: JDumpSpiderPlus是一款基于JDumpSpider二次开发的开源JavaHeapDump敏感信息提取工具,集成HaE规则引擎支持30+种敏感信息自动识别。核心能力包括数据库凭证提取、内存马检测、加密配置解密等,新增19个检测模块和10项工程能力,支持远程下载、多线程扫描和多种输出格式。工具适用于渗透测试信息收集和应急响应内存马排查场景,通过命令行即可快速提取堆转储中的关键数据。 综合评分: 85 文章分类: 渗透测试,应急响应,恶意软件,安全工具,红队
JDumpSpiderPlus:Java HeapDump 敏感信息提取利器
原创
iak3ec iak3ec
薛定谔的安全
2026年6月9日 19:34 江苏
在小说阅读器读本章
去阅读
JDumpSpiderPlus:Java HeapDump 敏感信息提取利器
一行命令,从堆转储中提取数据库凭证、密钥、内存马等 30+ 种敏感信息
为什么需要 HeapDump 分析工具?
在渗透测试和应急响应中,Java 应用的 HeapDump 文件是一个被严重低估的信息金矿。
一个 HeapDump 文件动辄几百 MB 甚至数 GB,里面包含了 JVM 堆中所有对象的完整快照——数据库连接串、Redis 密码、API Key、加密密钥、用户会话数据……这些敏感信息就静静地躺在那里,等待被发现。
但问题是: 手动分析 HeapDump 极其痛苦。用 MAT 或 VisualVM 打开大文件卡到怀疑人生,翻找敏感信息如同大海捞针。
JDumpSpiderPlus 就是为解决这个问题而生的——自动化提取,精准命中,一行命令搞定。
工具简介
JDumpSpiderPlus 是一款开源的 Java HeapDump 敏感信息自动提取工具,基于 JDumpSpider 二次开发,集成了 HaE 规则引擎,支持 30+ 种敏感信息类型 的自动识别与提取。
核心能力一览
| 能力 | 说明 | | — | — | | 数据库凭证提取 | Spring DataSource、WebLogic、Druid、HikariCP、MongoDB | | 缓存/消息队列 | Redis(单机/集群/哨兵)、Kafka、RabbitMQ | | 搜索/注册中心 | Elasticsearch、Nacos、Consul | | 对象存储密钥 | 阿里云 OSS、腾讯云 COS、AWS S3 | | 认证信息 | Shiro Key、Cookie、Auth Token、JWT | | 配置信息 | Spring PropertySource、Java Properties、环境变量 | | 敏感数据 | 用户密码、手机号、身份证、银行卡、邮箱(HaE 规则) | | 内存马检测 | 8 种类型:Filter/Servlet/Listener/Controller/Interceptor/WebSocket/Agent/Valve | | 加密配置解密 | jasypt ENC、druid RSA、Spring Cloud {cipher}、Vault | | 会话信息 | Tomcat/Spring/Shiro Session | | 信息提取 | URL、内网 IP、文件路径 |
相比原版 JDumpSpider,Plus 版新增了什么?
原版 JDumpSpider 支持 13 个检测模块,主要覆盖基础数据源和配置提取。JDumpSpiderPlus 在此基础上新增了 19 个检测模块和 10+ 项工程能力,从一个”能用的工具”进化为一个”好用的武器”。
新增检测模块(+19)
| 新增模块 | 功能说明 |
| — | — |
| MemShellDetector01 | 内存马检测(8 种类型,支持 ClassLoader 分析和字段内容扫描) |
| EncryptedConfigDetector01 | 加密配置识别与自动解密(jasypt/Cloud/dRuid/Vault) |
| InfoExtractor01 | URL、内网 IP、文件路径批量提取 |
| SessionExtractor01 | Tomcat/Spring/Shiro Session 数据提取 |
| JwtKeyExtractor01 | JWT 签名密钥提取(原版 JwtKey01 仅提取 token) |
| AuthThief | Auth Token / Bearer Token 提取 |
| CookieThief | Cookie 信息提取 |
| Elasticsearch01 | Elasticsearch 连接配置提取 |
| Kafka01 | Kafka 配置提取 |
| RabbitMQ01 | RabbitMQ 配置提取 |
| Nacos01 | Nacos 注册中心配置提取 |
| Redis03 | Redis 哨兵模式配置(原版仅支持单机和 Jedis) |
| MongoDB01 | MongoDB 连接配置提取 |
| PropertySource05 | 额外属性源支持 |
| EnvProperty01 | Java 环境变量提取 |
| HeapdumpRegexSpider | HaE 规则引擎正则扫描 |
| HeapdumpRegexSpiderParallel | 多线程并行正则扫描 |
| RegexSearchSpider | 自定义正则搜索(-reg 参数) |
| ExportAllString | 导出堆中所有字符串(export-strings 命令) |
新增工程能力(+10)
| 能力 | 说明 |
| — | — |
| URL 远程下载 | -u 参数直接从 Actuator 等端点下载 HeapDump |
| HTTP 代理支持 | --proxy 参数,适配内网渗透场景 |
| 自定义请求头 | --header 参数,支持带认证下载 |
| HaE 规则引擎 | 内置 40+ 条正则规则,覆盖手机号/身份证/银行卡/云密钥等 |
| 自定义正则 | -reg 参数,命令行追加任意正则 |
| 多线程并行 | 大文件扫描性能优化 |
| JSON 输出 | --format json ,方便自动化处理 |
| Excel 报告 | --format excel ,生成 CSV 格式报告 |
| 加密配置解密 | 内置弱密码字典 + 自定义字典 + 指定密钥三种模式 |
| 中文姓名校验 | 内置中文姓名验证器 |
对比总览
| 维度 | 原版 JDumpSpider | JDumpSpiderPlus | | — | — | — | | 检测模块数 | 13 | 32+ | | 内存马检测 | 无 | 8 种类型 | | 加密配置解密 | 无 | 支持 5 种加密格式 | | 远程下载 | 无 | 支持(含代理和认证头) | | 正则引擎 | 无 | HaE 集成 + 自定义正则 | | 输出格式 | text | text / json / excel | | 多线程 | 无 | 支持 | | 命令行参数 | 2 个 | 11 个 |
技术亮点
1. 内存马检测
内存马(Memory Shell)是当前高级攻击中的常见手法,传统 Webshell 查杀工具难以检测。JDumpSpiderPlus 直接从 HeapDump 层面检测以下 8 种内存马类型:
| 类型 | 检测方式 | | — | — | | Filter | 检查 ApplicationFilterConfig 中的 Filter 类 | | Servlet | 检查 StandardWrapper 中的 Servlet 类 | | Listener | 检查 StandardContext 中的 Listener 类 | | Controller | 检查 RequestMappingHandlerMapping 中的 Handler | | Interceptor | 检查 AbstractHandlerMapping 中的 Interceptor | | WebSocket | 检查 WsServerContainer 中的 Endpoint | | Agent | 检查 TransformerManager 中的 Transformer | | Valve | 检查 Pipeline 中的 Valve |
检测逻辑:
- 类名无包名或包含随机字符
- 类名包含
shell、evil、inject等关键词 - ClassLoader 非系统类加载器
- 实例字段中引用 Runtime、ProcessBuilder、ScriptEngine 等危险类
- 字符串字段中包含危险关键词(含 Base64 编码变体)
2. 加密配置自动解密
很多应用使用加密方式存储配置(数据库密码、API Key 等),手动解密繁琐且耗时。JDumpSpiderPlus 内置了多种解密能力:
支持的加密格式:
ENC(...)— jasypt 加密{cipher}— Spring Cloud Config 加密- druid RSA 加密
- Base64 编码值
- Hex 编码值
三种解密方式:
# 方式1:内置弱密码字典自动尝试(默认行为,无需额外参数)
java -jar JDumpSpiderPlus.jar heapdump.hprof
# 方式2:指定解密密钥
java -jar JDumpSpiderPlus.jar heapdump.hprof --decrypt-key mySecretKey
# 方式3:使用自定义密码字典(每行一个密码)
java -jar JDumpSpiderPlus.jar heapdump.hprof --decrypt-dict passwords.txt
3. HaE 规则引擎集成
集成 HaE 规则引擎,在堆中字符串上运行正则匹配,自动识别:
- 手机号、身份证号、银行卡号
- 邮箱地址
- 云服务密钥(AWS AKIA、阿里云 LTAI)
- Authorization Header
- 敏感配置字段
支持自定义规则文件:
java -jar JDumpSpiderPlus.jar heapdump.hprof --rules /path/to/custom-rules.yml
也支持命令行直接追加正则:
java -jar JDumpSpiderPlus.jar heapdump.hprof -reg "password" -reg "secret.*=.*" -reg "AKIA[0-9A-Z]{16}"
4. 多线程并行扫描
针对大文件(数百 MB ~ 数 GB)场景,采用多线程并行扫描架构,充分利用多核 CPU,显著缩短扫描时间。
使用方法
获取 HeapDump
# jmap(JDK 自带)
jmap -dump:live,format=b,file=/tmp/dumpHeap.hprof <PID>
# jcmd(JDK 自带)
jcmd <PID> GC.heap_dump /tmp/dumpHeap.hprof
# Spring Boot Actuator(远程获取)
curl -o heapdump http://target:8080/actuator/heapdump
基础用法
# 扫描本地文件
java -jar JDumpSpiderPlus.jar heapdump.hprof
# 从 URL 远程下载并扫描
java -jar JDumpSpiderPlus.jar -u http://target.com/actuator/heapdump
# 使用代理下载
java -jar JDumpSpiderPlus.jar -u http://target.com/actuator/heapdump --proxy http://127.0.0.1:8080
# 添加认证头
java -jar JDumpSpiderPlus.jar -u http://target.com/actuator/heapdump --header "Cookie: JSESSIONID=abc123"
输出格式
# 默认 text 格式
java -jar JDumpSpiderPlus.jar heapdump.hprof
# JSON 格式
java -jar JDumpSpiderPlus.jar heapdump.hprof --format json
# Excel 报告(CSV 格式,可直接用 Excel 打开)
java -jar JDumpSpiderPlus.jar heapdump.hprof --format excel
# 输出到文件
java -jar JDumpSpiderPlus.jar heapdump.hprof -out result.txt
完整参数速查
| 参数 | 说明 |
| — | — |
| <heapfile> | 本地 heapdump 文件路径 |
| -u <url> | 从 URL 下载 heapdump |
| --proxy <proxy> | HTTP 代理 |
| --header <header> | 自定义请求头(可多次使用) |
| --rules <path> | 自定义 HaE 规则 YAML 文件 |
| --format <format> | 输出格式:text / json / excel |
| -out <path> | 输出到文件 |
| -reg <pattern> | 自定义正则搜索(可多次使用) |
| --decrypt-key <key> | 指定解密密钥 |
| --decrypt-dict <path> | 密码字典文件 |
| export-strings | 导出堆中所有字符串 |
输出结果
扫描结果自动保存到 heapdump 文件所在目录的 results/ 文件夹:
results/
├── tool_scan.txt # 内置模块扫描结果
├── regex_scan.txt # HaE 规则匹配结果
├── report.csv # Excel 格式报告
└── memshell/ # 内存马检测摘要
典型使用场景
场景一:渗透测试中的信息收集
目标存在 Spring Boot Actuator 未授权访问,直接下载 HeapDump 提取数据库凭证、Redis 密码、API Key:
java -jar JDumpSpiderPlus.jar -u http://target:8080/actuator/heapdump
场景二:应急响应中的内存马排查
怀疑服务器被植入内存马,通过 HeapDump 检测:
jmap -dump:live,format=b,file=/tmp/heap.hprof <PID>
java -jar JDumpSpiderPlus.jar /tmp/heap.hprof
场景三:加密配置解密
拿到 HeapDump 后发现数据库密码是 jasypt 加密的,使用字典爆破:
java -jar JDumpSpiderPlus.jar heapdump.hprof --decrypt-dict common-passwords.txt
场景四:自定义敏感信息搜索
搜索 AWS 密钥和自定义业务关键词:
java -jar JDumpSpiderPlus.jar heapdump.hprof -reg "AKIA[0-9A-Z]{16}" -reg "内部系统地址.*http"
编译构建
git clone https://github.com/nu0l/JDumpSpiderPlus.git
cd JDumpSpiderPlus
mvn clean package -DskipTests
target/JDumpSpiderPlus-<version>-full.jar编译产物:target/JDumpSpiderPlus-<version>-full.jar
运行环境:Java 8+
版本历史
| 版本 | 主要更新 | | — | — | | v2.4.3 | 内存马检测增强:ClassLoader 分析、字段内容扫描、覆盖 TemplatesImpl/Proxy/ScriptEngine/Cipher/JNDI 等 bypass 手段 | | v2.4.2 | 优化误报率:URL -77%、IP -98%、File Path -99%,HaE 规则全面调优 | | v2.4.0 | 新增内存马检测、加密配置解密、JWT/Session 提取、自定义正则 | | v2.3 | 新增 URL 下载、代理支持、JSON 输出 | | v2.0 | 从 JDumpSpider 升级为 JDumpSpiderPlus,集成 HaE 规则引擎 |
致谢
- JDumpSpider – 原版工具
- HaE – 规则引擎
JDumpSpiderPlus 是一款开源工具,欢迎 Star、Issue 和 PR。
如何获取
在后台发送JDumpSpiderPlus或heapdump获取下载链接
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:薛定谔的安全 iak3ec iak3ec《JDumpSpiderPlus:Java HeapDump 敏感信息提取利器》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论