HUNT-SPRINGBOOT 是面向 Spring Boot 应用的专项漏洞狩猎技能,属于 elementalsouls/claude-bughunter 技能集。它围绕 Spring Boot 生态中常见且危害较高的配置缺陷与已知漏洞,提供从指纹识别到利用验证的分阶段操作指引。
一、用途 该技能用于在授权安全测试中系统性地发现和验证 Spring Boot 应用的特有漏洞,重点覆盖 Actuator 端点暴露、表达式注入、已知 CVE 以及 JMX 暴露等方向。
二、主要能力(按阶段)
- 指纹识别:通过响应头(x-application-context、x-content-type)、Whitelabel Error Page、org.springframework 等特征判断目标是否为 Spring Boot,并尝试 /actuator、/manage、/management、/app 等常见基础路径。
- Actuator 端点枚举:遍历 env、heapdump、threaddump、mappings、beans、metrics、loggers、configprops、shutdown、trace、httptrace、auditevents、sessions、scheduledtasks、caches、flyway、liquibase、refresh、restart 等端点。技能特别强调不能仅凭 HTTP 200 判断暴露,需校验返回内容是否为 actuator 形态的 JSON,避免 Whitelabel 或登录页误报。
- 堆转储分析:下载 /actuator/heapdump 生成的 .hprof 文件,使用 strings 命令提取 password、secret、apikey、token、bearer、private_key 等敏感信息,并给出 AWS 密钥(AKIA 前缀)、Stripe 密钥(sk_live_ 前缀)、Bearer token 的正则匹配示例,同时建议使用 Eclipse Memory Analyzer(MAT)深入分析。
- H2 Console RCE:检测 /h2-console、/h2、/console,默认凭据 sa / 空密码,JDBC URL 为 jdbc:h2:mem:testdb;若可访问,可通过 CREATE ALIAS 定义 Java 方法并 CALL 执行系统命令。
- SpEL 注入:在用户可控字段中测试 ${77} 或 #{77},若返回 49 则确认表达式被求值;给出通过 T(java.lang.Runtime).getRuntime().exec(...) 执行命令的载荷,并说明 exec() 返回 Process 而非 String,需借助 OOB(带外)回调确认。
- 相关 CVE:CVE-2022-22963(Spring Cloud Function SpEL,通过 spring.cloud.function.routing-expression 头触发)、CVE-2022-22947(Spring Cloud Gateway Actuator SpEL,通过添加含 SpEL 过滤器的路由并 refresh 触发)、CVE-2022-22965(Spring4Shell,影响 Spring Framework < 5.3.18 与 < 5.2.20,需 JDK 9+ 且以 WAR 部署在 Tomcat 上,通过 class.module.classLoader 参数写入 webshell)。
- 可写 /env 配合 /refresh 利用链:当 /actuator/env 接受 POST 且存在 /actuator/refresh 时,可污染 logging.config(logback JNDI)或 eureka.client.serviceUrl.defaultZone(Eureka XStream 反序列化)等属性后触发刷新。
- Jolokia JMX 暴露:检测 /jolokia 与 /actuator/jolokia,列出 MBean、读取系统属性(可能泄露凭据),并给出通过 MBean 操作(如 DiagnosticCommand)实现代码执行的示例。
三、使用方式 技能以命令行示例为主,使用 curl 进行探测与利用,配合 python3 -m json.tool 格式化输出、strings 提取二进制内容、grep 过滤敏感字段。所有命令均以 $TARGET、$BASE、$COLLAB_HOST 等变量占位,需在实际测试中替换。
四、适用场景 适用于对 Spring Boot 应用进行授权渗透测试、红队评估、漏洞复现与安全审计,尤其适合检查生产环境中 Actuator 是否被不当暴露。
五、限制与注意事项 技能内容为攻击性安全测试指引,必须在获得明确授权的环境中使用。部分利用(如 heapdump 下载、shutdown 调用)可能对目标造成可用性影响或产生大量数据传输。Spring4Shell 的利用条件较为严格(JDK 9+、WAR on Tomcat)。技能中未提供具体的收费、价格或平台支持信息。