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

2024-06-20 01:28

本文主要是介绍云上宝库:三大厂商对象存储安全性及差异性比较,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

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

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后期无法查询,密钥存储要求上基本与阿里云一致。

帮助网安学习,全套资料S信免费领取:
① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

京东云

京东云需要首先设置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 白名单或访问令牌等策略,限制存储桶的访问仅限于授权的用户或系统。

这篇关于云上宝库:三大厂商对象存储安全性及差异性比较的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1076711

相关文章

Redis存储的列表分页和检索的实现方法

《Redis存储的列表分页和检索的实现方法》在Redis中,列表(List)是一种有序的数据结构,通常用于存储一系列元素,由于列表是有序的,可以通过索引来访问元素,因此可以很方便地实现分页和检索功能,... 目录一、Redis 列表的基本操作二、分页实现三、检索实现3.1 方法 1:客户端过滤3.2 方法

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

对postgresql日期和时间的比较

《对postgresql日期和时间的比较》文章介绍了在数据库中处理日期和时间类型时的一些注意事项,包括如何将字符串转换为日期或时间类型,以及在比较时自动转换的情况,作者建议在使用数据库时,根据具体情况... 目录PostgreSQL日期和时间比较DB里保存到时分秒,需要和年月日比较db里存储date或者ti

JSON字符串转成java的Map对象详细步骤

《JSON字符串转成java的Map对象详细步骤》:本文主要介绍如何将JSON字符串转换为Java对象的步骤,包括定义Element类、使用Jackson库解析JSON和添加依赖,文中通过代码介绍... 目录步骤 1: 定义 Element 类步骤 2: 使用 Jackson 库解析 jsON步骤 3: 添

C++中使用vector存储并遍历数据的基本步骤

《C++中使用vector存储并遍历数据的基本步骤》C++标准模板库(STL)提供了多种容器类型,包括顺序容器、关联容器、无序关联容器和容器适配器,每种容器都有其特定的用途和特性,:本文主要介绍C... 目录(1)容器及简要描述‌php顺序容器‌‌关联容器‌‌无序关联容器‌(基于哈希表):‌容器适配器‌:(

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

使用JavaScript操作本地存储

《使用JavaScript操作本地存储》这篇文章主要为大家详细介绍了JavaScript中操作本地存储的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录本地存储:localStorage 和 sessionStorage基本使用方法1. localStorage

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象