文章目录

  • 前言
  • 敏感信息泄露
    • env 泄露配置信息
    • trace 泄露用户请求信息
    • mappings 泄露路由信息
    • heapdump泄露堆栈信息

前言

spring对应两个版本,分别是Spring Boot 2.x和Spring Boot 1.x,因此后面漏洞利用的payload也会有所不同

敏感信息泄露

env 泄露配置信息

2.x版本http://127.0.0.1:8100/actuator/env1.x版本http://127.0.0.1:8200/env

这个端点会泄露Spring 的 ConfigurableEnvironment 公开属性,其中包括系统版本,环境变量信息、内网地址等信息,但是一些敏感信息会被关键词匹配,做隐藏*处理,但是如果开发的密码字段不规范,可能直接导致泄露数据库密码。

trace 泄露用户请求信息

2.x版本http://127.0.0.1:8100/actuator/trace1.x版本http://127.0.0.1:8200/trace其他版本:http://127.0.0.1:8200/httptracehttp://127.0.0.1:8200/actuator/httptrace

通过这个我们可以获取到请求这个站点时的完整的http包,其中就可能包括正常用户的session,从而我们可以直接接管登录,如果遇到管理员的会话,那么危害就可能进一步扩大。

mappings 泄露路由信息

2.x版本http://127.0.0.1:8100/actuator/mappings1.x版本http://127.0.0.1:8200/mappings

heapdump泄露堆栈信息

2.x版本http://127.0.0.1:8100/heapdump1.x版本http://127.0.0.1:8200/actuator/heapdump

这个在Spring MVC架构中是可用的,会泄露出推栈信息,其中是可以窃取到一些关键的信息,比如一些关键的Key,或者数据库连接密码,但是扫描工具没把它列为扫描端点。
下载下来的heapdump可以结合工具JDumpSpider获取一些信息

java -jar JDumpSpider-1.1-SNAPSHOT-full.jar heapdump