<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios github** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
Existem outras associações de contas e privilégios de token de acesso que também podem ser úteis durante avaliações de segurança ao encadear múltiplos vetores de ataque.
A Lista de Controle de Acesso (ACL) do objeto **AdminSDHolder** é usada como um modelo para **copiar****permissões** para **todos os "grupos protegidos"** no Active Directory e seus membros. Grupos protegidos incluem grupos privilegiados como Admins do Domínio, Administradores, Admins da Empresa e Admins do Esquema.\
Por padrão, a ACL deste grupo é copiada dentro de todos os "grupos protegidos". Isso é feito para evitar alterações intencionais ou acidentais nesses grupos críticos. No entanto, se um atacante modificar a ACL do grupo **AdminSDHolder**, por exemplo, concedendo permissões completas a um usuário comum, esse usuário terá permissões completas em todos os grupos dentro do grupo protegido (em uma hora).\
E se alguém tentar excluir esse usuário dos Admins do Domínio (por exemplo) em uma hora ou menos, o usuário estará de volta ao grupo.
Se você não quiser esperar uma hora, pode usar um script PS para fazer a restauração acontecer instantaneamente: [https://github.com/edemilliere/ADSI/blob/master/Invoke-ADSDPropagation.ps1](https://github.com/edemilliere/ADSI/blob/master/Invoke-ADSDPropagation.ps1)
[**Mais informações em ired.team.**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/how-to-abuse-and-backdoor-adminsdholder-to-obtain-domain-admin-persistence)
Use [`PsService`](https://docs.microsoft.com/en-us/sysinternals/downloads/psservice) ou `sc`, do Sysinternals, para verificar permissões em um serviço.
Isso confirma que o grupo Server Operators tem o direito de acesso [SERVICE\_ALL\_ACCESS](https://docs.microsoft.com/en-us/windows/win32/services/service-security-and-access-rights), o que nos dá controle total sobre este serviço.
Você pode abusar deste serviço para [**fazer o serviço executar comandos arbitrários**](https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation#modify-service-binary-path) e escalar privilégios.
Isso ocorre porque este grupo concede aos seus **membros** os privilégios [**`SeBackup`**](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#sebackupprivilege-3.1.4) e [**`SeRestore`**](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#serestoreprivilege-3.1.5). O **SeBackupPrivilege** nos permite **atravessar qualquer pasta e listar** o conteúdo da pasta. Isso nos permitirá **copiar um arquivo de uma pasta,** mesmo que nada mais esteja concedendo permissões. No entanto, para abusar dessas permissões para copiar um arquivo, a flag [**FILE\_FLAG\_BACKUP\_SEMANTICS**](https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createfilea) \*\*\*\* deve ser usada. Portanto, ferramentas especiais são necessárias.
Você pode abusar desse acesso para **roubar** o banco de dados do diretório ativo **`NTDS.dit`** para obter todos os **hashes NTLM** de todos os objetos de usuário e computador no domínio.
Usando [**diskshadow**](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/diskshadow), você pode **criar uma cópia de sombra** do **drive `C`** e no drive `F`, por exemplo. Então, você pode roubar o arquivo `NTDS.dit` dessa cópia de sombra, pois ele não estará em uso pelo sistema:
Usar wbadmin.exe é muito semelhante a diskshadow.exe, a ferramenta wbadmin.exe é uma utilidade de linha de comando integrada ao Windows, desde o Windows Vista/Server 2008.
Antes de usá-lo, você precisa [**configurar o sistema de arquivos ntfs para servidor smb**](https://gist.github.com/manesec/9e0e8000446b966d0f0ef74000829801) na máquina atacante.
Um usuário que é membro do grupo **DNSAdmins** ou tem **privilégios de escrita em um objeto de servidor DNS** pode carregar uma **DLL arbitrária** com privilégios de **SYSTEM** no **servidor DNS**.\
Como mostrado neste \*\*\*\* [**post**](https://adsecurity.org/?p=4064), o seguinte ataque pode ser realizado quando o DNS é executado em um Controlador de Domínio (o que é muito comum):
* [**ServerLevelPluginDll**](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dnsp/c9d38538-8827-44e6-aa5e-022a016ed723) nos permite **carregar** uma **DLL** personalizada com **zero verificação** do caminho da DLL. Isso pode ser feito com a ferramenta `dnscmd` a partir da linha de comando
* Quando um membro do grupo **`DnsAdmins`** executa o comando **`dnscmd`** abaixo, a chave do registro `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DNS\Parameters\ServerLevelPluginDll` é preenchida
* Quando o **serviço DNS é reiniciado**, a **DLL** neste caminho será **carregada** (ou seja, um compartilhamento de rede que a conta de máquina do Controlador de Domínio pode acessar)
* Um atacante pode carregar uma **DLL personalizada para obter um shell reverso** ou até mesmo carregar uma ferramenta como Mimikatz como uma DLL para fazer o dump de credenciais.
Então, se você tem um usuário dentro do grupo **DNSAdmins**, você pode fazer o **servidor DNS carregar uma DLL arbitrária com privilégios de SYSTEM** (o serviço DNS roda como `NT AUTHORITY\SYSTEM`). Você pode fazer o servidor DNS carregar um arquivo DLL **local ou remoto** (compartilhado por SMB) executando:
Um exemplo de uma DLL válida pode ser encontrado em [https://github.com/kazkansouh/DNSAdmin-DLL](https://github.com/kazkansouh/DNSAdmin-DLL). Eu mudaria o código da função `DnsPluginInitialize` para algo como:
[**Saiba mais sobre essa escalada de privilégios em ired.team.**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/from-dnsadmins-to-system-to-domain-compromise)
Como detalhado neste [**post**](http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html), também é possível usar [**mimilib.dll**](https://github.com/gentilkiwi/mimikatz/tree/master/mimilib) do criador da ferramenta `Mimikatz` para obter execução de comandos **modificando** o arquivo [**kdns.c**](https://github.com/gentilkiwi/mimikatz/blob/master/mimilib/kdns.c) \*\*\*\* para executar um **reverse shell** de uma linha ou outro comando de nossa escolha.
Outra maneira de **abusar dos privilégios do grupo DnsAdmins** é criando um **registro WPAD**. A pertença a este grupo nos dá o direito de [desativar a segurança de bloqueio de consulta global](https://docs.microsoft.com/en-us/powershell/module/dnsserver/set-dnsserverglobalqueryblocklist?view=windowsserver2019-ps), que por padrão bloqueia esse ataque. O Server 2008 introduziu pela primeira vez a capacidade de adicionar à lista de bloqueio de consulta global em um servidor DNS. Por padrão, o Protocolo de Descoberta Automática de Proxy da Web (WPAD) e o Protocolo de Endereçamento Automático de Túnel Intra-site (ISATAP) estão na lista de bloqueio de consulta global. Esses protocolos são bastante vulneráveis a sequestros, e qualquer usuário do domínio pode criar um objeto de computador ou registro DNS contendo esses nomes.
Após **desativar a lista de bloqueio de consulta global** e criar um **registro WPAD**, **cada máquina** executando WPAD com configurações padrão terá seu **tráfego direcionado através de nossa máquina de ataque**. Poderíamos usar uma ferramenta como [**Responder**](https://github.com/lgandx/Responder) **ou** [**Inveigh**](https://github.com/Kevin-Robertson/Inveigh) **para realizar spoofing de tráfego**, e tentar capturar hashes de senhas e quebrá-las offline ou realizar um ataque SMBRelay.
Membros do grupo [**Leitores de Log de Eventos**](https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/dn579255\(v=ws.11\)?redirectedfrom=MSDN#event-log-readers) \*\*\*\* têm **permissão para acessar os logs de eventos** gerados (como os logs de criação de novos processos). Nos logs, **informações sensíveis** podem ser encontradas. Vejamos como visualizar os logs:
Membros recebem a capacidade de **escrever uma DACL no objeto do domínio**. Um atacante poderia abusar disso para **dar a um usuário** [**DCSync**](dcsync.md) privilégios.\
Este [**repositório GitHub**](https://github.com/gdedrouas/Exchange-AD-Privesc) explica algumas **técnicas** para **escalar privilégios** abusando das permissões deste grupo.
O grupo [**Administradores do Hyper-V**](https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/active-directory-security-groups#hyper-v-administrators) tem acesso total a todos os [recursos do Hyper-V](https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/use/manage-virtual-machines). Se os **Controladores de Domínio** foram **virtualizados**, então os **administradores de virtualização** devem ser considerados **Administradores de Domínio**. Eles poderiam facilmente **criar um clone do Controlador de Domínio ativo** e **montar** o **disco virtual** offline para obter o arquivo **`NTDS.dit`** e extrair os hashes de senha NTLM de todos os usuários no domínio.
Também está bem documentado neste [blog](https://decoder.cloud/2020/01/20/from-hyper-v-admin-to-system/), que ao **deletar** uma máquina virtual, o `vmms.exe` tenta **restaurar as permissões originais do arquivo** no correspondente arquivo **`.vhdx`** e faz isso como `NT AUTHORITY\SYSTEM`, sem se passar pelo usuário. Podemos **deletar o arquivo `.vhdx`** e **criar** um **link físico nativo** para apontar este arquivo para um **arquivo protegido do SYSTEM**, e você receberá permissões completas para ele.
Se o sistema operacional for vulnerável ao [CVE-2018-0952](https://www.tenable.com/cve/CVE-2018-0952) ou [CVE-2019-0841](https://www.tenable.com/cve/CVE-2019-0841), podemos aproveitar isso para ganhar privilégios de SYSTEM. Caso contrário, podemos tentar **tirar vantagem de um aplicativo no servidor que instalou um serviço executado no contexto de SYSTEM**, que pode ser iniciado por usuários não privilegiados.
Um exemplo disso é o **Firefox**, que instala o **`Mozilla Maintenance Service`**. Podemos atualizar [este exploit](https://raw.githubusercontent.com/decoder-it/Hyper-V-admin-EOP/master/hyperv-eop.ps1) (uma prova de conceito para link físico NT) para conceder ao nosso usuário atual permissões completas no arquivo abaixo:
Em seguida, podemos substituir este arquivo por um **malicioso `maintenanceservice.exe`**, **iniciar** o serviço de manutenção e obter execução de comandos como SYSTEM.
membros deste grupo podem **acessar** as **caixas de correio** de **todos** os usuários do domínio.\
Este grupo também tem **controle total** da OU chamada `Microsoft Exchange Security Groups`, que contém o grupo [**`Exchange Windows Permissions`**](privileged-groups-and-token-privileges.md#exchange-windows-permissions) \*\*\*\* (siga o link para ver como abusar deste grupo para privesc).
* \`\`[`SeBackupPrivilege`](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#sebackupprivilege-3.1.4) e [`SeRestorePrivilege`](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#serestoreprivilege-3.1.5)
<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) no github.