Abusando de ACLs/ACEs do Active Directory

Reading time: 5 minutes

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks

VisĂŁo Geral

Contas de Serviço Gerenciadas Delegadas (dMSAs) sĂŁo um novo tipo de principal do AD introduzido com Windows Server 2025. Elas foram projetadas para substituir contas de serviço legadas, permitindo uma “migração” com um clique que copia automaticamente os Nomes de Principal de Serviço (SPNs), associaçÔes de grupo, configuraçÔes de delegação e atĂ© mesmo chaves criptogrĂĄficas da conta antiga para a nova dMSA, proporcionando uma transição suave para as aplicaçÔes e eliminando o risco de Kerberoasting.

Pesquisadores da Akamai descobriram que um Ășnico atributo — msDS‑ManagedAccountPrecededByLink — informa ao KDC qual conta legada uma dMSA “sucede”. Se um atacante puder escrever esse atributo (e alternar msDS‑DelegatedMSAState → 2), o KDC construirĂĄ felizmente um PAC que herda todos os SIDs da vĂ­tima escolhida, permitindo efetivamente que a dMSA se passe por qualquer usuĂĄrio, incluindo Administradores de DomĂ­nio.

O que exatamente Ă© uma dMSA?

  • ConstruĂ­da sobre a tecnologia gMSA, mas armazenada como a nova classe AD msDS‑DelegatedManagedServiceAccount.
  • Suporta uma migração opt-in: chamar Start‑ADServiceAccountMigration vincula a dMSA Ă  conta legada, concede Ă  conta legada acesso de gravação a msDS‑GroupMSAMembership e altera msDS‑DelegatedMSAState = 1.
  • ApĂłs Complete‑ADServiceAccountMigration, a conta substituĂ­da Ă© desativada e a dMSA se torna totalmente funcional; qualquer host que anteriormente usou a conta legada Ă© automaticamente autorizado a obter a senha da dMSA.
  • Durante a autenticação, o KDC incorpora uma dica KERB‑SUPERSEDED‑BY‑USER para que clientes Windows 11/24H2 tentem novamente de forma transparente com a dMSA.

Requisitos para atacar

  1. Pelo menos um Windows Server 2025 DC para que a classe LDAP dMSA e a lĂłgica KDC existam.
  2. Quaisquer direitos de criação de objeto ou gravação de atributo em uma OU (qualquer OU) – por exemplo, Create msDS‑DelegatedManagedServiceAccount ou simplesmente Create All Child Objects. A Akamai descobriu que 91% dos inquilinos do mundo real concedem tais permissĂ”es “benignas” de OU a nĂŁo administradores.
  3. Capacidade de executar ferramentas (PowerShell/Rubeus) de qualquer host associado ao domĂ­nio para solicitar tickets Kerberos. Nenhum controle sobre o usuĂĄrio vĂ­tima Ă© necessĂĄrio; o ataque nunca toca a conta alvo diretamente.

Passo a passo: escalonamento de privilégios BadSuccessor

  1. Localize ou crie uma dMSA que vocĂȘ controla
bash
New‑ADServiceAccount Attacker_dMSA `
‑DNSHostName ad.lab `
‑Path "OU=temp,DC=lab,DC=local"

Como vocĂȘ criou o objeto dentro de uma OU que pode gravar, vocĂȘ possui automaticamente todos os seus atributos.

  1. Simule uma “migração concluĂ­da” em duas gravaçÔes LDAP:
  • Defina msDS‑ManagedAccountPrecededByLink = DN de qualquer vĂ­tima (por exemplo, CN=Administrator,CN=Users,DC=lab,DC=local).
  • Defina msDS‑DelegatedMSAState = 2 (migração concluĂ­da).

Ferramentas como Set‑ADComputer, ldapmodify, ou atĂ© mesmo ADSI Edit funcionam; nĂŁo sĂŁo necessĂĄrios direitos de administrador de domĂ­nio.

  1. Solicite um TGT para a dMSA — Rubeus suporta a flag /dmsa:
bash
Rubeus.exe asktgs /targetuser:attacker_dmsa$ /service:krbtgt/aka.test /dmsa /opsec /nowrap /ptt /ticket:<Machine TGT>

O PAC retornado agora contém o SID 500 (Administrador) além dos grupos Administradores de Domínio/Administradores de Empresa.

Coletar todas as senhas dos usuĂĄrios

Durante migraçÔes legĂ­timas, o KDC deve permitir que a nova dMSA decifre tickets emitidos para a conta antiga antes da transição. Para evitar quebrar sessĂ”es ativas, ele coloca tanto as chaves atuais quanto as chaves anteriores dentro de um novo blob ASN.1 chamado KERB‑DMSA‑KEY‑PACKAGE.

Como nossa migração falsa afirma que a dMSA sucede a vĂ­tima, o KDC copia diligentemente a chave RC4‑HMAC da vĂ­tima para a lista de chaves anteriores – mesmo que a dMSA nunca tenha tido uma senha “anterior”. Essa chave RC4 nĂŁo Ă© salteada, portanto, Ă© efetivamente o hash NT da vĂ­tima, dando ao atacante capacidade de cracking offline ou “pass-the-hash”.

Portanto, vincular em massa milhares de usuĂĄrios permite que um atacante despeje hashes “em escala”, transformando BadSuccessor em um primitivo de escalonamento de privilĂ©gios e comprometimento de credenciais.

Ferramentas

ReferĂȘncias

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks