GCP - Public Buckets Privilege Escalation

学习与实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习与实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)

支持 HackTricks

存储桶权限提升

如果存储桶策略允许“allUsers”或“allAuthenticatedUsers”写入其存储桶策略storage.buckets.setIamPolicy 权限),那么任何人都可以修改存储桶策略并授予自己完全访问权限。

检查权限

检查存储桶权限有两种方法。第一种是通过请求 https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam 或运行 gsutil iam get gs://BUCKET_NAME 来请求它们。

然而,如果您的用户(可能属于“allUsers”或“allAuthenticatedUsers”)没有权限读取存储桶的 iam 策略(storage.buckets.getIamPolicy),那将无法工作。

另一种始终有效的选项是使用存储桶的 testPermissions 端点来确定您是否拥有指定的权限,例如访问:https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam/testPermissions?permissions=storage.buckets.delete&permissions=storage.buckets.get&permissions=storage.buckets.getIamPolicy&permissions=storage.buckets.setIamPolicy&permissions=storage.buckets.update&permissions=storage.objects.create&permissions=storage.objects.delete&permissions=storage.objects.get&permissions=storage.objects.list&permissions=storage.objects.update

提升权限

为了将 Storage Admin 授予 allAuthenticatedUsers,可以运行:

gsutil iam ch allAuthenticatedUsers:admin gs://BUCKET_NAME

另一个攻击方法是删除存储桶并在您的帐户中重新创建它以窃取所有权

参考文献

学习和实践AWS黑客技术:HackTricks培训AWS红队专家(ARTE) 学习和实践GCP黑客技术:HackTricks培训GCP红队专家(GRTE)

支持HackTricks

Last updated