AWS - SSO & identitystore Privesc
Last updated
Last updated
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Para mais informações sobre AWS Identity Center / AWS SSO, confira:
AWS - IAM, Identity Center & SSO EnumNote que por padrão, apenas usuários com permissões da Conta de Gerenciamento poderão acessar e controlar o IAM Identity Center. Usuários de outras contas só podem permitir isso se a conta for um Administrador Delegado. Confira a documentação para mais informações.
Uma maneira fácil de escalar privilégios em casos como este seria ter uma permissão que permita redefinir as senhas dos usuários. Infelizmente, só é possível enviar um e-mail ao usuário para redefinir sua senha, então você precisaria de acesso ao e-mail do usuário.
identitystore:CreateGroupMembership
Com essa permissão, é possível colocar um usuário dentro de um grupo para que ele herde todas as permissões que o grupo possui.
sso:PutInlinePolicyToPermissionSet
, sso:ProvisionPermissionSet
Um atacante com esta permissão poderia conceder permissões extras a um Conjunto de Permissões que é concedido a um usuário sob seu controle
sso:AttachManagedPolicyToPermissionSet
, sso:ProvisionPermissionSet
Um atacante com esta permissão poderia conceder permissões extras a um Conjunto de Permissões que é concedido a um usuário sob seu controle
sso:AttachCustomerManagedPolicyReferenceToPermissionSet
, sso:ProvisionPermissionSet
Um atacante com essa permissão poderia conceder permissões extras a um Conjunto de Permissões que é concedido a um usuário sob seu controle.
Para abusar dessas permissões neste caso, você precisa saber o nome de uma política gerenciada pelo cliente que está dentro de TODAS as contas que serão afetadas.
sso:CreateAccountAssignment
Um atacante com esta permissão poderia atribuir um Conjunto de Permissões a um usuário sob seu controle em uma conta.
sso:GetRoleCredentials
Retorna as credenciais de curto prazo do STS para um nome de função específico que está atribuído ao usuário.
No entanto, você precisa de um token de acesso que não tenho certeza de como obter (TODO).
sso:DetachManagedPolicyFromPermissionSet
Um atacante com essa permissão pode remover a associação entre uma política gerenciada da AWS e o conjunto de permissões especificado. É possível conceder mais privilégios através da desassociação de uma política gerenciada (política de negação).
sso:DetachCustomerManagedPolicyReferenceFromPermissionSet
Um atacante com esta permissão pode remover a associação entre uma política gerenciada pelo cliente e o conjunto de permissões especificado. É possível conceder mais privilégios através da desvinculação de uma política gerenciada (política de negação).
sso:DeleteInlinePolicyFromPermissionSet
Um atacante com esta permissão pode remover as permissões de uma política inline do conjunto de permissões. É possível conceder mais privilégios ao desanexar uma política inline (política de negação).
sso:DeletePermissionBoundaryFromPermissionSet
Um atacante com esta permissão pode remover o Limite de Permissão do conjunto de permissões. É possível conceder mais privilégios removendo as restrições do Conjunto de Permissões dado pelo Limite de Permissão.
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)