AWS - SSO & identitystore 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)
Para más información sobre AWS Identity Center / AWS SSO consulta:
AWS - IAM, Identity Center & SSO EnumTen en cuenta que por defecto, solo los usuarios con permisos del Management Account podrán acceder y controlar el IAM Identity Center. Los usuarios de otras cuentas solo pueden permitirlo si la cuenta es un Delegated Administrator. Consulta la documentación para más información.
Una forma fácil de escalar privilegios en casos como este sería tener un permiso que permita restablecer las contraseñas de los usuarios. Desafortunadamente, solo es posible enviar un correo electrónico al usuario para restablecer su contraseña, por lo que necesitarías acceso al correo electrónico del usuario.
identitystore:CreateGroupMembership
Con este permiso es posible colocar a un usuario dentro de un grupo para que herede todos los permisos que tiene el grupo.
sso:PutInlinePolicyToPermissionSet
, sso:ProvisionPermissionSet
Un atacante con este permiso podría otorgar permisos adicionales a un Conjunto de Permisos que se concede a un usuario bajo su control.
sso:AttachManagedPolicyToPermissionSet
, sso:ProvisionPermissionSet
Un atacante con este permiso podría otorgar permisos adicionales a un Conjunto de Permisos que se concede a un usuario bajo su control.
sso:AttachCustomerManagedPolicyReferenceToPermissionSet
, sso:ProvisionPermissionSet
Un atacante con este permiso podría otorgar permisos adicionales a un Conjunto de Permisos que se concede a un usuario bajo su control.
Para abusar de estos permisos en este caso, necesitas conocer el nombre de una política administrada por el cliente que esté dentro de TODAS las cuentas que se verán afectadas.
sso:CreateAccountAssignment
Un atacante con este permiso podría otorgar un Conjunto de Permisos a un usuario bajo su control a una cuenta.
sso:GetRoleCredentials
Devuelve las credenciales a corto plazo de STS para un nombre de rol dado que está asignado al usuario.
Sin embargo, necesitas un token de acceso que no estoy seguro de cómo obtener (TODO).
sso:DetachManagedPolicyFromPermissionSet
Un atacante con este permiso puede eliminar la asociación entre una política administrada de AWS y el conjunto de permisos especificado. Es posible otorgar más privilegios a través de desvincular una política administrada (política de denegación).
sso:DetachCustomerManagedPolicyReferenceFromPermissionSet
Un atacante con este permiso puede eliminar la asociación entre una política gestionada por el cliente del conjunto de permisos especificado. Es posible otorgar más privilegios a través de desvincular una política gestionada (política de denegación).
sso:DeleteInlinePolicyFromPermissionSet
Un atacante con este permiso puede eliminar los permisos de una política en línea del conjunto de permisos. Es posible otorgar más privilegios al desvincular una política en línea (política de denegación).
sso:DeletePermissionBoundaryFromPermissionSet
Un atacante con este permiso puede eliminar el Límite de Permisos del conjunto de permisos. Es posible otorgar más privilegios al eliminar las restricciones del Conjunto de Permisos dado por el Límite de Permisos.
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)