Az - PTA - Pass-through Authentication

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks:

Informações básicas

A partir da documentação: A Autenticação de Passagem do Azure Active Directory (Azure AD) permite que seus usuários façam login em aplicativos locais e baseados em nuvem usando as mesmas senhas. Essa funcionalidade oferece aos seus usuários uma melhor experiência - uma senha a menos para lembrar - e reduz os custos de suporte de TI, pois seus usuários têm menos probabilidade de esquecer como fazer login. Quando os usuários fazem login usando o Azure AD, essa funcionalidade valida as senhas dos usuários diretamente contra o Active Directory local.

No PTA, as identidades são sincronizadas, mas as senhas não são, como no PHS.

A autenticação é validada no AD local e a comunicação com a nuvem é feita por meio de um agente de autenticação em execução em um servidor local (não precisa estar no DC local).

Fluxo de autenticação

  1. Para fazer login, o usuário é redirecionado para o Azure AD, onde ele envia o nome de usuário e a senha

  2. As credenciais são criptografadas e definidas em uma fila no Azure AD

  3. O agente de autenticação local coleta as credenciais da fila e as descriptografa. Esse agente é chamado de "agente de autenticação de passagem" ou agente PTA.

  4. O agente valida as credenciais contra o AD local e envia a resposta de volta ao Azure AD, que, se a resposta for positiva, completa o login do usuário.

Se um atacante comprometer o PTA, ele pode ver todas as credenciais da fila (em texto claro). Ele também pode validar quaisquer credenciais no AzureAD (ataque semelhante ao chaveiro Skeleton).

Local -> nuvem

Se você tiver acesso de administrador ao servidor Azure AD Connect com o agente PTA em execução, você pode usar o módulo AADInternals para inserir uma backdoor que irá validar TODAS as senhas introduzidas (portanto, todas as senhas serão válidas para autenticação):

Install-AADIntPTASpy

Se a instalação falhar, isso provavelmente se deve à falta de Microsoft Visual C++ 2015 Redistributables.

Também é possível ver as senhas em texto claro enviadas para o agente PTA usando o seguinte cmdlet na máquina onde a backdoor anterior foi instalada:

Get-AADIntPTASpyLog -DecodePasswords

Este backdoor irá:

  • Criar uma pasta oculta C:\PTASpy

  • Copiar um PTASpy.dll para C:\PTASpy

  • Injetar PTASpy.dll no processo AzureADConnectAuthenticationAgentService

Quando o serviço AzureADConnectAuthenticationAgent é reiniciado, o PTASpy é "descarregado" e deve ser reinstalado.

Nuvem -> On-Prem

Após obter privilégios GA na nuvem, é possível registrar um novo agente PTA configurando-o em uma máquina controlada pelo atacante. Uma vez que o agente está configurado, podemos repetir os passos anteriores para autenticar usando qualquer senha e também obter as senhas em texto claro.

SSO Contínuo

É possível usar o SSO Contínuo com PTA, o que é vulnerável a outros abusos. Verifique em:

pageAz - Seamless SSO

Referências

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras formas de apoiar o HackTricks:

Última actualización