渗透测试之劫持国外某云BucketName
0. 起因:
几天前,收到一个国外目标(公司)的渗透测试任务,时间为两周;
大概看了一下目标是类似于国内阿里云那样提供云服务的平台;
常规信息收集过后,尝试渗透三天无果... 于是下班前只能祭出我的"大杀器"---缝合怪.py。缝合了一些好用的扫描器,一键 XRAY多线程批量扫 + 自动添加任务到AWVS + 自动添加任务到arl + ...加入资产后就下班回家了。
到了第二天一看扫描结果,心里暗道不妙,md坏起来了啊。。。
扫描器里一个洞都没,goby里所有资产显示只开放两个端口80、443。
不慌,问题不大,时间还长,接下来要做的,就是整理思路,重新来过。
在重新整理之前收集到的资产中,发现测试目标的旁站有一个有趣的404页面:
NoSuchBucket + BucketaName
想到了 阿里云 的bucket劫持漏洞,幸福来得太突然了。
1. 经过:
使用测试账号登录自己的云平台尝试进行劫持:
- 点击对象存储服务:
- 点击创建桶:
- 桶的名字为BucketName字段:
- 将访问控制权限更改为公共读写:
- 点击对象,创建hack.txt:
- 完成后刷新http://321.asd.com为如下:
发现BucketName字段消失了,原来的NoSuchBucket也变成了NoSuchCustomDomain,说明我们的修改对它造成了影响!
- NoSuchCustomDomain?那我们就来给他设置一个,点击域名管理尝试绑定域名:
- 访问http://321.asd.com/
-
访问:http://321.asd.com/hack.txt (hack.txt为我们刚才上传的)
(后期尝试上传图片,html等文件均可)
劫持成功!拿来吧你!
2. 结果:
- 删除该桶后,http://321.asd.com/恢复bucket字段:
漏洞危害:劫持Bucket,并开放匿名读取功能。可以挂黑页或引用了js文件,攻击者可以上传恶意js文件,去盗取用户信息。。。
- 还有几天时间,接着搞搞(ji xu mo yu),渗透测试一定要耐心并且专注~