# NetXLoader
> [!medium] Loader .NET com JIT Hooking - Entrega Qilin e SmokeLoader
> NetXLoader é um loader .NET descoberto em novembro de 2024, analisado pela Trend Micro em maio de 2025. Usa .NET Reactor 6 com JIT hooking para evasão avançada. Entrega [[qilin-ransomware]] e [[s0226-smokeloader]] via carregamento reflexivo de DLL.
## Visão Geral
NetXLoader é um loader desenvolvido em .NET e identificado pela primeira vez em novembro de 2024, com análise técnica detalhada públicada pela Trend Micro em maio de 2025. O loader é usado pelo grupo [[qilin]] para distribuir o [[qilin-ransomware]] e o [[s0226-smokeloader]], representando uma evolução significativa na sofisticação do ecossistema de ferramentas do grupo.
O diferencial técnico do NetXLoader é sua proteção via .NET Reactor 6 com JIT (Just-In-Time) hooking - uma técnica avançada que substitui os ponteiros de compilação JIT do .NET runtime para interceptar e ofuscar o código durante sua compilação em memória. Isso torna a análise estática práticamente inútil, pois o código real só existe em forma legível durante execução em ambiente específico.
O NetXLoader também implementa verificações anti-sandbox e anti-análise: verifica o ambiente antes de desempacotar o payload, detectando ferramentas de debugging e ambientes virtualizados. O carregamento do payload final ocorre via Reflective DLL Loading - técnica que injeta uma DLL diretamente em memória sem gravá-la em disco, evitando detecções baseadas em assinaturas de arquivo.
A cadeia de infecção documentada inclui: NetXLoader desempacota e injeta o [[s0226-smokeloader]] (malware de botnet), que por sua vez serve como segundo estágio para distribuição do [[qilin-ransomware]]. Esta abordagem multi-estágio aumenta a resiliência da cadeia de ataque.
> [!latam] Relevância para o Brasil e LATAM
> O grupo [[qilin]] opera globalmente e já registrou vítimas no Brasil, especialmente no setor de saúde e manufatura. O NetXLoader, como veículo de entrega do Qilin, é diretamente relevante para organizações brasileiras que podem ser alvo de afiliados do grupo. A sofisticação da evasão via JIT hooking dificulta a detecção por soluções tradicionais de AV — reforçando a necessidade de EDR com análise comportamental no [[financial|setor financeiro]] e [[healthcare|saúde]], setores mais visados por ransomware no Brasil.
## Attack Flow
```mermaid
graph TB
A["📧 Phishing ou Exploit<br/>Entrega do NetXLoader"] --> B["🔍 Verificação Anti-Sandbox<br/>Detecta VM e debugger"]
B --> C["🔓 .NET Reactor 6<br/>JIT Hooking desofusca payload"]
C --> D["💉 Reflective DLL Load<br/>SmokeLoader em memoria"]
D --> E["📡 SmokeLoader C2<br/>Comúnicação com botnet"]
E --> F["💀 Download Qilin<br/>Payload ransomware via C2"]
F --> G["🔒 Execução Qilin<br/>Criptografia e exfiltração"]
```
*Payload entregue: [[qilin-ransomware]] · Intermediário: [[s0226-smokeloader]]*
## Técnicas MITRE ATT&CK
| ID | Técnica | Fase | Descrição |
|----|---------|------|-----------|
| T1566 | Phishing | Acesso Inicial | Entrega inicial do NetXLoader via email |
| T1027 | Obfuscated Files | Evasão | .NET Reactor 6 com JIT hooking |
| T1497 | Sandbox Evasion | Evasão | Verificações anti-debugging e anti-VM |
| T1620 | Reflective Code Loading | Execução | Carregamento de DLL diretamente em memória |
| T1055 | Process Injection | Execução | Injeção do payload em processo host |
| T1071 | Application Layer | C2 | Comúnicação HTTP/HTTPS com C2 |
| T1140 | Deobfuscate/Decode | Execução | Decodificação do payload em runtime |
## Arquitetura de Proteção .NET Reactor
```mermaid
graph TB
subgraph Camadas de Proteção
RCT["NET Reactor 6<br/>Protetor comercial .NET"]
JIT["JIT Hooking<br/>Intercepta compilacao"]
OBF["Ofuscacao Simbolos<br/>Nomes de classe/método"]
end
subgraph Evasão
VM["Anti-VM<br/>Detecta VirtualBox/VMware"]
DBG["Anti-Debug<br/>Detecta debuggers"]
SND["Anti-Sandbox<br/>Verifica timing/inputs"]
end
subgraph Payload Chain
NXL["NetXLoader<br/>Loader primario"]
SMOKE["SmokeLoader<br/>Payload 1"]
QILIN["Qilin Ransomware<br/>Payload final"]
end
RCT --> JIT
RCT --> OBF
JIT --> VM
JIT --> DBG
NXL --> SMOKE
SMOKE --> QILIN
```
*Técnicas: [[t1027-obfuscated-files-or-information|T1027]] · [[t1620-reflective-code-loading|T1620]] · [[t1497-virtualization-sandbox-evasion|T1497]]*
## Detecção e Defesa
**Indicadores comportamentais:**
- Processo .NET alocando memória executável de forma incomum
- Chamadas NtAllocateVirtualMemory seguidas de escrita e execução em memória
- Verificações de ambiente (registry queries para VMware/VirtualBox)
- Consultas de timing suspeitas (GetTickCount, RDTSC) para detecção de análise
- Comúnicação de rede imediatamente após execução de binário .NET ofuscado
**Mitigações recomendadas:**
- [[m1049-antivirus-antimalware|EDR]] com análise comportamental de processos .NET
- Monitorar alocações de memória RWX (Read-Write-Execute) por processos .NET
- Ambientes de sandbox para análise dinâmica (analisar antes de executar)
- [[m1038-execution-prevention|Application Control]] para restringir execução de binários .NET desconhecidos
- Threat hunting para padrões de JIT hooking em memória de processos
## Referências
- [1](https://www.trendmicro.com/en_us/research/25/e/netxloader-delivering-qilin-ransomware.html) Trend Micro - NetXLoader Delivering Qilin Ransomware (2025)
- [2](https://www.trendmicro.com/en_us/research/24/a/a-closer-look-at-agenda-ransomware-s-golang-variant.html) Trend Micro - Agenda/Qilin Ransomware Analysis (2024)
- [3](https://any.run/cybersecurity-blog/dotnet-protectors/) ANY.RUN - .NET Protectors Analysis (2024)