云服务安全-腾讯云(TencentCloud) 对象存储(COS)安全(1)

云服务安全-腾讯云的第一篇!

//云安全笔记系列为根据火线安全/twiki等知识库所作的笔记摘要,在这感谢大手子们搭建知识库分享技术(*^_^*)

本篇针对腾讯云对象存储(COS)自身的策略/机制/配置等原因可能引起的安全风险做一些总结,下一篇针对结合实际服务的原因引发的云安全风险做总结

腾讯云安全策略

腾讯云的账户中的访问策略包括:

  • 用户组策略
  • 用户策略
  • 存储桶访问控制列表(ACL)
  • 和存储桶策略(Policy)

等不同的策略

当腾讯云的 COS 收到请求时,首先会确认请求者身份,并验证请求者是否拥有相关权限。

首先会进行检验检查用户策略、存储桶访问策略和基于资源的访问控制列表进行鉴权。

img

//图片来自腾讯云官方文档

鉴权不通过返回内容中的 Message 为 Access Denied.

Attention:

在腾讯云的访问策略体系中,如果存储桶访问权限为私有读写,且 Policy 权限为匿名访问,那么 Policy 权限的优先级高于存储桶访问权限。 如果控制台配置了 Policy 权限,默认是对所有用户生效,并且允许所有操作,这时即使存储桶访问权限配置为私有读写,匿名用户也可通过遍历Bucket Object,获取对应的文件。

COS 对象存储

COS(Cloud Object Storage),并非cosplay(

本篇笔记主要记录针对腾讯云 COS 的一些安全事项和攻防技巧

同阿里云的 OSS 一样,这是腾讯云的对象存储

//一些涉及到的基本概念不再赘述啦

Bucket 公开访问

配置不当导致的安全风险。

腾讯云存储桶的访问权限默认为私有读写权限,且存储桶名称的后面会带上一串时间戳:

时间戳实际上是腾讯云账户的 appid,腾讯云特有的一个东西

img

//图片来自火线安全知识库

上图名称后面的 – 加数字 ↑

如果修改了默认配置,设置为公有读私有写,或者公有读写,就会造成对应的信息泄露/篡改风险

Bucket Object 遍历

配置不当导致的安全风险

如果存储桶策略中允许了 Object 的 List 操作(get bucket请求),则在目标资源范围下,会直接将所有的 Bucket Object 显示出来。

img

//图片来自火线安全知识库

其中的 key 键值对(上图中的<Key>1.jpg</Key>)

为存储文件路径,对路径进行 url 拼接可以直接获取对应文件

Bucket 爆破

访问的桶不存在时 ,回显内容是 “No Such Bucket”,以此为依据就可以进行爆破,筛选出来所有的桶

Bucket接管

腾讯云对象存储,不存在 Bucket 问题

与亚马逊的 AWS 不同,腾讯云存在一个 appid (上文提到过)

Bucket 接管的核心操作是利用“桶已经删除,但是解析记录没有删除”创建同名桶进行接管

而腾讯云的桶命名格式是

<bucketname>-<appid>+cos.ap-nanjing.myqcloud.com

appid 是创建桶的时候,在控制台通过时间戳随机生成的,这就导致无法达成创建同名桶进行接管的操作了

任意文件覆写

腾讯云的对象存储桶不允许存在重复命名,所以当拥有写入权限时,可以通过构造重复文件名的请求进行文件覆写

构造 PUT 请求上传文件内容便可覆写

//具体操作同传统 web 攻防,不再赘述

Bucket ACL 可读/写

配置不当

控制 Bucket 的 ACL 本身有被篡改的风险

当访问一个桶发现拒绝访问(Access Denied)

对当前桶下 /?acl 进行 get 请求,回显内容中 <Permission>字段若为 FULL_CONTROL,意味着 ACL 访问控制为任意可读可写

官方文档中对 ACL 的 Permisson 解释:

FULL_CONTROL 代表匿名用户有完全控制权限,于是在通过 PUT ACL 写入策略,将存储桶的访问权限配置为公有读写:

PUT 请求包中添加:

x-cos-acl:public-read-write

便可以修改 ACL ,让存储桶的权限变为公共可读可写

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇