目录
云服务-对象存储-权限配置不当
权限控制-公共读或公共读写:可完整访问但不显示完整结构目录
权限控制-Bucket授权策略:设置ListObject显示完整结构目录
权限控制-Bucket公共读写权限:公共读写直接PUT文件任意上传
云服务-对象存储-域名解析接管
如何在实战中判断对方域名绑定了OSS存储桶?
公共读写权限-任意文件上传
OSS桶接管
fofa实战
云服务-对象存储-AccessKey(访问凭证)泄漏
云服务对象存储攻防挖掘案例
案例1:对象存储任意文件上传
案例2:对象存储解析域名劫持
案例3:对象存储泄漏AccessKey
知识点:1、云服务-对象存储-权限配置不当
2、云服务-对象存储-域名解析接管
3、云服务-对象存储-AccessKey泄漏
云服务,顾名思义就是云上服务,在云厂商上购买的产品服务。国内有阿里云、腾讯云、华为云、天翼云、Ucloud、金山云等,国外有亚马逊的AWS、Google的GCP、微软的Azure,IBM云等。
各个云厂商对云服务的叫法都不统一,这里统一以亚马逊的AWS为例。
S3 对象存储Simple Storage Service,简单的说就是一个类似网盘的东西
EC2 即弹性计算服务Elastic Compute Cloud,简单的说就是在云上的一台虚拟机。
RDS 云数据库Relational Database Service,简单的说就是云上的一个数据库。
IAM 身份和访问管理Identity and Access Management,简单的说就是云控制台上的一套身份管理服务,可以用来管理每个子账号的权限。
对象存储各大云名词:
阿里云:OSS 腾讯云:COS 华为云:OBS
谷歌云:GCS 微软云:Blob 亚马逊云:S3
对象存储:对象存储用来存储数据的(图片、视频、音频等,网站在从这个对象存储桶里调用的这些数据),告别传统的数据放在自己服务器硬盘上。
云服务-对象存储-权限配置不当
权限控制-公共读或公共读写:可完整访问但不显示完整结构目录
这里就会有个问题,就是必须知道具体文件名才能读。
权限控制-Bucket授权策略:设置ListObject显示完整结构目录
权限控制-Bucket公共读写权限:公共读写直接PUT文件任意上传
提示403是因为没有写的权限,只是读的。
云服务-对象存储-域名解析接管
需要等待一会才会解析生效
如何在实战中判断对方域名绑定了OSS存储桶?
公共读写权限-任意文件上传
OSS桶接管
Bucket存储桶绑定域名后,当存储桶被删除而域名解析未删除,可以尝试接管!(自己去新建一个存储桶,然后去绑定这个域名从而实现接管)
当Bucket显示NoSuchBucket
说明是可以接管的,如果显示AccessDenied
则不行。
注意,新建一个OSS桶的时候,对方用的什么云存储桶你就用什么云存储桶,对方存储桶地域是什么,新建的时候也要选择对应的地域。
fofa实战
云服务-对象存储-AccessKey(访问凭证)泄漏
APP(反编译),小程序(反编译),JS中泄漏导致
AccessKey标识特征整理-查找
https://wiki.teamssix.com/CloudService/more/
云服务对象存储攻防挖掘案例
案例1:对象存储任意文件上传
1、打开xxx.xxx.com 显示目录遍历 一般肯定是公共可读写
2、 尝试获取解析oss的url地址
3、尝试对oss的url地址进行put上传
案例2:对象存储解析域名劫持
1、访问该域名显示NoSuchBucket,
那么只需要去阿里云存储桶重新创建一个与HostID一样的存储桶名称即可
2、随后只需要上传文件,就可以让该域名显示我们上传的任意文件
案例3:对象存储泄漏AccessKey
1、在JS文件中找到存在泄露的AccessKey
2、在托管平台(github、gitee等)找到存在泄露的AccessKey
3、在第三方组件配置不当导致泄露AccessKey
常见场景:/actuator/heapdump堆转储文件泄露SecretId/SecretKey
4、 在APP,小程序反编译中泄漏AccessKey
5、利用官方OSS工具连接