Darren Mar-Elia

Na parte 1 desta publicação do blogue, falei sobre a ameaça que o DCShadow representa para as organizações que utilizam o Microsoft Active Directory (AD). Na parte 2, falarei sobre as medidas que pode tomar para proteger a sua organização.

(Recapitulando rapidamente: O DCShadow é uma funcionalidade da ferramenta de pós-exploração Mimikatz que os atacantes utilizam para criar silenciosamente backdoors no AD, injectando alterações directamente no fluxo de replicação do AD).

Limitar os testes a ambientes de laboratório

A injecção de alterações no AD pode corromper ou mesmo bloquear o AD. Por isso, se quiser simular um ataque DCShadow ou fazer experiências com o DCShadow, faça-o apenas num ambiente de laboratório isolado.

Reforçar as suas defesas

Indicamos em seguida alguns passos que pode seguir para defender o seu ambiente de produção contra o DCShadow:

Monitorizar o acesso privilegiado

Um atacante deve ter acesso privilegiado para usar o DCShadow. E uma vez que um atacante tenha acesso privilegiado, não há realmente nada que se possa fazer para impedi-lo de usar o DCShadow.

Como o Mimikatz é um software de código aberto, um atacante pode fazer uma modificação trivial no código para alterar a sua assinatura e evitar a detecção por software antivírus e de protecção de terminais. E embora ferramentas como o Windows Defender Credential Guard possam impedir o Mimikatz de obter palavras-passe da memória, não se defendem contra a funcionalidade DCShadow (que não depende de palavras-passe).

Por conseguinte, restringir, monitorizar e gerir o acesso privilegiado (por exemplo, com um sistema PAM) é fundamental para evitar um ataque DCShadow.

Monitorizar as alterações aos Sites e Serviços do AD

O aparecimento de objectos de servidor novos e transitórios num site do AD pode indicar um ataque DCShadow. Por conseguinte, recomendo a monitorização da partição de configuração do AD onde estes objectos são armazenados para DCs adicionados temporariamente.

Embora as alterações injectadas pelo DCShadow no fluxo de replicação do AD não sejam capturadas nos registos de eventos de segurança do Windows, o registo (e remoção) de servidores na partição de configuração pelo DCShadow é. Assim, por exemplo, pode configurar notificações no seu sistema SIEM para alertar sobre a criação de objectos de servidor no contentor CN=Sites, CN=Configuração. Ou, se estiver a utilizar uma ferramenta de controlo de alterações do AD, como o Semperis Directory Services (DS) Protector, pode configurar notificações aí:

(Neste exemplo, servidor foi seleccionado como a Classe de Objecto e é enviada uma notificação quando um objecto de servidor é adicionado aos Sites e Serviços do AD).

Desactivar imediatamente as contas comprometidas

Se for detectado um DC falso, desactive imediatamente a conta que o adicionou. Uma vez que o DCShadow tenta encobrir os seus rastos (não deixando nenhum), não é o tipo de ataque que se deva deixar desenvolver, observar e depois agir. É muito provável que seja demasiado tarde e que o atacante já tenha criado backdoors, mas mesmo assim deve desactivar a conta para evitar mais danos.

Iluminar o DCShadow

Mesmo com as acções defensivas acima referidas, deve assumir que, a dada altura, um intruso externo - ou um insider desonesto - obterá acesso privilegiado. E deve assumir que o atacante tem o Mimikatz e sabe como o utilizar.

Para evitar que o AD seja comprometido de formas desconhecidas - e, portanto, irreparáveis -, é necessário poder ver as alterações efectuadas pelo DCShadow. Caso contrário, poderá ter de reconstruir o AD a partir do zero, conforme descrito pela Microsoft em Planning for Compromise.

A melhor e mais directa forma de ver as alterações efectuadas pelo DCShadow é monitorizar o fluxo de replicação do AD.

Em teoria, é possível expor as alterações feitas pelo DCShadow despejando o conteúdo do AD e comparando-o com um backup. No entanto, é complicado (se não impossível) fazer isso na prática. Por exemplo, falei com uma organização que tentou fazer um "dump and diff" quando o AD foi comprometido e, após três semanas de tentativas, ainda não estavam confiantes de que tinham encontrado todas as alterações não autorizadas.

A monitorização do fluxo de replicação do AD também garante visibilidade se um atacante contornar o registo de eventos de segurança de outra forma - por exemplo, desligando o registo, desactivando agentes de recolha, eliminando registos, etc.

É claro que a monitorização não é suficiente - também é necessária uma forma de reverter imediatamente as alterações indesejadas.

Ambos os recursos - monitorar o fluxo de replicação do AD e reverter imediatamente as alterações - estão disponíveis no Semperis DS Protector. Para ilustrar, gravei uma pequena demonstração (8 minutos) de um ataque DCShadow e detecção/remediação com o Semperis.

A demonstração está disponível aqui.

Note que se estiver a utilizar uma ferramenta de controlo de alterações do AD que monitoriza as alterações do AD através da injecção do LSASS, não verá as alterações efectuadas pelo DCShadow, a menos que o agente LSASS também esteja a ligar eventos de replicação. (Normalmente, esses agentes apenas conectam eventos de alteração).

Manter uma última linha de defesa fiável

Eu seria negligente se não incluísse um lembrete sobre a necessidade de bons backups e um processo de recuperação comprovado. Se um atacante entrar, obtiver permissões e encriptar os seus sistemas, não vai querer recompensá-lo (ou aos terroristas para quem trabalha) pagando o resgate. E se os seus sistemas forem completamente apagados, mesmo essa má opção não estará disponível. Por isso, mantenha as cópias de segurança fora de perigo (ou seja, offline) e teste o seu processo de recuperação para o Active Directory pelo menos uma vez por trimestre. (Se os testes trimestrais de DR não parecerem razoáveis, está na altura de procurar um novo sistema de backup/recuperação).

Restaurar a visão do seu sistema SIEM

Quando o DCShadow foi lançado, os seus criadores avisaram que poderia "fazer com que o seu SIEM de um milhão de dólares ficasse cego". Ao monitorizar o fluxo de replicação do AD e encaminhar os eventos de alteração para o seu sistema SIEM, pode restaurar a visão do seu sistema SIEM, proteger os investimentos no sistema e salvaguardar a integridade do Active Directory.