谷歌云对象存储攻防

文章首发于:火线 Zone 社区(https://zone.huoxian.cn/)
火线 Zone-云安全社区zone.huoxian.cn/
本文主要介绍谷歌云对象存储攻防的方式。
01 存储桶配置错误-公开访问

当创建的存储桶配置了 allUsers 拥有 GCS 对象的读取权限时,该存储桶可以被任何用户公开访问。

02 Bucket 爆破
当不存在时访问会提示 NoSuchBucket。

当存在时会出在下面情况,公开访问和拒绝访问。


03 Bucket Object 遍历
当对 allUsers 配置了 Storage Object Viewer 或者 Storage Legacy Bucket Reader 权限时就会将存储桶内容遍历出来并且可以读文件内容。

04 任意文件上传和覆盖
当存储桶配置了 allUsers 拥有 Storage Legacy Bucket Owner、Storage Object Admin 或者 Storage Legacy Bucket Writer 权限时,任何用户都可以上传任意文件到存储桶并覆盖已经存在的文件。


05 SERVICE ACCOUNT 泄漏
Github 代码中泄露
网站 JS 代码

06 Bucket IAM 策略可写

访问权限控制为统一时,对象访问权限完全由存储桶级权限 (IAM) 进行控制。
直接访问存储桶发现 AccessDenied。

查看 Bucket IAM 策略。

上图标识部分表示所有的谷歌认证用户都有权有权获取和设置任意 IAM 策略,通过 gsutil 去修改 IAM 策略。

再次去访问存储桶

07 Object ACL 可写

访问存储桶对象时提示 AccessDenied

当访问权限控制为精细控制时,查看 Object ACL,发现所有谷歌认证用户都能修改 Object ACL。

gsutil acl ch -u allUsers:R gs://new2_test/1.txt

修改 ACL 后任何用户都可以访问。

版权声明: 本文为 InfoQ 作者【火线安全】的原创文章。
原文链接:【http://xie.infoq.cn/article/21155a94b79ba383300ae415d】。文章转载请联系作者。
评论