DEV Community

Luigi Belanda
Luigi Belanda

Posted on

LoLBins

1. Definição

LoLBins (Living-off-the-Land Binaries) são binários legítimos e nativos do sistema operacional que podem ser reutilizados de forma maliciosa por atacantes. Apesar de serem ferramentas confiáveis e pré-instaladas, elas podem ser exploradas para fins inesperados, permitindo que invasores realizem ações maliciosas sem instalar novos softwares.

O conceito de LoLBins faz parte de um grupo maior chamado LOLBAS (Living-off-the-Land Binaries, Scripts and Libraries), que inclui não apenas binários, mas também scripts e bibliotecas do sistema. Esses recursos podem ser usados de forma criativa para ataques sofisticados, como em operações de Advanced Persistent Threat (APT) ou por equipes de teste de segurança (Red Teams).

Para um binário, script ou biblioteca ser considerado um LoLBin/LOLBAS, geralmente ele precisa:

Ser um arquivo legítimo e assinado pelo sistema ou pela Microsoft.
Possuir funcionalidades "inesperadas", que podem ser exploradas de maneiras maliciosas. Ser útil para um atacante em tarefas como execução de código, movimentação lateral ou persistência. O principal objetivo do uso de LoLBins é evadir a detecção de mecanismos de segurança. Como essas ferramentas já existem no sistema, ataques baseados nelas são menos visíveis e podem contornar antivírus, controles de assinatura digital e outros mecanismos de proteção. Além disso, LoLBins permitem a execução de ataques Fileless Malware, ou seja, sem criar arquivos maliciosos no disco, dificultando ainda mais a detecção.

Em resumo, LoLBins são uma forma de "viver da terra" no sistema comprometido: o atacante aproveita ferramentas legítimas e recursos já disponíveis para atingir seus objetivos de maneira furtiva e eficiente.


2. Exemplos

Os LOLBins (Living-off-the-Land Binaries) são executáveis legítimos do sistema operacional que são frequentemente abusados por atacantes para diversas atividades maliciosas, como execução de código, download de payloads, movimentação lateral e persistência, visando evitar a detecção por softwares de segurança tradicionais.

A CrowdStrike realizou uma análise de atividades de intrusão interativas em um período de um ano (julho de 2021 a junho de 2022) para identificar os LOLBins mais prevalentes utilizados por adversários. Essa pesquisa aprofundou-se em oito LOLBins mais comuns: Rundll32, Regsvr32, Msiexec, Mshta, Certutil, MSBuild, WMI command line utility (WMIC) e WMI provider host (WmiPrvSe). A Kaspersky também destaca o PowerShell como o LOLBin mais comum, seguido por rundll32.exe, e em terceiro lugar, te.exe, PsExec.exe, CertUtil.exe, Reg.exe e wscript.exe.

2.1 Principais LoLBins e seus usos maliciosos:

  • cmd.exe – Execução de comandos

Permite executar comandos maliciosos, criar tarefas agendadas e realizar proxy execution (executar outros binários sem caminho completo). Usado em scripts como wmiexec.py para executar comandos remotamente.

  • powershell.exe – Execução de scripts e download de payloads

Ferramenta de linha de comando e linguagem de script, amplamente usada em ataques. Permite baixar e executar payloads de servidores C2, automatizar processos via WMI e executar código diretamente na memória (Fileless Malware).

  • regsvr32.exe – Execução de scripts via COM

Usado para registrar/desregistrar DLLs e controles ActiveX. Permite bypass de listas de permissão de aplicativos e execução de payloads remotos sem baixar arquivos primeiro (técnica Squiblydoo).

  • mshta.exe – Execução de código HTML/JS

Executa arquivos HTA ou scripts embutidos na linha de comando. Pode ser usado para ataques Fileless Malware, tornando a execução invisível para o usuário.

  • rundll32.exe – Execução de DLLs arbitrárias

Permite rodar DLLs maliciosas ou explorar DLLs legítimas. Usado para criar memory dumps, roubar credenciais e evadir mecanismos de whitelisting.

  • certutil.exe – Download e decodificação de arquivos

Ferramenta para gerenciar certificados, mas pode baixar arquivos, decodificar dados em Base64 e instalar certificados maliciosos.

2.2 Outros LoLBins notáveis no Windows

  • msiexec.exe – Instalação de software ou DLLs maliciosas; pode rodar em modo silencioso.
  • msbuild.exe – Compilação de código malicioso direto na máquina vítima.
  • wmic.exe / wmiprvse.exe – Execução remota de comandos, movimentação lateral e gerenciamento de sistema.

3. Categorias de uso de LoLBins

Os LoLBins (Living-off-the-Land Binaries) são reutilizados por atacantes para atingir objetivos específicos dentro de sistemas comprometidos. O uso desses binários, scripts e bibliotecas (LOLBAS) permite que as ameaças sejam mais furtivas, evitando a detecção por mecanismos de segurança tradicionais. As principais categorias de uso são:

3.1 Execução de código

Permite rodar scripts ou programas maliciosos sem instalar novos executáveis.

Exemplos de LoLBins usados para execução de código:

  • Rundll32.exe: Executa DLLs maliciosas ou explora DLLs legítimas para roubo de credenciais ou execução de payloads.
  • Mshta.exe: Executa arquivos HTA ou scripts embutidos, permitindo ataques Fileless Malware sem criar arquivos no disco.
  • Msiexec.exe: Instala ou executa DLLs maliciosas, podendo rodar em modo silencioso para evitar interação do usuário.
  • MSBuild.exe: Compila código malicioso diretamente na máquina vítima ou executa comandos arbitrários, usando arquivos de logger ou de resposta para ocultar argumentos.
  • WMIC.exe: Cria processos local ou remotamente, executando scripts PowerShell ou JScript/VBScript.
  • PowerShell.exe: Executa scripts e baixa payloads de servidores C2; amplamente utilizado em ataques críticos.
  • Cmd.exe: Encadeia a execução de outros LoLBins, permitindo proxy execution.
  • WScript.exe: Executa scripts em linguagens de script suportadas pelo Windows.

3.2 Movimentação lateral

Permite que atacantes se movam entre sistemas dentro de uma rede comprometida.

Ferramentas comuns para movimentação lateral:

  • WMIC.exe: Executa processos em sistemas remotos usando credenciais válidas.
  • PsExec.exe: Executa processos remotamente, frequentemente usado em campanhas de ransomware.
  • ssh.exe (Linux/Unix): Executa comandos remotamente, permitindo movimentação lateral entre hosts.

3.3 Persistência

Permite manter o acesso ao sistema comprometido mesmo após reinicializações ou alterações de credenciais.

LoLBins usados para persistência:

  • Schtasks.exe: Cria tarefas agendadas para executar payloads maliciosos regularmente.
  • Regsvr32.exe: Registrando DLLs maliciosas em tarefas agendadas para execução diária.
  • Mshta.exe: Cria persistência via execução de arquivos HTA que configuram DLLs para rodar em aplicativos COM.
  • WMIC.exe: Configura contas de usuário ou outras configurações para acesso a longo prazo.
  • Reg.exe: Altera ou adiciona chaves de registro para garantir execução contínua.
  • Cron (Linux/Unix): Agenda execução periódica de scripts maliciosos para persistência.

3.4 Exfiltração de dados

Permite roubar informações do sistema ou da rede utilizando binários legítimos.

Exemplos:

  • Certutil.exe: Codifica/decodifica dados em Base64, útil para exfiltração de dumps de memória e bypass de detecção.
  • WMIC.exe: Coleta informações do host e da rede para posterior exfiltração.
  • Bitsadmin.exe: Transfere arquivos e executa código malicioso remotamente.
  • curl / wget (Linux/Unix): Faz download ou upload de arquivos, podendo exfiltrar dados.

3.5 Bypass de segurança

Os LoLBins contornam defesas e políticas de segurança porque são executáveis confiáveis e assinados pelo sistema.

Principais técnicas de evasão:

  • Evasão baseada em assinaturas: Muitos LoLBins são arquivos assinados pela Microsoft, permitindo execução em sistemas protegidos sem alertas.
  • Contorno de allowlisting: Rundll32, Regsvr32, Msiexec e MSBuild podem executar payloads mesmo em ambientes com políticas restritivas.
  • Evasão de antivírus e EDR: Atividades Fileless Malware e uso de funcionalidades "inesperadas" dificultam a detecção.
  • Contorno do UAC: LoLBins como Rundll32 podem carregar objetos COM com permissões elevadas sem validação de identidade.
  • Ataques Fileless Malware: Mshta e PowerShell executam código diretamente na memória, sem gravar arquivos no disco.
  • Ocultação de atividades: Técnicas como janelas invisíveis (Mshta) ou uso de response files (MSBuild) escondem ações maliciosas do usuário.
  • Mascaramento: Arquivos ou scripts podem ser nomeados de forma a parecer legítimos e se integrar a processos do sistema (ex: arquivos XSL usados pelo WMIC).

Fontes

Top comments (0)