Diagrama mostrando a integração do PowerShell e do Swimlane para tarefas de DFIR (Digital Forensics and Incident Response), incluindo marcação externa e interna e notificação de SOC (System Center Operations).

Envenenar o poço: Operações ofensivas para defensores

4 Minutos de leitura

O velho ditado "A melhor defesa é um bom ataque" começou a ganhar força entre as equipes de centros de operações de segurança (SOC) e de segurança da informação. Mas, para muitos, realizar testes de intrusão e simulações de ataque (red teaming) consistentes pode parecer um objetivo ambicioso, secundário em relação à investigação da avalanche de alertas e alarmes que enfrentam.

Se você não tiver tempo e recursos para desenvolver ataques simulados completos, sempre poderá partir para o ataque, tentando prever o que um invasor pode fazer e usar isso contra ele. E há uma boa chance de que, seja quem for o invasor, ele esteja tentando exfiltrar dados.

Inserindo arquivos contaminados

Neste artigo, exploraremos a técnica de disseminação de arquivos "contaminados" (ou seja, arquivos com um payload incorporado) em uma rede para flagrar um agente malicioso roubando informações valiosas. Uma das ferramentas que utilizaremos é uma ferramenta de pós-exploração de código aberto., Império do PowerShell. Possui recursos robustos de exploração e uma API REST prática que facilita a integração com o Swimlane.

Incorporar uma carga útil

Primeiro, precisamos criar os arquivos que queremos distribuir pela nossa rede. Para os propósitos deste post, vamos assumir que você sabe como incorporar um payload em diferentes formatos de mídia. Caso contrário, Aqui estão alguns princípios básicos..

O segredo é fazer com que pareçam bons, mas não bons demais. Queremos que os atacantes acreditem que encontraram algo valioso que preferiríamos que não tivessem. Os arquivos precisam ser consistentes com itens encontrados em toda a sua rede, mas com nomes que chamem a atenção. O Empire oferece muitas opções de payloads, então varie. Se você tiver desenvolvimento interno em andamento, inclua mais do que apenas documentos do Word. Binários ELF são uma ótima maneira de diversificar.

Empire-Uses-Tagger

Embora estejamos falando sobre disseminar esses arquivos amplamente, para maximizar as chances de despertar o interesse de um atacante, precisamos de diversos tipos de arquivos em vários locais. Os endpoints dos usuários são ótimos, mas os servidores de arquivos são locais privilegiados para exfiltração de dados. A menos que um atacante tenha pouco tempo disponível, ele geralmente buscará compartilhamentos de arquivos como um dos principais alvos. Além disso, não armazene os arquivos em honeypots (servidores falsos) dentro do seu sistema e pense que conseguirá redirecionar os atacantes para esses servidores em vez dos legítimos. Faça com que os arquivos infectados pareçam promissores, adicionando-os aos sistemas de produção.

Então, agora temos arquivos embutidos esperando que um atacante os baixe e abra. Mas o que fazemos quando recebemos um retorno de chamada? Por que inserir arquivos, afinal? Bem, em primeiro lugar, se dados sensíveis estão sendo roubados, você provavelmente precisa saber disso. Mais importante ainda, existem poucas maneiras de impedir ataques como esse, e a resposta não é "contra-atacar". Para verdadeiros APTs (Ameaças Persistentes Avançadas), a única maneira de mantê-los afastados é expor suas ferramentas (exploits, payloads, etc.). ou expor sua infraestrutura. Tornar público qualquer um desses elementos os forçará a fazer mudanças, que geralmente são caras ou impactam severamente suas operações.

Ah, e olha só. Acabamos de receber um retorno de chamada (claro, normalmente não veríamos isso porque estamos automatizando tudo pelo Swimlane)...

Império - Retorno de chamada

Trataremos a ingestão de dados no Swimlane da mesma forma que trataríamos qualquer outra fonte. Temos uma integração com o Empire que realiza as seguintes funções:

  1. Verifica a cada minuto o status dos nossos ouvintes do Empire.
  2. Verifica a cada minuto a presença de agentes do Império.
  3. Se uma sessão do Agente for estabelecida, o Swimlane Workflow executará uma série de ações dependendo de condições específicas.

Sabemos que o tempo é crucial, pois um invasor pode estar apenas começando a exfiltrar dados. Ou, ele pode se tornar mais esperto em relação às nossas estratégias, e devemos coletar o máximo de informações possível sobre quem ele é e quais ferramentas utiliza, o mais rápido possível. Precisamos agir como se tivéssemos apenas uma oportunidade de analisar a máquina do invasor.

Usando o Workflow do Swimlane, já definimos quais ações devem ser tomadas caso recebamos um retorno de chamada de nossos arquivos "especiais".

Fluxo de trabalho Empire-Listeners-Swimlane

Independentemente de ser um IP interno ou externo (ambos podem ser um possível ponto de apoio para atacantes), decidimos executar alguns dos nossos comandos DFIR do PowerShell e enviar notificações. Essas tarefas incluem obter o cache ARP, executar o netstat, verificar os processos, procurar processos vazios (e recuperar um despejo de memória, se encontrarmos algum), capturar telas, enumerar unidades e muito mais.

Captura de tela Empire-Powershell-Swimlane

Lembre-se que, se for um IP externo, há uma chance maior de que a tarefa atribuída ao agente no retorno de chamada não seja executada. Isso ocorre porque a maioria dos APTs restringe as comunicações permitidas de entrada e saída de sua rede. Portanto, a melhor prática é obter o máximo de informações possível do retorno de chamada inicial. Felizmente, com o Empire, você pode modificar o payload antes de convertê-lo para Base64 e incorporá-lo; então, sinta-se à vontade para fazer modificações.

Chegou a hora de iniciar uma investigação detalhada.

É só isso? Claro que não. Já temos algumas das TTPs (Táticas, Técnicas e Procedimentos) dos atacantes, que provavelmente estão sendo reutilizadas, e estamos prontos para iniciar uma investigação mais detalhada. Mas trataremos disso em outra publicação. Por hoje, considere um trabalho bem feito conseguir usar uma ferramenta de código aberto e automação para rastrear agentes maliciosos na rede e coletar dados urgentes.

Solicitar uma demonstração ao vivo