AWS - KMS Persistence

Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Red Team de HackTricks en AWS)!

Otras formas de apoyar a HackTricks:

KMS

Para más información, consulta:

pageAWS - KMS Enum

Conceder acceso a través de políticas de KMS

Un atacante podría utilizar el permiso kms:PutKeyPolicy para dar acceso a una clave a un usuario bajo su control o incluso a una cuenta externa. Consulta la página de Privilegio Escalado de KMS para más información.

Concesión Eterna

Las concesiones son otra forma de otorgar a un principal algunos permisos sobre una clave específica. Es posible otorgar una concesión que permita a un usuario crear concesiones. Además, un usuario puede tener varias concesiones (incluso idénticas) sobre la misma clave.

Por lo tanto, es posible que un usuario tenga 10 concesiones con todos los permisos. El atacante debe monitorear esto constantemente. Y si en algún momento se elimina una concesión, se deben generar otras 10.

(Usamos 10 y no 2 para poder detectar que se eliminó una concesión mientras el usuario aún tiene algunas concesiones)

# 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>
Aprende hacking en AWS desde cero hasta experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Última actualización