申明:本次测试只作为学习用处,请勿未授权进行渗透测试,切勿用于其它用途!
1.拥抱当下的光明生存,本身就是对荒诞最有力的反抗
大家好,我是你们的网络安全防护士,今天我要给大家分享一个经验:如果你想在互联网上保持匿名,最好的方法就是把自己的头像改成一只可爱的猫咪,这样黑客就不会发现你是谁了!
2.我时时刻刻都在悔气我自己,同时又从自己的废墟重生
2023年2月29日晚,因为女朋友没有给我说晚安,导致我彻夜难眠。掏出手机消磨时光打开了bilibili。
首页视频推荐页中,发现了某安全应急响应平台旗下的资产及其带有让人耳熟能详的Logo头像的up主,点开其视频发现居然连URL都没打码。但搜域名属实阴间
获取到域名:test-xxxkt.testxxxx.xxxxx.丘丘.com/#/login
当时看到是webpack建站方式,尝试寻找路由,发现拼接访问都没啥有用的功能点。
因为根据域名会发现此站点是用于在短视频平台上发布“教学/操作”视频,利用的测试站。在真实环境中也存在此相同UI系统,但是缺少一个账户密码登录的功能点仅能手机号登录
首先第一个突破点是关于这个账号密码登录接口.
发现这个接口的验证码形同虚设,同一验证码可以被不断使用且不会过期,616和617的长度返回都是表示存在此手机号用户。
遇事不决弱口令
表情包含义懂得都懂
发现弱口令策略行不通,看看因为测试站点所以没有上WAF也不会跑链接超时(问就是真实站点跑暴毙了),功能点安全也有可能做不好,跑出了内置手机号用户,康康手机验证码登录功能点会不会存在回传等漏洞。
功能点可以正常获取验证码,但是系统不存在验证码回传,且也无法伪造/添加使同一验证码可以同时回传两个手机号。
转回真实业务站点查看,此系统是不公开注册 需要运营添加。
并且对外提供服务页面是可以注册,因为短信验证码接口同源,发现是六位,真实站点有上感知系统/WAF。
那么测试站点的也极大概率是六位,跑出了一个123456万能凭证
利用万能凭证在存在用户里挑了一个用户
正常寻觅功能点,找有木有SQL,越权、XSS
发现一处越权,对于师傅们来讲有手就行的
这个点没有鉴权 导致可以获取其他企业的信息,尤为重要的就是其手机号,再配合万能凭证就可以进行定点的目标手机号,然后进行登录后台。
当时想跑一遍这个参数发现sign值校验,不能直接跑 哥们直接转战小程序康康有没有能找到判断用户id存在的数字接口
ok,对未来的真正慷慨,就是把一切献给现在。
在真实业务小程序里面确实发现了一个 “jwt” emm.....
这边就可以进行遍历 查看存在系统内的用户(当时想的是可能测试环境搬到真实环境里,多多少少会有几个测试数据一并带过去在真实业务环境中测试)
如果用户不存在的话会提示错误,key缓存不在
解决了用户id问题,这边就只能先手输入id获取信息。同时思考如何利用测试站点获取到真实业务站点的信息,真实站点是不存在万能凭证。
就算想要进入真实站点也是需要目标手机号
这就在测试站点中发现了机构的学员考勤,导出数据功能点存在COS设定的Key值太简单
Key值解剖:
https://xxxx.xxxx.myqcloud.com/{$公司名/机构名$}_某某记录_时间戳.csv
某某记录这边是固定值有提供的,不方便展现出来
在测试环境中是有多个账号测试,或者利用上述越权获取其企业名/机构名,尝试遍历获取 可以发现很容易就遍历出两个机构的数据。(前提是需要用户点击过导出 保存在cos中)
就此可以延申出,由于测试站点和主站点是同一模板,只是其中数据不相同,那么可以利用测试站摸出的漏洞对主站点进行攻击。
就在主站的js文件中发现了myqcloud的地址可以看到myqcloud的主域名,然后根据versio-1304449343关键字可以判断出这个主站数据导出的和测试站的myqcloud.com是同一cos存储地址,那么就可以利用上面的bucket桶的Key爆破,进行对用户信息csv文件的获取
Bucket桶Key的爆破需要用到两部分参数,那就是机构名称和年月日,但年月日是固定格式容易爆破,所以最主要的就是获取到机构名称。
想咋获得就直接真实业务环境里面找呗~啵啵
“你对于我来说的意义究竟是什么?这是一个需要我穷尽一生去寻找和完美解答的一个问题。”
原文始发于微信公众号(F12sec):要不是家庭困难 谁会来网络安全
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论