AWS - IAM Privesc
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Для отримання додаткової інформації про IAM перегляньте:
AWS - IAM, Identity Center & SSO Enumiam:CreatePolicyVersion
Надає можливість створювати нову версію політики IAM, обходячи необхідність у дозволі iam:SetDefaultPolicyVersion
, використовуючи прапорець --set-as-default
. Це дозволяє визначати власні дозволи.
Exploit Command:
Вплив: Прямо ескалює привілеї, дозволяючи будь-яку дію над будь-яким ресурсом.
iam:SetDefaultPolicyVersion
Дозволяє змінювати версію за замовчуванням IAM політики на іншу існуючу версію, потенційно ескалуючи привілеї, якщо нова версія має більше дозволів.
Bash команда:
Вплив: Непряме підвищення привілеїв шляхом надання додаткових дозволів.
iam:CreateAccessKey
Дозволяє створювати ідентифікатор ключа доступу та секретний ключ доступу для іншого користувача, що може призвести до потенційного підвищення привілеїв.
Експлуатація:
Вплив: Пряме підвищення привілеїв шляхом прийняття розширених дозволів іншого користувача.
iam:CreateLoginProfile
| iam:UpdateLoginProfile
Дозволяє створювати або оновлювати профіль входу, включаючи встановлення паролів для входу в консоль AWS, що призводить до прямого підвищення привілеїв.
Експлуатація для створення:
Експлуатація для оновлення:
Вплив: Пряме підвищення привілеїв шляхом входу як "будь-який" користувач.
iam:UpdateAccessKey
Дозволяє активувати деактивований ключ доступу, що потенційно може призвести до несанкціонованого доступу, якщо зловмисник володіє деактивованим ключем.
Експлуатація:
Вплив: Пряме підвищення привілеїв шляхом повторної активації ключів доступу.
iam:CreateServiceSpecificCredential
| iam:ResetServiceSpecificCredential
Дозволяє генерувати або скидувати облікові дані для конкретних служб AWS (наприклад, CodeCommit, Amazon Keyspaces), успадковуючи дозволи асоційованого користувача.
Експлуатація для створення:
Експлуатація для скидання:
Вплив: Пряме підвищення привілеїв у дозволах сервісу користувача.
iam:AttachUserPolicy
|| iam:AttachGroupPolicy
Дозволяє прикріплювати політики до користувачів або груп, безпосередньо підвищуючи привілеї шляхом успадкування дозволів прикріпленої політики.
Експлуатація для користувача:
Експлуатація для Групи:
Вплив: Пряме підвищення привілеїв до всього, що надає політика.
iam:AttachRolePolicy
, ( sts:AssumeRole
|iam:createrole
) | iam:PutUserPolicy
| iam:PutGroupPolicy
| iam:PutRolePolicy
Дозволяє прикріплювати або встановлювати політики до ролей, користувачів або груп, що дозволяє пряме підвищення привілеїв шляхом надання додаткових дозволів.
Експлуатація для ролі:
Експлуатація для вбудованих політик:
Ви можете використовувати політику, таку як:
Вплив: Пряме підвищення привілеїв шляхом додавання дозволів через політики.
iam:AddUserToGroup
Дозволяє додати себе до групи IAM, підвищуючи привілеї шляхом успадкування дозволів групи.
Експлуатація:
Вплив: Пряме підвищення привілеїв до рівня дозволів групи.
iam:UpdateAssumeRolePolicy
Дозволяє змінювати документ політики припущення ролі, що дозволяє припустити роль та її асоційовані дозволи.
Експлуатація:
Де політика виглядає наступним чином, що надає користувачу дозвіл на прийняття ролі:
Вплив: Пряме підвищення привілеїв шляхом прийняття дозволів будь-якої ролі.
iam:UploadSSHPublicKey
|| iam:DeactivateMFADevice
Дозволяє завантажувати SSH публічний ключ для автентифікації в CodeCommit та деактивувати MFA пристрої, що може призвести до потенційного непрямого підвищення привілеїв.
Експлуатація для завантаження SSH ключа:
Експлуатація для деактивації MFA:
Вплив: Непряме підвищення привілеїв шляхом надання доступу до CodeCommit або вимкнення захисту MFA.
iam:ResyncMFADevice
Дозволяє повторну синхронізацію пристрою MFA, що потенційно може призвести до непрямого підвищення привілеїв шляхом маніпуляції захистом MFA.
Bash команда:
Вплив: Непряме підвищення привілеїв шляхом додавання або маніпулювання пристроями MFA.
iam:UpdateSAMLProvider
, iam:ListSAMLProviders
, (iam:GetSAMLProvider
)З цими дозволами ви можете змінити XML-метадані SAML-з'єднання. Потім ви можете зловживати SAML-федерацією для входу з будь-якою роллю, яка їй довіряє.
Зверніть увагу, що при цьому легітимні користувачі не зможуть увійти. Однак ви можете отримати XML, щоб вставити свій, увійти та налаштувати попереднє назад.
TODO: Інструмент, здатний генерувати метадані SAML та входити з вказаною роллю
iam:UpdateOpenIDConnectProviderThumbprint
, iam:ListOpenIDConnectProviders
, (iam:
GetOpenIDConnectProvider
)(Не впевнений у цьому) Якщо зловмисник має ці дозволи, він може додати новий Thumbprint, щоб мати можливість входити в усі ролі, які довіряють постачальнику.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)