免责声明
由于传播、利用本公众号所发布的而造成的任何直接或者间接的后果及损失,均由使用者本人承担。LK安全公众号及原文章作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
网站的JS文件中通常会泄漏一些接口、URL、子域等信息,更有甚者会泄漏一些敏感信息,如OSS的AKSK等,我们利用泄漏的接口配合未授权访问,可以获取到更多的敏感信息,为后续渗透工作带来便利。本文以一次项目实战为基础展开。
1、敏感信息泄漏
系统登录框没有验证码,抓下包看看能不能跑个弱口令
加密加登录失败次数限制,直接放弃
跑下目录也没有收获
但是在js中发现了好东西
利用JS美化工具,发现多个接口目录
可以简单利用正则编写一个脚本,把接口提取出来
直接丢进burp中跑一下,发现大部分会报错,缺少参数,但是从报错信息中我们可以获取到接口使用的库
搜索一下PageInfo的参数发现为pageNum、pageSize
PageHelper.startPage(pageNum, pageSize);
List<Map<String , Object>> listData = securityCheckDao.selectAllQuestionType(requestJson);
加入参数再遍历一下,发现大量敏感信息,这里一定要注意加上 根目录 这个网站的根目录是statistics
但是另一接口存在大量XSL文件,但是找不到正确路径
正当要放弃的时候,在另外一个包中发现了如下接口
可以读取pdf文件
但无法读取xls文件
再跑下常用接口试下,发现了download
利用download接口可以直接将xls文件下载到本地,在xls文件中发现大量敏感信息
2、逻辑漏洞找回密码
在接口中发现找回密码功能(前台并无该功能,猜测是删除了前台入口),但是直接发包报错,缺少参数
直接猜解登录参数,loginName成功发包,发现密码直接在返回包中(咱也不知道研发是怎么写代码的)
直接以admin身份登录系统后台
找到一个上传接口,可以上传jsp文件,但是只返回文件名,最终也没有成功找到路径
3、任意文件读取
突然想到上面的文件读取接口会不会存在任意文件读取,尝试后成功读取web.xml文件,我们可以看到存在log4j
4、log4j 反弹shell
执行命令,Java版本号打印在dnslog上
直接反弹shell
总结
大致思路如下,主要的难点还是在于找到接口相应的参数,配合API未授权获得大量敏感信息,对信息进行进一步利用,思路要放开。
fuzz接口也可以使用Packer Fuzzer工具也挺好用的,它是一款针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具
https://github.com/rtcatc/Packer-Fuzze
原文链接:https://forum.butian.net/share/2422
欢迎各位表哥点赞,转发,关注!!!
期待与各位表哥的交流
欢迎大家进q群交流
关于LK内部纷传圈子
如果师傅还在上学但还是想入圈子学习,请添加我联系方式,私聊我以学生价入圈!!!!
圈子专栏
我们可以提供的
扫码了解
原文始发于微信公众号(LK安全):实战渗透|记一次抽丝剥茧式的渗透测试
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论