# T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay
## Descrição
A sub-técnica **T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay** descreve um dos ataques de rede internos mais prevalentes e efetivos contra ambientes Windows corporativos. O ataque explora dois protocolos legados de resolução de nomes - **LLMNR** (Link-Local Multicast Name Resolution) e **NBT-NS** (NetBIOS Name Service) - que permitem que hosts em uma rede local resolvam nomes de outros hosts quando o DNS falha ou não encontra a entrada solicitada.
A técnica pertence à técnica pai [[t1557-adversary-in-the-middle|T1557 - Adversary-in-the-Middle]] e combina dois estágios: o **envenenamento** (poisoning) da resolução de nomes, que redireciona o tráfego da vítima para o sistema do adversário, e o **relay** (retransmissão) das credenciais capturadas para autenticar em outros sistemas da rede - frequentemente sem sequer precisar quebrar a senha.
**LLMNR** (UDP 5355) é um protocolo baseado no formato DNS que permite resolução de nomes em links locais sem servidor DNS centralizado - presente em Windows Vista e posteriores. **NBT-NS** (UDP 137) é o protocolo legado do NetBIOS para identificação de sistemas por nome em redes locais. Ambos funcionam por broadcast/multicast: quando um host não encontra um nome via DNS, ele pergunta para toda a rede local "quem é este host?".
O adversário que monitora esta rede responde imediatamente a estas consultas, fingindo ser o host solicitado. A vítima, acreditando estar se conectando ao recurso legítimo, envia suas credenciais (hash NTLMv1 ou NTLMv2) para o sistema do adversário. Estas credenciais podem então ser:
1. **Capturadas e quebradas offline** via [[t1110-brute-force|força bruta]] (dicionário ou regras de mutação)
2. **Retransmitidas (relay)** diretamente para autenticar em outros sistemas da rede - sem necessidade de conhecer a senha em texto claro
O ataque é **extraordinariamente comum** em testes de penetração e ambientes reais, especialmente em redes corporativas Windows sem hardening adequado. Ferramentas como **Responder** (NBNSpoof) e **ntlmrelayx** (parte do [[s0357-impacket|Impacket]]) automatizam completamente o ataque.
## Como Funciona
O ataque se divide em duas fases que podem ser executadas independentemente ou em conjunto:
**Fase 1: LLMNR/NBT-NS Poisoning (Captura de Hashes)**
1. Um usuário da rede tenta acessar um recurso compartilhado que não existe ou foi digitado incorretamente (ex: `\\SERVIDOR-ARQUIVO` quando o nome correto é `\\SERVIDOR-ARQUIVOS`)
2. O DNS não encontra o nome e o Windows faz broadcast LLMNR (UDP 5355) e/ou NBT-NS (UDP 137) para toda a rede: "Alguém conhece o host `SERVIDOR-ARQUIVO`?"
3. O adversário com Responder em execução responde imediatamente: "Sou eu! Conecte-se em meu IP"
4. O cliente Windows inicia uma conexão SMB com o sistema do adversário e, como parte da autenticação NTLM, envia o **hash NTLMv2** do usuário logado
5. O Responder captura e exibe este hash. O hash pode ser submetido a ferramentas de quebra offline como **hashcat** ou **john**
O hash NTLMv2 tem o formato: `usuario::dominio:challenge:hash_response`, e pode ser quebrado com dicionários de senhas, especialmente se a senha for fraca ou comum.
**Fase 2: SMB Relay (Autenticação Relay)**
1. Em vez de apenas capturar o hash, o adversário o retransmite em tempo real para outro host da rede
2. Usando **ntlmrelayx** (Impacket), o adversário aceita a autenticação NTLM da vítima e imediatamente a "relay" para outro sistema alvo (ex: um servidor de arquivos, controlador de domínio secundário, ou host com SMB habilitado)
3. O sistema alvo recebe uma autenticação NTLM válida assinada pelo próprio usuário e a aceita
4. O adversário obtém uma sessão autenticada no sistema alvo com as permissões do usuário vítima - **sem conhecer a senha**
O SMB Relay é especialmente poderoso quando:
- O usuário vítima tem privilégios administrativos locais no sistema alvo
- O sistema alvo não exige SMB Signing (assinatura obrigatória de pacotes SMB)
- O adversário consegue retransmitir para múltiplos hosts simultaneamente
**Variantes avançadas:**
- **LDAP Relay**: retransmitir credenciais NTLM para o LDAP do controlador de domínio, permitindo criar contas, modificar ACLs ou habilitar DCSYNC
- **MSSQL Relay**: obter sessão autenticada em SQL Server com as credenciais da vítima
- **HTTP/HTTPS Relay**: retransmitir para aplicações web que suportam autenticação NTLM (OWA, SharePoint, etc.)
## Attack Flow
```mermaid
graph TB
A["Acesso à Rede Local<br/>(físico ou VPN, Wi-Fi, lateral movement)"] --> B["Iniciar Responder<br/>(modo envenenamento LLMNR/NBT-NS)"]
B --> C["Vítima falha resolução DNS<br/>(recurso inexistente ou erro de digitação)"]
C --> D["Broadcast LLMNR/NBT-NS<br/>(UDP 5355 / UDP 137)"]
D --> E["Adversário responde<br/>como host legítimo"]
E --> F["Vítima envia autenticação<br/>NTLMv1/v2 ao adversário"]
F --> G{"Objetivo?"}
G -->|"Capturar e quebrar senha"| H["Hash NTLMv2 salvo<br/>hashcat -m 5600 hash.txt wordlist.txt"]
G -->|"Relay imediato"| I["ntlmrelayx retransmite<br/>para alvo (SMB/LDAP/HTTP)"]
H --> J["Senha em texto claro<br/>→ Autenticação direta"]
I --> K{"Alvo aceita<br/>o relay?"}
K -->|"Sim - SMB sem signing"| L["Sessão autenticada<br/>no sistema alvo"]
K -->|"LDAP relay no DC"| M["Criação de conta / DCSYNC<br/>→ Domain Takeover"]
J --> N["Uso de Contas Válidas<br/>→ Movimentação Lateral"]
L --> N
M --> N
```
## Exemplos de Uso
### Lazarus Group - Movimentação Lateral em Redes Corporativas
O grupo norte-coreano [[g0032-lazarus-group|Lazarus Group]] utiliza técnicas de envenenamento de resolução de nomes como parte de sua fase de movimentação lateral em redes corporativas. Após obter um ponto de apoio inicial via spear-phishing ou exploração de vulnerabilidades em serviços expostos, operadores Lazarus implantam ferramentas de captura de credenciais de rede para coletar hashes de usuários de alto valor (administradores de domínio, usuários de sistemas financeiros) durante os horários de trabalho normais.
### Wizard Spider - Pré-Ransomware Credential Harvesting
O grupo [[g0102-conti-group|Wizard Spider]], responsável pelo ransomware [[s0446-ryuk|Ryuk]] e [[conti|Conti]], usa envenenamento LLMNR/NBT-NS extensivamente na fase de reconnaissance interno e coleta de credenciais antes de detonar o ransomware. A técnica permite obter credenciais de domínio com mínimo ruído, posicionando o adversário para comprometer controladores de domínio via DCSYNC e garantir a propagação máxima do ransomware em todos os sistemas do ambiente.
### Red Teams e Pentest em Organizações Brasileiras
Em avaliações de segurança ofensiva (Red Team e Pentest) em organizações brasileiras de médio e grande porte, a captura de hashes via Responder é consistentemente um dos primeiros vetores de sucesso. A prevalência do ataque reflete a falta de hardening básico - LLMNR e NBT-NS habilitados por padrão em Windows, ausência de SMB Signing obrigatório, e senhas de serviço fracas frequentemente capturadas e quebradas em minutos.
### Ataque a Redes Wi-Fi Corporativas
Em ambientes onde redes Wi-Fi corporativas são segmentadas de forma inadequada, adversários com acesso físico às instalações ou que comprometem um dispositivo em Wi-Fi de visitantes podem executar o ataque em redes onde o nível de trust é alto demais. Esse cenário é comum em empresas que permitem BYOD sem segmentação de VLAN adequada.
## Detecção
A detecção de LLMNR/NBT-NS Poisoning requer monitoramento ativo da rede e correlação de eventos de autenticação:
**Indicadores de rede:**
- Múltiplas respostas LLMNR/NBT-NS para o mesmo broadcast originadas de hosts não-servidores
- Host respondendo positivamente a consultas de nomes que não deveria conhecer
- Tráfego SMB iniciado para IPs que não são servidores conhecidos
- Autenticações NTLM para hosts não cadastrados em inventory
**Indicadores de host (Windows Event Log):**
- Event ID 4776 (NTLM authentication) com endereço de origem incomum
- Event ID 4624 (logon bem-sucedido) de IPs fora do padrão do usuário
- Event ID 5145 (network share object checked) com status de acesso negado imediato após tentativa bem-sucedida
**Regra de detecção (Sigma):**
```yaml
title: LLMNR/NBT-NS Response from Unexpected Host
status: experimental
logsource:
category: network_traffic
product: zeek
detection:
selection_llmnr:
proto: udp
dst_port: 5355
selection_nbns:
proto: udp
dst_port: 137
filter_known_dns_servers:
src_ip|cidr:
- '10.0.0.0/8'
src_ip|contains:
- '.10'
- '.1'
condition: (selection_llmnr or selection_nbns) and not filter_known_dns_servers
level: high
tags:
- attack.credential_access
- attack.t1557.001
```
**Regra complementar - NTLM para hosts incomuns:**
```yaml
title: NTLM Authentication to Non-Standard Host
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID: 4776
WorkstationName|re: '^(?!DC|SRV|FS).*'
filter_known_workstations:
WorkstationName|startswith:
- 'WS-'
- 'LAPTOP-'
- 'DESKTOP-'
condition: selection and not filter_known_workstations
level: medium
tags:
- attack.credential_access
- attack.t1557.001
```
**Ferramentas de detecção proativa:**
- **Responder Detector**: scripts que enviam consultas LLMNR/NBT-NS e monitoram respostas inesperadas
- **Canary tokens em compartilhamentos SMB**: arquivos com nomes aleatórios que, quando acessados, alertam sobre captura de hashes
- **Plataformas NDR** (Network Detection and Response): Zeek, Suricata e soluções comerciais como Darktrace, ExtraHop
## Mitigação
| ID | Mitigação | Descrição |
|---|-----------|-----------|
| M1042 | [[m1042-disable-or-remove-feature-or-program\|M1042 - Disable or Remove Feature or Program]] | **Mitigação mais efetiva**: desabilitar LLMNR via Group Policy (`Computer Configuration → Administrative Templates → Network → DNS Client → Turn Off Multicast Name Resolution = Enabled`) e NBT-NS via propriedades de adaptador de rede ou DHCP options (`DHCP Option 001: 0x2`). A desabilitação elimina o vetor de ataque completamente. |
| M1031 | [[m1031-network-intrusion-prevention\|M1031 - Network Intrusion Prevention]] | Implementar IPS/NDR com assinaturas para detectar respostas LLMNR/NBT-NS anômalas e padrões de relay SMB. Ferramentas como Snort/Suricata com regras para detecção de Responder e ntlmrelayx. |
| M1030 | [[m1030-network-segmentation\|M1030 - Network Segmentation]] | Segmentar a rede para limitar o broadcast domain. LLMNR e NBT-NS funcionam apenas em link local - VLANs separadas por função (workstations, servidores, DMZ) reduzem drasticamente o escopo do ataque. Impedir que tráfego UDP 5355 e 137 cruce fronteiras de VLAN. |
| M1037 | [[m1037-filter-network-traffic\|M1037 - Filter Network Traffic]] | Bloquear tráfego LLMNR (UDP 5355) e NBT-NS (UDP 137) em firewalls internos entre segmentos de rede. Habilitar **SMB Signing obrigatório** em todos os hosts via GPO - isso inválida completamente o SMB relay (ntlmrelayx falha com "SMB signing required"). |
**Configurações adicionais altamente recomendadas:**
- Habilitar **Extended Protection for Authentication (EPA)** em serviços web com NTLM
- Forçar o uso de **Kerberos** como protocolo de autenticação preferêncial (desabilitar NTLMv1, considerar desabilitar NTLMv2 em ambientes maduros)
- Implementar **LAPS** (Local Administrator Password Solution) para garantir senhas locais únicas - evita que um hash capturado funcione em múltiplos hosts
- Habilitar **SMB Signing** em todos os hosts (não apenas servidores)
## Contexto Brasil/LATAM
A técnica T1557.001 é especialmente prevalente no Brasil por razões estruturais que refletem o estado de maturidade da segurança em redes corporativas locais:
**Alta prevalência em ambientes corporativos brasileiros:** Em avaliações de Red Team e Pentest realizadas em empresas brasileiras de médio porte, a captura de hashes via LLMNR/NBT-NS Poisoning é consistentemente bem-sucedida em 70-80% dos ambientes testados. LLMNR e NBT-NS raramente são desabilitados por padrão nas imagens Windows corporativas, e SMB Signing obrigatório é igualmente raro.
**Exploração por grupos de ransomware com foco no Brasil:** Grupos de ransomware-as-a-service (RaaS) que operam na América Latina - incluindo afiliados do [[lockbit|LockBit]], [[black-basta|Black Basta]] e ex-membros do [[conti|Conti]] - utilizam esta técnica como parte do playbook padrão de comprometimento de domínio Active Directory antes da fase de criptografia. A combinação Responder + ntlmrelayx LDAP → DCSYNC é particularmente efetiva para comprometer controladores de domínio.
**Vulnerabilidade em redes de varejo e hospitais:** Setores com alta densidade de terminais Windows e redes flat (sem segmentação adequada) - como varejo, saúde e indústria - são especialmente vulneráveis. Um único terminal comprometido em uma rede sem VLANs pode capturar hashes de dezenas de usuários em poucas horas.
**Treinamento ofensivo e comunidade de segurança:** A técnica é amplamente ensinada em cursos de ethical hacking no Brasil (CEH, OSCP, cursos locais como Desec Security e NEVER STOP HACKING), o que contribui para sua disseminação como vetor de ataque tanto em testes legítimos quanto em ataques reais.
**Recomendação do CERT.br:** O [[cert-br|CERT.br]] inclui a desabilitação de LLMNR e NBT-NS em suas recomendações de hardening para redes Windows, mas a adoção ainda é baixa - especialmente em órgãos públicos e empresas sem equipe de segurança dedicada.
## Software Associado
- [[s0357-impacket|Impacket]] (ferramenta)
- [[s0363-empire|Empire]] (ferramenta)
- [[s0378-poshc2|PoshC2]] (ferramenta)
- [[s0192-pupy|Pupy]] (ferramenta)
- [[s0174-responder|Responder]] (ferramenta)
## Referências
- [MITRE ATT&CK - T1557.001](https://attack.mitre.org/techniques/T1557/001)
- [Responder - Laurent Gaffie (SpiderLabs)](https://github.com/lgandx/Responder)
- [ntlmrelayx - Impacket Project](https://github.com/fortra/impacket/blob/master/examples/ntlmrelayx.py)
- [Mitigating LLMNR/NBT-NS Poisoning - Microsoft Docs](https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/turn-off-multicast-name-resolution)
- [The Hacker Recipes - NTLM Relay](https://www.thehacker.recipes/ad/movement/ntlm/relay)
- [[t1040-network-sniffing|T1040 - Network Sniffing]]
- [[t1110-brute-force|T1110 - Brute Force]]
- [[t1557-adversary-in-the-middle|T1557 - Adversary-in-the-Middle]]
- [[g0032-lazarus-group|Lazarus Group]]
- [[g0102-conti-group|Wizard Spider]]