GCP - Public Buckets Privilege Escalation
Last updated
Last updated
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE) GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
버킷 정책이 “allUsers” 또는 “allAuthenticatedUsers”가 버킷 정책에 쓸 수 있도록 허용(즉, storage.buckets.setIamPolicy 권한)했다면, 누구나 버킷 정책을 수정하고 자신에게 전체 접근 권한을 부여할 수 있습니다.
버킷에 대한 권한을 확인하는 방법은 2가지가 있습니다. 첫 번째는 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
allAuthenticatedUsers
에게 Storage Admin
권한을 부여하기 위해 다음을 실행할 수 있습니다:
또 다른 공격은 버킷을 제거하고 당신의 계정에서 다시 생성하여 소유권을 훔치는 것입니다.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)