AWS - KMS Persistence

Support HackTricks

KMS

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

Grant acces via KMS policies

Зловмисник може використовувати дозвіл kms:PutKeyPolicy для надання доступу до ключа користувачу під його контролем або навіть до зовнішнього облікового запису. Перегляньте KMS Privesc page для отримання додаткової інформації.

Eternal Grant

Гранти - це ще один спосіб надати принципалу деякі дозволи на конкретний ключ. Можливо надати грант, який дозволяє користувачу створювати гранти. Більше того, користувач може мати кілька грантів (навіть ідентичних) на той самий ключ.

Отже, можливо, що користувач має 10 грантів з усіма дозволами. Зловмисник повинен постійно це контролювати. І якщо в якийсь момент 1 грант буде видалено, ще 10 повинні бути згенеровані.

(Ми використовуємо 10, а не 2, щоб мати можливість виявити, що грант був видалений, поки у користувача все ще є деякі гранти)

# To generate grants, generate 10 like this one
aws kms create-grant \
--key-id <key-id> \
--grantee-principal <user_arn> \
--operations "CreateGrant" "Decrypt"

# To monitor grants
aws kms list-grants --key-id <key-id>

Грант може надавати дозволи лише з цього: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations

Підтримайте HackTricks

Last updated