Az - EntraID 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)
Note que nem todas as permissões granulares dos papéis integrados no Entra ID são elegíveis para serem usadas em papéis personalizados.
Este papel contém as permissões granulares necessárias para poder atribuir papéis a principais e para dar mais permissões a papéis. Ambas as ações podem ser abusadas para escalar privilégios.
Atribuir papel a um usuário:
Adicionar mais permissões a um papel:
microsoft.directory/applications/credentials/update
Isso permite que um atacante adicione credenciais (senhas ou certificados) a aplicativos existentes. Se o aplicativo tiver permissões privilegiadas, o atacante pode se autenticar como esse aplicativo e obter essas permissões.
microsoft.directory/applications.myOrganization/credentials/update
Isso permite as mesmas ações que applications/credentials/update
, mas restrito a aplicativos de diretório único.
microsoft.directory/applications/owners/update
Ao se adicionar como proprietário, um atacante pode manipular o aplicativo, incluindo credenciais e permissões.
microsoft.directory/applications/allProperties/update
Um atacante pode adicionar uma URI de redirecionamento a aplicativos que estão sendo usados pelos usuários do locatário e, em seguida, compartilhar com eles URLs de login que usam a nova URL de redirecionamento para roubar seus tokens. Observe que, se o usuário já estiver logado no aplicativo, a autenticação será automática, sem que o usuário precise aceitar nada.
Observe que também é possível alterar as permissões que o aplicativo solicita para obter mais permissões, mas, nesse caso, o usuário precisará aceitar novamente o prompt que solicita todas as permissões.
microsoft.directory/servicePrincipals/credentials/update
Isso permite que um atacante adicione credenciais a principais serviços existentes. Se o principal serviço tiver privilégios elevados, o atacante pode assumir esses privilégios.
A nova senha gerada não aparecerá no console da web, então isso pode ser uma maneira discreta de manter a persistência sobre um principal de serviço.
A partir da API, elas podem ser encontradas com: az ad sp list --query '[?length(keyCredentials) > 0 || length(passwordCredentials) > 0].[displayName, appId, keyCredentials, passwordCredentials]' -o json
Se você receber o erro "code":"CannotUpdateLockedServicePrincipalProperty","message":"Property passwordCredentials is invalid."
é porque não é possível modificar a propriedade passwordCredentials do SP e primeiro você precisa desbloqueá-la. Para isso, você precisa de uma permissão (microsoft.directory/applications/allProperties/update
) que permite que você execute:
microsoft.directory/servicePrincipals/synchronizationCredentials/manage
Isso permite que um atacante adicione credenciais a principais de serviço existentes. Se o principal de serviço tiver privilégios elevados, o atacante pode assumir esses privilégios.
microsoft.directory/servicePrincipals/owners/update
Semelhante a aplicativos, esta permissão permite adicionar mais proprietários a um principal de serviço. Possuir um principal de serviço permite controle sobre suas credenciais e permissões.
Depois de adicionar um novo proprietário, tentei removê-lo, mas a API respondeu que o método DELETE não era suportado, mesmo sendo o método que você precisa usar para excluir o proprietário. Portanto, você não pode remover proprietários atualmente.
microsoft.directory/servicePrincipals/disable
e enable
Essas permissões permitem desabilitar e habilitar principais de serviço. Um atacante poderia usar essa permissão para habilitar um principal de serviço ao qual ele pudesse obter acesso de alguma forma para escalar privilégios.
Observe que, para essa técnica, o atacante precisará de mais permissões para assumir o controle do principal de serviço habilitado.
microsoft.directory/servicePrincipals/getPasswordSingleSignOnCredentials
& microsoft.directory/servicePrincipals/managePasswordSingleSignOnCredentials
Essas permissões permitem criar e obter credenciais para single sign-on, o que pode permitir o acesso a aplicativos de terceiros.
microsoft.directory/groups/allProperties/update
Esta permissão permite adicionar usuários a grupos privilegiados, levando à escalada de privilégios.
Nota: Esta permissão exclui grupos atribuíveis a funções do Entra ID.
microsoft.directory/groups/owners/update
Esta permissão permite se tornar um proprietário de grupos. Um proprietário de um grupo pode controlar a associação e as configurações do grupo, potencialmente escalando privilégios para o grupo.
Nota: Esta permissão exclui grupos atribuíveis a funções do Entra ID.
microsoft.directory/groups/members/update
Esta permissão permite adicionar membros a um grupo. Um atacante poderia adicionar a si mesmo ou contas maliciosas a grupos privilegiados, o que pode conceder acesso elevado.
microsoft.directory/groups/dynamicMembershipRule/update
Esta permissão permite atualizar a regra de associação em um grupo dinâmico. Um atacante poderia modificar as regras dinâmicas para incluir a si mesmo em grupos privilegiados sem adição explícita.
Nota: Esta permissão exclui grupos atribuíveis a funções do Entra ID.
Pode ser possível para os usuários escalarem privilégios modificando suas próprias propriedades para serem adicionados como membros de grupos dinâmicos. Para mais informações, consulte:
Az - Dynamic Groups Privescmicrosoft.directory/users/password/update
Esta permissão permite redefinir a senha de usuários não administradores, permitindo que um potencial atacante escale privilégios para outros usuários. Esta permissão não pode ser atribuída a funções personalizadas.
microsoft.directory/users/basic/update
Essa permissão permite modificar as propriedades do usuário. É comum encontrar grupos dinâmicos que adicionam usuários com base nos valores das propriedades, portanto, essa permissão pode permitir que um usuário defina o valor da propriedade necessária para ser membro de um grupo dinâmico específico e escale privilégios.
Políticas de acesso condicional mal configuradas que exigem MFA podem ser contornadas, verifique:
Az - Conditional Access Policies & MFA Bypassmicrosoft.directory/devices/registeredOwners/update
Esta permissão permite que atacantes se atribuam como proprietários de dispositivos para ganhar controle ou acesso a configurações e dados específicos do dispositivo.
microsoft.directory/devices/registeredUsers/update
Esta permissão permite que atacantes associem sua conta a dispositivos para obter acesso ou contornar políticas de segurança.
microsoft.directory/deviceLocalCredentials/password/read
Esta permissão permite que atacantes leiam as propriedades das credenciais da conta de administrador local de backup para dispositivos associados ao Microsoft Entra, incluindo a senha
microsoft.directory/bitlockerKeys/key/read
Esta permissão permite acessar as chaves do BitLocker, o que pode permitir que um atacante decifre unidades, comprometendo a confidencialidade dos dados.
microsoft.directory/applications/permissions/update
microsoft.directory/servicePrincipals/permissions/update
microsoft.directory/applications.myOrganization/allProperties/update
microsoft.directory/applications/allProperties/update
microsoft.directory/servicePrincipals/appRoleAssignedTo/update
microsoft.directory/applications/appRoles/update
microsoft.directory/applications.myOrganization/permissions/update
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)