当前位置: 首页 > 技术干货 > 云上宝库:三大厂商对象存储安全性及差异性比较

云上宝库:三大厂商对象存储安全性及差异性比较

发表于:2024-06-19 16:15 作者: Ggoodstudy 阅读数(1714人)

前言

看了几家云厂商的对象存储,使用上有相似也有差异,聊聊阿里云、腾讯云、京东云三家对象存储在使用中存在的风险以及防护措施。

0x01 云存储命名

阿里云对象存储OSS(Object Storage Service),新用户免费试用三个月,存储包容量规格20G三个月.

腾讯云对象存储 COS(Cloud Object Storage),新用户标准存储容量包,有效期6个月(180天),个人用户50GB6个月,企业用户1T六个月。

京东云对象存储OSS(Object Storage Service) ,目前无限制,存储包容量规格10G/月,请求次数50W次/月的标准,低于标准一直免费使用。

0x02 云存储空间创建

阿里云

image-20240512193643954

创建存储桶Bucket的名称唯一设置和地域没有关系,创建存储桶后的域名规则为:<BucketName>.oss.<Region>.aliyuncs.com

腾讯云

image-20240513144431372

腾讯云创建存储桶名称唯一跟低于也无关系,其名称构成<BucketName-APPID>.cos.<Region>.myqcloud.com

京东云

image-20240513152914079

京东云的bucket地域只有四个,命令规则为<BucketName>.s3.<position>-id.jdcloud-oss.com

华北

image-20240513155709451

华东

image-20240513155336913

0x03 云存储API密钥存储

阿里云

进入

image-20240513172737275

离开创建页面后无法获取SK,需提前保存SK,后期无法查看

image-20240513172848663

这里用户权限需要授权

image-20240513173432220

如果未授权,则Forbiden访问

image-20240513173531358

腾讯云

image-20240513210634001

创建AK/SK后期无法查询,密钥存储要求上基本与阿里云一致。

京东云

京东云需要首先设置AccessKey,否则无法操作存储桶。

image-20240513145031385

AccessKey创建后可AS查看

image-20240513152724332

0x04 云存储常见安全问题

1. 配置不当导致的安全问题

阿里云

image-20240513211508790

阿里云设置公有读

image-20240514111818109

存储桶内的文件可被读取,虽然无法直接list对象,但是可以通过爆破的方式读取文件内容

image-20240514111928741

当设置包含listobject时,web访问存储桶直接可遍历对象

image-20240514112859254

当Bucket的权限设置为公共读写的时候,是可以直接使用PUT方式上传文件到存储桶内,这种配置会导致桶内文件来源的真实性无法保证

image-20240514115149558

文件上传成功

image-20240514115212417

腾讯云

腾讯云的存储桶权限和阿里云类似,描述不同,当非公共读写、非私有的条件下是可以遍历桶内文件的

image-20240514114502814

存储桶内的文件可被读取,虽然无法直接list对象,但是可以通过爆破的方式读取文件内容

image-20240514114412276

公共读写权限配置后可直接上传

image-20240514115309572

京东云

京东云在Bucket的权限上和阿里、腾讯基本一致,非私有状态下,也存在Bucket文件可遍历

image-20240514120215827

上传txt

image-20240514120357093

文件写入成功

风险

针对配置不当,可能产生的风险在于

  1. 数据泄露: 配置不当可能导致存储桶中的敏感数据被公开访问,如用户个人信息、敏感文件等。

  2. 后渗透风险:桶内数据来源的真实性面向用户无法保障,且对用户的安全性造成影响,可利用该漏洞进行供应链攻击。

2.策略配置不当导致的安全风险

针对三家厂商的存储桶,阿里云bucket授权策略

image-20240514133724803

腾讯云Policy策略

image-20240514133853633

这两家比较类似

京东云CORS跨域规则

image-20240514134050515

规则添加简单测试还是比较友好的

风险

规则配置可能会导致存储桶敏感文件泄露,比如说规则设置添加遍历存储桶对象等。

3.存储桶爆破

阿里云

阿里云针对存储桶的回显返回值不同

image-20240514131547945

无Bucket

image-20240514131635390

腾讯云

腾讯云的回显

image-20240514131742948

京东云

image-20240514131820434

风险

虽然三家的产品根据回显值均可以爆破,如果从利用角度来讲,需要配合前面的配置不当才能继续后渗透,从爆破的角度来讲,腾讯云的域名构成<BucketName-APPID>.cos.<Region>.myqcloud.com的爆破存储桶的风险可以说是最低的,甚至可以说基本上不用考虑。目前下载大量的存储桶在业务中的应用可能最常见的是图片文件云存储利用,一般是不设置域名绑定存储桶的。

4.AK/SK泄露

AK 和 SK 泄露可能被恶意用户用于未经授权的访问云服务资源,导致数据泄露、篡改或删除等安全问题。针对不同厂商目前有工具可直接利用泄露的AK/SK接管存储桶。

针对不同厂商对象存储AK/SK的创建用户的权限划风险需要注意

阿里云RAM访问控制

image-20240514134954850

腾讯云用户访问管理权限分配

image-20240514135434869

image-20240514135620062

京东云

image-20240514135733252

用户授权

image-20240514135849391

用户权限配置不当,会导致云服务被完全接管。

0x05 云存储防护

  1. 加强身份验证和访问控制: 使用身份和访问管理(IAM)来限制对存储桶和其中对象的访问。确保只有授权的用户或服务能够访问,并严格控制他们的权限,采用最小权限原则。

  2. 加密数据: 对于敏感数据,采用适当的加密措施,包括数据在传输和静态存储时的加密。

  3. 网络安全配置: 配置网络安全组、防火墙等措施,限制对存储桶的访问仅来自可信来源,减少公开访问的风险。

  4. 监控和日志记录: 设置监控警报,对存储桶的访问和活动进行实时监控,并记录审计日志,以便及时发现异常行为或潜在的安全威胁。

  5. 定期备份和恢复: 定期备份存储桶中的重要数据,并建立有效的恢复计划,以防止数据丢失或损坏,例如意外删除或勒索软件攻击。

  6. 防止公开访问误配置: 定期审查存储桶的访问权限配置,确保没有意外的公开访问权限,避免因配置错误导致数据泄露的风险。

  7. 实施访问限制策略: 使用 IP 白名单或访问令牌等策略,限制存储桶的访问仅限于授权的用户或系统。