安全矩阵

 找回密码
 立即注册
搜索
查看: 2170|回复: 0

从目录爆破到getshell

[复制链接]

141

主题

153

帖子

517

积分

高级会员

Rank: 4

积分
517
发表于 2022-5-28 15:03:21 | 显示全部楼层 |阅读模式
​原文地址:https://mp.weixin.qq.com/s?__biz ... e8343acbb61916b7#rd从目录爆破到getshell苏苏的五彩棒 [url=]潇湘信安[/url] 2022-05-28 09:00 发表于湖南
收录于合集
#实战案例83个
#Web安全68个
                        声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
                        请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。
                       

文章来源:奇安信攻防社区(苏苏的五彩棒)
原文地址:https://forum.butian.net/share/1466

0x01 前言
某日在做一个渗透测试项目,但是没有任何收获,这怎么能给领导交差呢?于是只能加班加点进行测试,终于在我大力出奇迹的干法下,拿到了一个shell。

0x02 获取备份文件
1、对目标站点进行目录扫描没有什么收获,只有一些403。
​编辑

但是总感觉这里会有东西,于是我又重新fuzz了一下目录,把目标的公司名缩写加在了目录名中。

果然大力出奇迹,获取到了一个备份文件。
编辑

2、在备份文件中获取到了许多敏感信息。
编辑

0x03 通过钉钉KEY和SECRET获取敏感信息
1、env的文件中有微信小程序、公众号、QQ、钉钉等IM通讯软件的KEY和SECRET。
​编辑

2、微信的KEY和SECRET都尝试利用了,但都没能获取到token,可能是设置的有IP地址限制,但是钉钉的可以成功利用,利用官方的API 获取accessToken。

           

https://open-dev.dingtalk.com/apiExplorer#/?devType=org&api=oauth2\_1.0%23GetAccessToken
编辑

然后有了token,能够获取的数据就有很多了,这里只演示一下获取部门列表,根据官方API手册,获取部门列表。
编辑

成功获取部门列表信息
编辑

0x04 微信支付宝支付接口信息泄露
1、在Web.config文件中获取到了微信和支付宝支付的接口信息。
编辑

2、支付密钥泄漏,就有可能导致攻击者花1元购买了100元的商品。

系统进行验证时,会发现签名正确,商户号正确,订单号支付成功,若代码没有验证支付金额与订单是否匹配,将完成攻击者的订单。

在许多网站或者App中,曾出现过只验证签名和订单id的情况,没有验证实付金额,因此可以通过这种金额篡改进行攻击。
编辑

3、并且文件中还泄漏了证书文件。
​编辑

有了证书就可以调用微信支付安全级别较高的接口(如:退款、企业红包、企业付款)。

4、这里就没有进行利用(害怕ing)。

0x05 接口文档泄露导致getshell
1、泄露的文件中还有一个接口文档,在其中查到了一个文件上传的接口。
编辑

2、测试后发现该接口是未授权访问并且可以上传webshell。
编辑

但是返回的链接直接拼接到url上并不是正确的shell路径,于是本着大力出奇迹的原则,开始爆破webshell的路径,可以先选择一些常用的上传文件的接口路径进行爆破。

           

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

  •        

file/fileRealm/file\_manager/file\_upload/fileadmin/fileadmin/\_processed\_/fileadmin/\_temp\_/fileadmin/user\_upload/upload/filedump/filemanager/filerun/fileupload/files/files/cache/files/tmp/logfile/paket-files/profile/profiles/
我们发现uploadFile这个路径和其它的不太一样。
编辑

成功连接shell。
编辑

0x06 总结
1、本次能有这么多收获,都是从那个备份文件中获取到的信息,fuzz目录这个思路是从密码爆破中学来的,虽然好多公司都要求密码设置强密码,但是还是有一定的逻辑的,比如说腾讯的系统。

           

  •        

tx@123!tx@123456!
可以自己收集一些特定密码,进行爆破,简单写了一个python脚本,还不太完善,大家可以加入一些自己的想法。

           

#coding=utf-8import syskey = sys.argv\[1\]f = open("%s.txt"%key,"w")list1 = \[123,321,1234,4321,123456,654321,12345678,123456789,1234567890,888,8888,666,6666,163,521,1314,1,11,111,1111,2,222,3,333,5,555,9,999\]list2 = \['#123','#1234','#123456','@123','@1234','@123456','@qq.com','qq.com','@123.com','123.com','@163.com','163.com','126.com','!@#','!@#$','!@#$%^','098'\]for j1 in list1:    pwd1 =  key + str(j1) + '\\n'    f.write(pwd1)for j2 in list2:    pwd2 =  key+str(j2)+'\\n'    f.write(pwd2)for i in range(1000,2021):    #pwd1 = key + str(i) + '\\n'    pwd3 = '{}{}{}'.format(key,i,'\\n')    f.write(pwd3)f.close()print (key+' password ok')
2、对于密钥的利用,需注意要区分是企业内部应用还是第三方应用,关于微信密钥的利用可以看下这位大佬的文章:https://xz.aliyun.com/t/11092

3、文件上传接口那里,也是花了很长时间,慢慢尝试才成功上传了的

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-3-29 22:56 , Processed in 0.018265 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表