Ataque e Defesa da Cadeia de Extermínio do Active Directory
Resumo
Este documento foi projetado para ser um recurso útil e informativo para aqueles que buscam entender as táticas, técnicas e procedimentos (TTPs) específicos que os atacantes estão usando para comprometer o Active Directory, além de orientações para mitigação, detecção e prevenção. E entender o Ataque da Cadeia de Extermínio do Active Directory e a Atividade de Táticas Adversárias Modernas de Pós-Exploração.
BadSuccessor - Este repositório contém ferramentas relacionadas ao ataque BadSuccessor - uma nova técnica de escalonamento de privilégios no Active Directory que abusa de uma vulnerabilidade em um recurso introduzido no Windows Server 2025.
AD_Miner - AD Miner é uma ferramenta de auditoria do Active Directory que utiliza consultas cypher para processar dados do banco de dados de grafo do #Bloodhound para descobrir vulnerabilidades de segurança.
Certify - Certify é uma ferramenta em C# para enumerar e abusar de configurações incorretas nos Serviços de Certificado do Active Directory (AD CS).
PSPKIAudit - Conjunto de ferramentas PowerShell para auditoria dos Serviços de Certificado do Active Directory (AD CS).
PowerView - Framework PowerShell de Consciência Situacional
Impacket - Impacket é uma coleção de classes Python para trabalhar com protocolos de rede
aclpwn.py - Exploração de ACL do Active Directory com BloodHound
CrackMapExec - Um canivete suíço para testes de invasão em redes
ADACLScanner - Uma ferramenta com GUI ou linha de comando usada para criar relatórios de listas de controle de acesso (DACLs) e listas de controle de acesso do sistema (SACLs) no Active Directory
zBang - zBang é uma ferramenta de avaliação de risco que detecta ameaças potenciais a contas privilegiadas
SafetyKatz - SafetyKatz é uma combinação de uma versão ligeiramente modificada do projeto Mimikatz do @gentilkiwi e do carregador .NET PE do @subTee.
SharpDump - SharpDump é uma porta em C# da funcionalidade Out-Minidump.ps1 do PowerSploit.
PowerUpSQL - Um Conjunto de Ferramentas PowerShell para Atacar SQL Server
Rubeus - Rubeus é um conjunto de ferramentas em C# para interação bruta com Kerberos e abusos
ADRecon - Uma ferramenta que coleta informações sobre o Active Directory e gera um relatório que pode fornecer uma visão holística do estado atual do ambiente AD alvo
Mimikatz - Utilitário para extrair senhas em texto claro, hashes, código PIN e tickets kerberos da memória, mas também realizar pass-the-hash, pass-the-ticket ou construir Golden tickets
Grouper - Um script PowerShell para ajudar a encontrar configurações vulneráveis na Política de Grupo do AD.
Powermad - Ferramentas PowerShell para exploração de MachineAccountQuota e DNS
RACE - RACE é um módulo PowerShell para executar ataques de ACL contra alvos Windows.
DomainPasswordSpray - DomainPasswordSpray é uma ferramenta escrita em PowerShell para realizar um ataque de pulverização de senhas contra usuários de um domínio.
MailSniper - MailSniper é uma ferramenta de teste de penetração para pesquisar e-mails em um ambiente Microsoft Exchange por termos específicos (senhas, informações privilegiadas, informações de arquitetura de rede, etc.)
LAPSToolkit - Ferramenta para auditar e atacar ambientes LAPS.
CredDefense - Defesa de Credenciais e Red Teaming para Ambientes Windows
ldapdomaindump - Despejador de informações do Active Directory via LDAP
SpoolSample - Ferramenta PoC para coagir hosts Windows a autenticar em outras máquinas através da interface RPC MS-RPRN
adconnectdump - Extração de senha do Azure AD Connect
o365recon - Script para recuperar informações via O365 com uma credencial válida
ROADtools - ROADtools é um framework para interagir com Azure AD.
Stormspotter - Stormspotter cria um “grafo de ataque” dos recursos em uma assinatura do Azure.
AADInternals - AADInternals é um módulo PowerShell para administrar Azure AD e Office 365
Invoke-TrimarcADChecks - O script PowerShell Invoke-TrimarcADChecks.ps1 foi projetado para coletar dados de uma floresta AD de domínio único para realizar uma Avaliação de Segurança do Active Directory (ADSA).
Create-Tiers in AD - Título do projeto: Implantação Automática de Níveis no Active Directory em qualquer ambiente
SAMRi10 - Endurecimento do Acesso Remoto ao SAM no Windows 10/Server 2016
Net Cease - Endurecimento da Enumeração de Sessão Net
PingCastle - Uma ferramenta projetada para avaliar rapidamente o nível de segurança do Active Directory com uma metodologia baseada em avaliação de risco e um framework de maturidade
Reset the krbtgt account password/keys - Este script permitirá redefinir a senha da conta krbtgt e chaves relacionadas, minimizando a probabilidade de problemas de autenticação Kerberos causados pela operação
RiskySPN - RiskySPNs é uma coleção de scripts PowerShell focados em detectar e abusar de contas associadas a SPNs (Service Principal Name).
Deploy-Deception - Um módulo PowerShell para implantar objetos de isca no Active Directory
SpoolerScanner - Verifica se MS-RPRN está disponível remotamente com powershell/c#
dcept - Uma ferramenta para implantar e detectar o uso de honeytokens do Active Directory
LogonTracer - Investigue logons maliciosos do Windows visualizando e analisando o log de eventos do Windows
DCSYNCMonitor - Monitora ataques DCSYNC e DCSHADOW e cria eventos personalizados do Windows para esses eventos
Sigma - Formato de Assinatura Genérico para Sistemas SIEM
Sysmon - System Monitor (Sysmon) é um serviço de sistema Windows e driver de dispositivo que, uma vez instalado em um sistema, permanece residente durante as reinicializações do sistema para monitorar e registrar a atividade do sistema no log de eventos do Windows.
SysmonSearch - Investigue atividades suspeitas visualizando o log de eventos do Sysmon
ClrGuard - ClrGuard é um projeto de prova de conceito para explorar a instrumentação do Common Language Runtime (CLR) para fins de segurança.
Get-InjectedThread - Get-InjectedThread examina cada thread em execução para determinar se é resultado de injeção de memória.
SilkETW - SilkETW e SilkService são wrappers C# flexíveis para ETW, destinados a abstrair as complexidades do ETW e fornecer às pessoas uma interface simples para realizar pesquisas e introspecção.
WatchAD - Sistema de Detecção de Intrusão de Segurança AD
Sparrow - Sparrow.ps1 foi criado pela equipe de Forense em Nuvem da CISA para ajudar a detectar possíveis contas e aplicativos comprometidos no ambiente Azure/m365.
DFIR-O365RC - O módulo PowerShell DFIR-O365RC é um conjunto de funções que permitem ao analista DFIR coletar logs relevantes para investigações de Comprometimento de Email Comercial do Office 365.
ADTimeline - O script ADTimeline gera uma linha do tempo baseada em metadados de replicação do Active Directory para objetos considerados de interesse.
Locksmith - Uma pequena ferramenta criada para encontrar e corrigir configurações incorretas comuns nos Serviços de Certificado do Active Directory.
FalconHound - FalconHound é uma multi-ferramenta de equipe azul. Permite utilizar e potencializar o poder do BloodHound de forma mais automatizada. Projetado para ser usado em conjunto com um SIEM ou outra ferramenta de agregação de logs.
PlumHound - Bloodhound para Equipes Azuis e Roxas.
Configuração do Sysmon
sysmon-modular - Um repositório de configuração do Sysmon para que todos possam personalizar
sysmon-dfir - Fontes, configuração e como detectar coisas malignas utilizando o Microsoft Sysmon.
sysmon-config - Modelo de arquivo de configuração do Sysmon com rastreamento de eventos de alta qualidade padrão
Verificações de Segurança do Active Directory (por Sean Metcalf - @Pyrotek3)
Recomendações Gerais
Gerenciar senhas de administrador local (LAPS).
Implementar o Modo Administrador Restrito do RDP (conforme necessário).
Remover sistemas operacionais não suportados da rede.
Monitorar tarefas agendadas em sistemas sensíveis (DCs, etc.).
Garantir que as senhas de gerenciamento OOB (DSRM) sejam alteradas regularmente e armazenadas de forma segura.
Usar SMB v2/v3+
A senha do Administrador de domínio padrão e do KRBTGT deve ser alterada todo ano e quando um administrador AD sai.
Remover confianças que não são mais necessárias e habilitar a filtragem SID conforme apropriado.
Todas as autenticações de domínio devem ser configuradas (quando possível) para: "Enviar apenas resposta NTLMv2, recusar LM e NTLM."
Bloquear acesso à internet para DCs, servidores e todos os sistemas de administração.
Proteger Credenciais de Administrador
Nenhuma conta de "usuário" ou computador em grupos de administradores.
Garantir que todas as contas de administrador sejam "sensíveis e não possam ser delegadas".
Adicionar contas de administrador ao grupo "Usuários Protegidos" (requer Controladores de Domínio Windows Server 2012 R2, DFL 2012R2 para proteção de domínio).
Desabilitar todas as contas de administrador inativas e remover de grupos privilegiados.
Proteger Credenciais de Administrador AD
Limitar a associação de administradores AD (DA, EA, Schema Admins, etc.) e usar apenas grupos de delegação personalizados.
Administração 'em Níveis' mitigando o impacto do roubo de credenciais.
Garantir que administradores façam logon apenas em estações de trabalho e servidores aprovados.
Aproveitar associação temporária baseada em tempo para todas as contas de administrador
Proteger Credenciais de Contas de Serviço
Limitar a sistemas do mesmo nível de segurança.
Aproveitar "Contas de Serviço Gerenciadas (em Grupo)" (ou senha >20 caracteres) para mitigar roubo de credenciais (kerberoast).
Implementar FGPP (DFL =>2008) para aumentar os requisitos de senha para contas de serviço e administradores.
Restrições de logon – impedir logon interativo e limitar a capacidade de logon a computadores específicos.
Desabilitar contas de serviço inativas e remover de grupos privilegiados.
Proteger Recursos
Segmentar a rede para proteger sistemas administrativos e críticos.
Implantar IDS para monitorar a rede corporativa interna.
Dispositivos de rede e gerenciamento OOB em rede separada.
Proteger Controladores de Domínio
Executar apenas software e serviços para suportar AD.
Grupos e usuários mínimos com direitos administrativos/logon nos DCs.
Garantir que as correções sejam aplicadas antes de executar DCPromo (especialmente MS14-068 e outras correções críticas).
Validar tarefas agendadas e scripts.
Proteger Estações de Trabalho (e Servidores)
Corrigir rapidamente, especialmente vulnerabilidades de escalonamento de privilégio.
Implantar patch de back-port de segurança (KB2871997).
Definir chave de registro Wdigest como 0 (KB2871997/Windows 8.1/2012R2+): HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersWdigest
Implantar lista de permissões de estação de trabalho (Microsoft AppLocker) para bloquear execução de código em pastas de usuário – diretório inicial e caminho de perfil.
Implantar tecnologia de sandboxing de aplicativos (EMET) para mitigar explorações de memória de aplicativos (0-days).
Registro em Log
Habilitar auditoria aprimorada
"Auditoria: Forçar configurações de subcategoria de política de auditoria (Windows Vista ou posterior) a substituir configurações de categoria de política de auditoria"
Habilitar registro de módulo PowerShell ("*") e encaminhar logs para servidor de log central (WEF ou outro método).
Habilitar registro de processo CMD e aprimoramento (KB3004375) e encaminhar logs para servidor de log central.
SIEM ou equivalente para centralizar o máximo possível de dados de log.
Sistema de Análise Comportamental de Usuário para conhecimento aprimorado da atividade do usuário (como Microsoft ATA).
Verificações do Profissional de Segurança
Identificar quem tem direitos administrativos AD (domínio/floresta).
Identificar quem pode fazer logon em Controladores de Domínio (e direitos administrativos ao ambiente virtual que hospeda DCs virtuais).
Escanear Domínios Active Directory, UOs, AdminSDHolder e GPOs em busca de permissões personalizadas inadequadas.
Garantir que administradores AD (aka Administradores de Domínio) protejam suas credenciais não fazendo logon em sistemas não confiáveis (estações de trabalho).
Limitar direitos de contas de serviço que atualmente são DA (ou equivalente).
Atualizações de Segurança Importantes
CVE
Título
Descrição
Link
CVE-2020-1472
Vulnerabilidade de Elevação de Privilégio no Netlogon
Existe uma vulnerabilidade de elevação de privilégio quando um invasor estabelece uma conexão de canal seguro Netlogon vulnerável com um controlador de domínio, usando o Protocolo Remoto Netlogon (MS-NRPC). Um invasor que explorar com sucesso a vulnerabilidade pode executar um aplicativo especialmente criado em um dispositivo na rede.
Existe uma vulnerabilidade de violação no Microsoft Windows quando um invasor intermediário consegue contornar com sucesso a proteção MIC (Message Integrity Check) do NTLM, conhecida como 'Vulnerabilidade de Violação do NTLM do Windows'.
Vulnerabilidade de Elevação de Privilégio no Active Directory
Existe uma vulnerabilidade de elevação de privilégio nas confianças de Floresta do Active Directory devido a uma configuração padrão que permite que um invasor na floresta confiante solicite delegação de um TGT para uma identidade da floresta confiável, conhecida como 'Vulnerabilidade de Elevação de Privilégio no Active Directory'.
Vulnerabilidade de Execução Remota de Código nos Serviços de Área de Trabalho Remota
Existe uma vulnerabilidade de execução remota de código nos Serviços de Área de Trabalho Remota, anteriormente conhecidos como Serviços de Terminal, quando um invasor não autenticado se conecta ao sistema alvo usando RDP e envia solicitações especialmente criadas, conhecida como 'Vulnerabilidade de Execução Remota de Código nos Serviços de Área de Trabalho Remota'.
Vulnerabilidade de Elevação de Privilégio no Microsoft Exchange Server
Existe uma vulnerabilidade de elevação de privilégio no Microsoft Exchange Server, conhecida como "Vulnerabilidade de Elevação de Privilégio no Microsoft Exchange Server". Isso afeta o Microsoft Exchange Server.
Detecção
Ataque
ID do Evento
Enumeração de Contas e Grupos
4798: A associação de grupo local de um usuário foi enumerada 4799: A associação de grupo local habilitado para segurança foi enumerada
AdminSDHolder
4780: A ACL foi definida em contas que são membros de grupos de administradores
Kekeo
4624: Logon de Conta 4672: Logon de Administrador 4768: Solicitação de TGS Kerberos
Silver Ticket
4624: Logon de Conta 4634: Logoff de Conta 4672: Logon de Administrador
Golden Ticket
4624: Logon de Conta 4672: Logon de Administrador
PowerShell
4103: Registro de Bloco de Script 400: Ciclo de Vida do Mecanismo 403: Ciclo de Vida do Mecanismo 4103: Registro de Módulo 600: Ciclo de Vida do Provedor
DCShadow
4742: Uma conta de computador foi alterada 5137: Um objeto de serviço de diretório foi criado 5141: Um objeto de serviço de diretório foi excluído 4929: Um contexto de nomeação de origem de réplica do Active Directory foi removido
Skeleton Keys
4673: Um serviço privilegiado foi chamado 4611: Um processo de logon confiável foi registrado na Autoridade de Segurança Local 4688: Um novo processo foi criado 4689: Um novo processo foi encerrado
PYKEK MS14-068
4672: Logon de Administrador 4624: Logon de Conta 4768: Solicitação de TGS Kerberos
Kerberoasting
4769: Um tíquete Kerberos foi solicitado
S4U2Proxy
4769: Um tíquete Kerberos foi solicitado
Movimentação Lateral
4688: Um novo processo foi criado 4689: Um processo foi encerrado 4624: Uma conta foi conectada com sucesso 4625: Uma conta falhou ao conectar
DNSAdmin
770: DLL de plugin do servidor DNS foi carregada 541: A configuração serverlevelplugindll no escopo . foi definida como <caminho da dll> 150: O servidor DNS não pôde carregar ou inicializar a DLL do plugin
DCSync
4662: Uma operação foi executada em um objeto
Spray de Senhas
4625: Uma conta falhou ao conectar 4771: A pré-autenticação Kerberos falhou 4648: Uma tentativa de logon usando credenciais explícitas foi realizada
Na medida do possível sob a lei, Rahmat Nurfauzi "@infosecn1nja" renunciou a todos os direitos autorais e direitos conexos ou vizinhos a este trabalho.
Vulnerabilidade de Execução Remota de Código no SMB do Windows
O servidor SMBv1 no Microsoft Windows Vista SP2; Windows Server 2008 SP2 e R2 SP1; Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold e R2; Windows RT 8.1; e Windows 10 Gold, 1511 e 1607; e Windows Server 2016 permite que atacantes remotos executem código arbitrário por meio de pacotes especialmente criados, conhecida como "Vulnerabilidade de Execução Remota de Código no SMB do Windows". Esta vulnerabilidade é diferente das descritas em CVE-2017-0144, CVE-2017-0145, CVE-2017-0146 e CVE-2017-0148.
Vulnerabilidade de Rebaixamento do SAM e LSAD do Windows
As implementações do protocolo SAM e LSAD no Microsoft Windows Vista SP2, Windows Server 2008 SP2 e R2 SP1, Windows 7 SP1, Windows 8.1, Windows Server 2012 Gold e R2, Windows RT 8.1 e Windows 10 Gold e 1511 não estabelecem corretamente um canal RPC, o que permite que invasores intermediários realizem ataques de rebaixamento de protocolo e se passem por usuários modificando o fluxo de dados cliente-servidor, conhecida como "Vulnerabilidade de Rebaixamento do SAM e LSAD do Windows" ou "BADLOCK".
Vulnerabilidade no Kerberos Pode Permitir Elevação de Privilégio (3011780)
O Centro de Distribuição de Chaves Kerberos (KDC) no Microsoft Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2 e R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1 e Windows Server 2012 Gold e R2 permite que usuários de domínio autenticados remotamente obtenham privilégios de administrador de domínio por meio de uma assinatura forjada em um tíquete, conforme explorado na natureza em novembro de 2014, conhecida como "Vulnerabilidade de Checksum do Kerberos".
Vulnerabilidade nas Preferências de Política de Grupo Pode Permitir Elevação de Privilégio
A implementação de Política de Grupo no Microsoft Windows Vista SP2, Windows Server 2008 SP2 e R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1 e Windows Server 2012 Gold e R2 não lida adequadamente com a distribuição de senhas, o que permite que usuários autenticados remotamente obtenham informações de credenciais confidenciais e, consequentemente, ganhem privilégios ao aproveitar o acesso ao compartilhamento SYSVOL, conforme explorado na natureza em maio de 2014, conhecida como "Vulnerabilidade de Elevação de Privilégio de Senha das Preferências de Política de Grupo".