Springboot信息泄露以及heapdump MAT分析

Springboot heapdump信息泄露以及MAT分析

1. Springboot信息泄露

1.1 可能泄露路由列表

/api-docs
/v2/api-docs
/swagger-ui.html
/api.html
/sw/swagger-ui.html
/api/swagger-ui.html
/template/swagger-ui.html
/spring-security-rest/api/swagger-ui.html
/spring-security-oauth-resource/swagger-ui.html
/mappings
/actuator/mappings
/metrics
/actuator/metrics
/beans
/actuator/beans
/configprops
/actuator/configprops
/actuator
/auditevents
/autoconfig
/caches
/conditions
/docs
/dump
/env
/flyway
/health
/heapdump
/httptrace
/info
/intergrationgraph
/jolokia
/logfile
/loggers
/liquibase
/prometheus
/refresh
/scheduledtasks
/sessions
/shutdown
/trace
/threaddump
/actuator/auditevents
/actuator/health
/actuator/conditions
/actuator/env
/actuator/info
/actuator/loggers
/actuator/heapdump
/actuator/threaddump
/actuator/scheduledtasks
/actuator/httptrace
/actuator/jolokia
/actuator/hystrix.stream

  /trace:显示最近的http包信息,可能泄露当前系统存活的Cookie信息。
  /env:应用的环境信息,包含Profile、系统环境变量和应用的properties信息,可能泄露明文密码与接口信息。
  /jolokia:RCE漏洞
  /heapdump:JVM内存信息,分析出明文密码

1.2 heapdump

  Heap Dump也叫堆转储文件,是一个Java进程在某个时间点上的内存快照。
  可以使用Eclipse MemoryAnalyzer 工具对泄露的heapdump文件进行分析,查询加载到内存中的明文密码信息。
  独立版下载地址:http://www.eclipse.org/mat/downloads.php

2 实际环境

2.1 Springboot信息泄露测试

  Burpsuite Intruder模块扫描

2.2 heapdump读取


2.2 heapdump分析

  spring boot 1.x 版本 heapdump 查询结果,最终结果存储在 java.util.Hashtable$Entry 实例的键值对中
  select * from org.springframework.web.context.support.StandardServletEnvironment
  select * from java.util.Hashtable$Entry x WHERE (toString(x.key).contains("password"))
  spring boot 2.x 版本 heapdump 查询结果,最终结果存储在 java.util.LinkedHashMap$Entry 实例的键值对中:
  select * from java.util.LinkedHashMap$Entry x WHERE (toString(x.key).contains("password"))


  读取Redis明文密码

posted @ 2021-11-16 15:54  Snowieee  阅读(9028)  评论(0编辑  收藏  举报