最近给系统做渗透测试,扫描出了一个actuator风险漏洞,属于高危级别,通过actuator接口可以拿到用户敏感信息。这个问题处理起来倒也简单,禁用actuator或者限制访问就可以了
# 禁用actuator接口配置
management:server:port: -1# 限制访问
management:endpoints:web:exposure:# 只公开health接口include: health
比较感兴趣的是测试人员是怎么通过actuator接口拿到敏感信息的。根据报告得知在没限制actuator的情况下可以通过/actuator/heapdump接口下载java虚拟机的heapdump堆快照
下载一个堆分析工具JDumpSpider-1.1-SNAPSHOT-full.jar
https://github.com/whwlsfb/JDumpSpider/releases
将heapdump文件和JDumpSpider-1.1-SNAPSHOT-full.jar放在同一个文件夹下,启动jar包
# 根据文件大小调启动内存
java -Xms512m -Xmx1g -jar JDumpSpider-1.1-SNAPSHOT-full.jar heapdump >> log.txt
打开log.txt文件,数据库密码都给你整出来了,说实话有点恐怖,还是赶紧把漏洞给处理了