您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Spring boot未授权访问造成的数据库外联

bubuko 2022/1/25 19:07:57 java 字数 2102 阅读 869 来源 http://www.bubuko.com/infolist-5-1.html

一、spring boot 日常测试或攻防演练中像shiro,fastjson等漏洞已经越来越少了,但是随着spring boot框架的广泛使用,spring boot带来的安全问题也越来越多,本文仅介绍未授权现在heapdump获取数据库口令,达到连接数据库的目的。其他spring boot安全漏 ...

一、spring boot

  日常测试或攻防演练中像shiro,fastjson等漏洞已经越来越少了,但是随着spring boot框架的广泛使用,spring boot带来的安全问题也越来越多,本文仅介绍未授权现在heapdump获取数据库口令,达到连接数据库的目的。其他spring boot安全漏洞请参考https://xz.aliyun.com/t/7811

  Heap Dump也叫堆转储文件,是一个Java进程在某个时间点上的内存快照。Heap Dump是有着多种类型的。不过总体上heap dump在触发快照的时候都保存了java对象和类的信息。通常在写heap dump文件前会触发一次FullGC,所以heap dump文件中保存的是FullGC后留下的对象信息。具体参考:https://blog.csdn.net/hehmxy/article/details/89114116

二、未授权访问

  spring boot未授权访问产生的安全问题还是比较严重的,env泄露等问题甚至可造成RCE。

  在某次测试过程中扫描目录发现heapdump文件可下载,通过mat工具对heapdump文件进行分析,可获取内存中保存的敏感信息。

技术分享图片

 

三、相关工具及语法

  Eclipse Memory Analyzer是一种快速且功能丰富的Java堆分析器,可进行查找内存泄漏并减少内存消耗。

  下载链接如下:https://www.eclipse.org/mat/

四、OQL

  OQL是用于查询Java堆的类SQL查询语言。OQL允许过滤/选择从Java堆中获取的信息。虽然HAT已经支持预定义的查询,例如“显示类X的所有实例”,但OQL增加了更多的灵活性。OQL基于JavaScript表达式语言。参考链接:https://blog.csdn.net/pange1991/article/details/82023771

五、分析heapdump

  将heapdump文件拖入mat,mat对文件进行分析后,点击下图OQL查询敏感信息。

技术分享图片

 

  查询语句:select * from java.util.Hashtable$Entry x WHERE (toString(x.key).contains("password"))

  点击红色叹号进行查询,即可查询password字段

技术分享图片

 

 

  查询结果如下

技术分享图片

  由此得知数据库口令,若服务端无外联限制情况下,即可进行数据库登录操作。

 

     文章比较水,但这也是现在发现过得比较值得重视的问题,欢迎表哥们交流思路。

 

   

 

Spring boot未授权访问造成的数据库外联

原文:https://www.cnblogs.com/Y1Shui/p/14760852.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶