记一次渗透一波三折找到的springboot利用
记一次渗透一波三折找到的springboot利用
0x01 前言
在渗透某企业的时候(好久之前的了,写个总结),拐了七八个弯,终于在这个企业的某c段找到了个springboot未授权访问,真是拐了七八个弯,先从某管理系统入手,扫目录,弱密码,注入,还发现了fck文件编辑器,但是都没有用,最后还是突然发现该企业真实ip的特点->除了cdn的ip大多数都在一个ipc段,然后在某个ip找到了springboot的页面
0x01 springboot利用
首先得找到springboot的whitepage页,还有个特点是有一个小绿叶的图标,存在这个可能还有Swagger UI,这个后面会说到。
然后就是springboot的常用的接口泄露路径,参考LandGrey/SpringBootVulExploit: SpringBoot 相关漏洞学习资料,利用方法和技巧合集,黑盒安全评估 check list (github.com)
1 |
|
0x02 实战
于是我直接扫描了以上目录,发现接口暴露的还挺多,就有上面所说的swigger ui
swiggerui的界面如下,这上面都是一些api接口,利用这些接口可以尝试查看敏感信息,注入,文件上传等操作(不过我找到的这个站的swiggerui都是些查询信息的接口,只给测试数据,不知道具体参数也无法获得敏感信息)
这些接口的利用方式如LandGrey/SpringBootVulExploit: SpringBoot 相关漏洞学习资料,利用方法和技巧合集,黑盒安全评估 check list (github.com)
这里根据这个站,我也尝试了很多方式,总结一下利用的重要接口
1./env、
/actuator/env
正常访问(get)会直接泄露环境变量、内网地址、配置中的用户名等信息;当程序员的属性名命名不规范,例如 password 写成 psasword、pwd 时,会泄露密码明文(不过我遇到的这个站就是***号显示密码)
2.能POST请求/env,即可在/env中添加属性
3.能POST请求/refresh、
/actuator/refresh刷新属性,很多RCE漏洞都得靠这个,目的是为了刷新/env的配置。
以上这几个是很多漏洞的基本要求,做不到可能就只能看看信息泄露,和**/trace**的信息利用了,很遗憾,我这个站这些操作都进行不了,如下访问/refresh提示404
0x03 实战利用
既然不存在RCE漏洞利用的可能,就只能转向信息泄露了,我这个站访问/heapdump,发现可以下载到内存文件
根据github上的教程,使用Eclipse Memory Analyzer(java的内存分析工具)进行分析内存,方法:先打开要分析的文件,然后点击OQL按钮,输入
1 |
|
点击红色感叹号,然后查看查询出来的键值就是./env中的带***的密码了
这波成功get到一堆重要密码,点到为止
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!,本博客仅用于交流学习,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 文章作者拥有对此站文章的修改和解释权。如欲转载此站文章,需取得作者同意,且必须保证此文章的完整性,包括版权声明等全部内容。未经文章作者允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。若造成严重后果,本人将依法追究法律责任。 阅读本站文章则默认遵守此规则。