Ir para conteúdo

AnalyseMe - Nível 06


Leandro Fróes

Posts Recomendados

Boa tarde pessoal, tudo certo?

Como vocês podem ver tínhamos dado uma pausa nos desafios, isto para dar mais tempo à aqueles que não tentaram ainda ou não resolveram os desafios anteriores. Isto não significa que os desafios pararam, certo??? Então aqui está o nosso sétimo desafio, espero que curtam bastante o fds revertendo !!!

AnalyseMe-06.exe

Link para o comentário
Compartilhar em outros sites

Boa tarde Leandro, blz?

Segue aí minha análise para esse 'malware' um pouco diferente dos outros.

Spoiler

Tipo de arquivo: PE EXE
Compilador/linguagem: Visual Studio C/C++
Protector/packer: Nenhum
SHA-256: 62356af44e787ec0de9593e10f4c3de6e4d0fbfeed27c2e51dd08121e19b0e85

Strings interessantes: "C:\Program Files\Oracle\VirtualBox Guest Additions\DIFxAPI.dll" em 0x402070, "C:\windows\System32\Drivers\Vmmouse.sys" em 0x4020B0, "Software\Microsoft\Windows\CurrentVersion\Run" em 0x4020E8, "Exec" em 0x402118, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" em 0x402128, "*.docx" em 0x402121, "c2.malware/post.php" em 0x40216C;

Funções locais maliciosas: 401140;

Chamadas à API do Windows e outras bibliotecas: IsDebuggerPresent, RegOpenKeyExA, RegSetValueExA, RegCloseKey, GetCommandLineA, FindFirstFileA, GetFileSize, ReadFile, CreateFileA, InternetOpenA, InternetConnectA, InternetCloseHandle, GetTempPathA, lstrcatA;

Atividades de rede: Abre uma conexão na porta 443 com o servidor "c2.malware/post.php" usando o user-agent do Firefox e envia uma requisição POST;

O que o binário faz em linhas gerais: 
    1- Utiliza função IsDebuggerPresent para interromper execução caso esteja rodando em um debugger;
    2- CreateFileA para abrir o arquivo "C:\Program Files\Oracle\VirtualBox Guest Additions\DIFxAPI.dll" com dwDesiredAccess GENERIC_READ (0x80000000) e verificar se está rodando em uma VM, caso o arquivo exista a execução é interrompida;
    3- CreateFileA para abrir o arquivo "C:\windows\System32\Drivers\Vmmouse.sys" também com GENERIC_READ, caso o arquivo exista a execução é interrompida;
    4- Utiliza a função GetCommandLineA para pegar o caminho completo incluindo o nome do arquivo do executável;
    5- Função GetTempPathA para obter o caminho da pasta temporária e utiliza strcat para colocar a string "\payload.exe" como sufixo no caminho;
    6- CopyFileA para copiar o próprio arquivo executável para a pasta temporária do usuário com o nome "payload.exe", esse passo seria o malware se instalando no S.O.;
    7- RegOpenKeyExA para abrir a chave de registro "Software\Microsoft\Windows\CurrentVersion\Run" em HKEY_CURRENT_USER (80000001h) com permissão total KEY_ALL_ACCESS (F003F);
    8- Utiliza a função RegSetValueExA para criar uma chave de registro na pasta acima com o nome "Exec" e valor igual ao caminho completo para o arquivo payload.exe que foi copiado para a pasta temporária e tipo string REG_SZ (1). Isso serve para que o programa seja executado sempre que o usuário fizer login (persistente);
    9- Em seguida fecha o registro com RegCloseKey e usa a função SHGetFolderPathA para pegar o diretório de Documentos (CSIDL_MYDOCUMENTS) do usuário;
    10- FindFirstFileA para encontrar arquivos com nome *.docx dentro da pasta de Documentos e se não encontrar nenhum encerra a execução;
    11- InternetOpenA com user-agent do Firefox "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)";
    12- InternetConnectA para abrir comunicação com o servidor "c2.malware/post.php" na porta 443 (INTERNET_DEFAULT_HTTPS_PORT) que seria um servidor de controle C2;
    13- Abre o primeiro arquivo .docx encontrado com CreateFileA, calcula o tamanho dele com GetFileSize e faz a leitura para memória com ReadFile;
    14- Cria um request HTTP do tipo POST para "c2.malware/post.php". Provavelmente essa requisição seria para fazer o upload do arquivo .docx para um servidor de controle C2;
    15- O arquivo não é de fato enviado e o programa fecha o arquivo e a conexão HTTPS com o servidor;

O que foi modificado no sistema: O executável se copia para dentro da pasta temporária do usuário com o nome "payload.exe" e cria uma chave no registry para que esse programa seja executado toda vez que o usuário logar na máquina;
 

Parabéns pelos desafios e abraço!
Rafael

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...