Técnicas e táticas de caça de atacantes usando arquivos de pré-busca



Os arquivos de rastreamento ou pré-busca aparecem no Windows desde o XP. Desde então, eles ajudam especialistas forenses digitais e resposta a incidentes com computadores a encontrar vestígios de lançamentos de software, incluindo malware. Oleg Skulkin , especialista líder em computação forense no Group-IB, fala sobre o que você pode encontrar com arquivos de Pré-busca e como fazê-lo.

Os arquivos de pré-busca são armazenados no diretório % SystemRoot% \ Prefetch e são usados ​​para acelerar o processo de inicialização de programas. Se olharmos para qualquer um desses arquivos, veremos que seu nome consiste em duas partes: o nome do arquivo executável e a soma de verificação do caminho para ele, composto por oito caracteres.

Os arquivos de pré-busca contêm muitas informações úteis do ponto de vista forense: o nome do arquivo executável, o número de inicializações, as listas de arquivos e os diretórios com os quais o arquivo executável interagiu e, é claro, os registros de data e hora. Normalmente, o forense usa a data de criação de um arquivo de Pré-busca específico para determinar a data em que o programa é iniciado pela primeira vez. Além disso, esses arquivos armazenam a data de seu último lançamento e, começando com a versão 26 (Windows 8.1), os carimbos de data e hora dos últimos sete lançamentos.

Vamos pegar um dos arquivos de pré-busca, extrair os dados usando o PECmd de Eric Zimmerman e examinar cada parte. Para demonstração, extrairei os dados do arquivo CCLEANER64.EXE-DE05DBE1.pf .

Então, vamos começar de cima. Obviamente, temos registros de data e hora para criar, modificar e acessar o arquivo:


Eles são seguidos pelo nome do arquivo executável, a soma de verificação do caminho, o tamanho do arquivo executável e a versão do arquivo de Pré-busca:


Como estamos lidando com o Windows 10, veremos o número de lançamentos, a data e a hora do último lançamento e mais sete carimbos de data e hora indicando as datas de lançamento anteriores:


Eles são seguidos por informações sobre o volume, incluindo seu número de série e data de criação:


E por último, mas não menos importante, uma lista de diretórios e arquivos com os quais o executável interagiu:


Portanto, os diretórios e arquivos com os quais o executável interagiu são exatamente o que eu quero focar hoje. São esses dados que permitem que especialistas em forense digital, respondendo a incidentes de computador ou pesquisas de ameaças proativas, estabeleçam não apenas o fato da execução de um arquivo, mas, em alguns casos, reconstrua táticas e técnicas específicas de invasores. Hoje, os atacantes costumam usar ferramentas para excluir permanentemente dados, por exemplo, SDelete, de modo que a capacidade de recuperar pelo menos vestígios do uso de certas táticas e técnicas é simplesmente necessária para qualquer defensor moderno - um especialista em computação forense, especialista em resposta a incidentes, especialista em ThreatHunter.

Vamos começar com as táticas de acesso inicial (TA0001) e a técnica mais popular - Spearphishing Attachment (T1193). Alguns grupos de cibercriminosos são muito criativos ao escolher esses anexos. Por exemplo, o grupo Silêncio usou arquivos CHM (Ajuda HTML compilada da Microsoft) para isso. Portanto, temos mais uma técnica - o arquivo HTML compilado (T1223). Esses arquivos são lançados usando o hh.exe ; portanto, se extrairmos os dados do seu arquivo de Pré-busca, descobriremos qual arquivo a vítima abriu:


Continuamos a trabalhar com exemplos da vida real e passamos às próximas táticas de execução (TA0002) e à técnica CSMTP (T1191). O Instalador de Perfil do Microsoft Connection Manager (CMSTP.exe) pode ser usado pelos invasores para executar scripts maliciosos. Um bom exemplo é a banda de cobalto. Se extrairmos os dados do arquivo de pré-busca cmstp.exe , poderemos descobrir novamente o que exatamente foi iniciado:


Outra técnica popular é o Regsvr32 (T1117). O Regsvr32.exe também é frequentemente usado pelos atacantes para iniciar. Aqui está outro exemplo do grupo Cobalt: se extrairmos dados do arquivo Prefetch regsvr32.exe , novamente veremos o que foi iniciado:


As táticas a seguir são Persistência (TA0003) e Escalação de privilégios (TA0004), bem como Aplicação Shimming (T1138) como uma técnica. Essa técnica foi usada pelo Carbanak / FIN7 para proteger o sistema. Normalmente, trabalhar com bancos de dados com informações sobre a compatibilidade do programa (.sdb) usava o sdbinst.exe . Portanto, o arquivo de pré-busca desse arquivo executável pode nos ajudar a descobrir os nomes desses bancos de dados e sua localização:


Como você pode ver na ilustração, temos não apenas o nome do arquivo usado para instalação, mas também o nome do banco de dados instalado.

Vamos dar uma olhada em um dos exemplos mais comuns de viagens em rede (TA0008), PsExec, que usa recursos compartilhados administrativos (T1077). Um serviço chamado PSEXECSVC (é claro, qualquer outro nome pode ser usado se os atacantes usarem a opção -r ) será criado no sistema de destino; portanto, se extrairmos os dados do arquivo de Pré-busca, veremos que ele foi iniciado:


Talvez eu termine com o que comecei - excluindo arquivos (T1107). Como observei, muitos invasores usam o SDelete para excluir permanentemente arquivos em diferentes estágios do ciclo de vida do ataque. Se dermos uma olhada nos dados do arquivo de pré-busca sdelete.exe , veremos o que exatamente foi excluído:



Obviamente, essa não é uma lista exaustiva de técnicas que podem ser encontradas durante a análise dos arquivos de Pré-busca, mas isso deve ser suficiente para entender que esses arquivos podem não apenas encontrar vestígios do lançamento, mas também reconstruir táticas e técnicas específicas dos atacantes.

Source: https://habr.com/ru/post/undefined/


All Articles