<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
**Dica de recompensa por bugs**: **inscreva-se** no **Intigriti**, uma plataforma premium de **recompensa por bugs criada por hackers, para hackers**! Junte-se a nós em [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) hoje e comece a ganhar recompensas de até **$100.000**!
Você pode tentar enviar alguns pacotes **ICMP** e **esperar respostas**. A maneira mais fácil é simplesmente enviar uma **solicitação de eco** e esperar pela resposta. Você pode fazer isso usando um simples `ping` ou usando `fping` para **intervalos**.\
Você também pode usar o **nmap** para enviar outros tipos de pacotes ICMP (isso evitará filtros para a solicitação-resposta de eco ICMP comum).
É muito comum encontrar que todos os tipos de pacotes ICMP estão sendo filtrados. Então, tudo o que você pode fazer para verificar se um host está ativo é **tentar encontrar portas abertas**. Cada host possui **65535 portas**, então, se você tiver um escopo "grande", **não pode** testar se **cada porta** de cada host está aberta ou não, pois isso levaria muito tempo.\
Portanto, o que você precisa é de um **scanner de portas rápido** ([masscan](https://github.com/robertdavidgraham/masscan)) e uma lista das **portas mais usadas:**
Você também pode tentar verificar se alguma **porta UDP está aberta** para decidir se deve **prestar mais atenção** a um **host**. Como os serviços UDP geralmente **não respondem** com **nenhum dado** a um pacote de sonda UDP vazio regular, é difícil dizer se uma porta está sendo filtrada ou aberta. A maneira mais fácil de decidir isso é enviar um pacote relacionado ao serviço em execução e, como você não sabe qual serviço está em execução, deve tentar o mais provável com base no número da porta:
A linha de comando nmap proposta anteriormente testará as **principais 1000 portas UDP** em cada host dentro do intervalo **/24**, mas mesmo assim isso levará **>20min**. Se precisar de **resultados mais rápidos**, você pode usar o [**udp-proto-scanner**](https://github.com/portcullislabs/udp-proto-scanner): `./udp-proto-scanner.pl 199.66.11.53/24` Isso enviará essas **sondagens UDP** para suas **portas esperadas** (para um intervalo /24, isso levará apenas 1 minuto): _DNSStatusRequest, DNSVersionBindReq, NBTStat, NTPRequest, RPCCheck, SNMPv3GetRequest, chargen, citrix, daytime, db2, echo, gtpv1, ike,ms-sql, ms-sql-slam, netop, ntp, rpc, snmp-public, systat, tftp, time, xdmcp._
Se você estiver dentro da rede, uma das primeiras coisas que você vai querer fazer é **descobrir outros hosts**. Dependendo de **quanto barulho** você pode/quer fazer, diferentes ações podem ser realizadas:
Observe que as técnicas comentadas em [_**Descobrindo hosts de fora**_](./#discovering-hosts-from-the-outside) (_Descoberta de Portas TCP/HTTP/UDP/SCTP_) também podem ser **aplicadas aqui**.\
- Se você **pingar** um **endereço de broadcast de sub-rede**, o ping deve chegar a **cada host** e eles podem **responder** a **você**: `ping -b 10.10.5.255`
- Pingando o **endereço de broadcast da rede**, você pode até encontrar hosts dentro de **outras sub-redes**: `ping -b 255.255.255.255`
- Use as flags `-PE`, `-PP`, `-PM` do `nmap` para realizar a descoberta de hosts enviando respectivamente solicitações de **echo ICMPv4**, **timestamp** e **máscara de sub-rede**: `nmap -PE -PM -PP -sn -vvv -n 10.12.5.0/24`
Wake On Lan é usado para **ligar** computadores por meio de uma **mensagem de rede**. O pacote mágico usado para ligar o computador é apenas um pacote onde um **MAC Dst** é fornecido e então é **repetido 16 vezes** dentro do mesmo pacote.\
Então esse tipo de pacotes geralmente são enviados em um **ethernet 0x0842** ou em um **pacote UDP para a porta 9**.\
Se **nenhum \[MAC]** for fornecido, o pacote é enviado para o **broadcast ethernet** (e o MAC de broadcast será o que está sendo repetido).
* Enviar um **pacote UDP** e verificar a resposta _**ICMP unreachable**_ se a porta estiver **fechada** (em vários casos, o ICMP será **filtrado** e você não receberá nenhuma informação se a porta estiver fechada ou aberta).
* Enviar **datagramas formatados** para obter uma resposta de um **serviço** (por exemplo, DNS, DHCP, TFTP e outros, conforme listado em _nmap-payloads_). Se você receber uma **resposta**, então a porta está **aberta**.
O **Nmap** irá **combinar ambas** as opções usando "-sV" (os escaneamentos UDP são muito lentos), mas observe que os escaneamentos UDP são mais lentos do que os escaneamentos TCP:
O SCTP fica ao lado do TCP e UDP. Destinado a fornecer **transporte** de dados de **telefonia** sobre **IP**, o protocolo duplica muitos dos recursos de confiabilidade do Sistema de Sinalização 7 (SS7) e sustenta uma família de protocolos maior conhecida como SIGTRAN. O SCTP é suportado por sistemas operacionais, incluindo IBM AIX, Oracle Solaris, HP-UX, Linux, Cisco IOS e VxWorks.
Roteadores, firewalls e dispositivos de rede mal configurados às vezes **respondem** a sondagens de rede **usando endereços de origem não públicos**. Você pode usar o _tcpdump_ para **identificar pacotes** recebidos de **endereços privados** durante os testes. Neste caso, a interface _eth2_ no Kali Linux é **acessível** a partir da **Internet pública** (Se você estiver **atrás** de um **NAT** de um **Firewall**, esse tipo de pacotes provavelmente será **filtrado**).
Ao farejar, você pode aprender detalhes dos intervalos de IP, tamanhos de sub-rede, endereços MAC e nomes de host revisando quadros e pacotes capturados. Se a rede estiver mal configurada ou o tecido de comutação estiver sob estresse, os atacantes podem capturar material sensível por meio de farejamento passivo na rede.
Bettercap is a powerful, flexible, and portable tool created to perform various types of network attacks. It provides a wide range of features for network scanning, sniffing, and man-in-the-middle attacks. Bettercap is widely used by penetration testers and security professionals for testing network security.
Você pode usar ferramentas como [https://github.com/lgandx/PCredz](https://github.com/lgandx/PCredz) para analisar credenciais de um arquivo pcap ou de uma interface ao vivo.
O ARP Spoofing consiste em enviar ARPResponses gratuitos para indicar que o IP de uma máquina tem o MAC do nosso dispositivo. Em seguida, a vítima alterará a tabela ARP e entrará em contato com nossa máquina sempre que quiser contatar o IP falsificado.
set arp.spoof.targets <IP>#Specific targets to ARP spoof (default=<entiresubnet>)
set arp.spoof.whitelist #Specific targets to skip while spoofing
set arp.spoof.fullduplex true #If true, both the targets and the gateway will be attacked, otherwise only the target (default=false)
set arp.spoof.internal true #If true, local connections among computers of the network will be spoofed, otherwise only connections going to and coming from the Internet (default=false)
Overflow da tabela CAM do switch enviando muitos pacotes com diferentes endereços MAC de origem. Quando a tabela CAM está cheia, o switch começa a se comportar como um hub (transmitindo todo o tráfego).
O **DTP (Dynamic Trunking Protocol)** é um protocolo de camada de link projetado para fornecer um sistema de tronco automático. Com o DTP, os switches decidem qual porta funcionará no modo tronco (Trunk) e qual não funcionará. O uso do **DTP** indica uma **má concepção de rede.****Os troncos devem ser estritamente** onde são necessários e devem ser documentados.
**Por padrão, todas as portas do switch operam no modo Dynamic Auto.** Isso indica que a porta do switch está no modo de iniciação de tronco do switch vizinho. **O Pentester precisa se conectar fisicamente ao switch e enviar um quadro DTP Desirable**, que aciona a porta para mudar para o modo tronco. O atacante pode então enumerar VLANs usando análise de quadros STP e contornar a segmentação de VLANs criando interfaces virtuais.
Muitos switches suportam o Protocolo de Tronco Dinâmico (DTP) por padrão, no entanto, um adversário pode abusar disso para **emular um switch e receber tráfego em todas as VLANs**. A ferramenta [_**dtpscan.sh**_](https://github.com/commonexploits/dtpscan) pode farejar uma interface e **relatar se o switch está no modo padrão, tronco, dinâmico, automático ou de acesso** (este é o único que evitaria o VLAN hopping). A ferramenta indicará se o switch é vulnerável ou não.
Se for descoberto que a rede é vulnerável, você pode usar o _**Yersinia**_ para lançar um "**enable trunking**" usando o protocolo "**DTP**" e poderá ver pacotes de rede de todas as VLANs.
Para enumerar as VLANs também é possível gerar o quadro DTP Desirable com o script [**DTPHijacking.py**](https://github.com/in9uz/VLANPWN/blob/main/DTPHijacking.py). Não interrompa o script sob nenhuma circunstância. Ele injeta DTP Desirable a cada três segundos. **Os canais de trunk criados dinamicamente no switch só permanecem ativos por cinco minutos. Após cinco minutos, o trunk é desativado.**
Gostaria de salientar que **Acesso/Desejável (0x03)** indica que o quadro DTP é do tipo Desejável, o que diz à porta para mudar para o modo Trunk. E **802.1Q/802.1Q (0xa5)** indica o tipo de encapsulamento **802.1Q**.
O ataque discutido de **Tronco Dinâmico e criação de interfaces virtuais para descobrir hosts em outras VLANs** é **executado automaticamente** pela ferramenta: [**https://github.com/nccgroup/vlan-hopping---frogger**](https://github.com/nccgroup/vlan-hopping---frogger)
Se um atacante conhece o valor do **MAC, IP e ID da VLAN do host da vítima**, ele poderia tentar **marcar duplamente um quadro** com sua VLAN designada e a VLAN da vítima e enviar um pacote. Como a **vítima não poderá se conectar de volta** com o atacante, a **melhor opção para o atacante é se comunicar via UDP** com protocolos que possam realizar algumas ações interessantes (como SNMP).
Outra opção para o atacante é lançar uma **varredura de porta TCP falsificando um IP controlado pelo atacante e acessível pela vítima** (provavelmente através da internet). Em seguida, o atacante poderia farejar no segundo host de propriedade dele se ele receber alguns pacotes da vítima.
Se você tiver **acesso a um switch ao qual está diretamente conectado**, você tem a capacidade de **burlar a segmentação de VLAN** dentro da rede. Simplesmente **altere a porta para o modo trunk** (também conhecido como trunk), crie interfaces virtuais com os IDs das VLANs de destino e configure um endereço IP. Você pode tentar solicitar o endereço de forma dinâmica (DHCP) ou pode configurá-lo estaticamente. Isso depende do caso.
Em redes sem fio para convidados e outros ambientes, as configurações de VLAN privada (também conhecida como _isolamento de porta_) são usadas para **impedir que os pares interajam** (ou seja, os clientes **se conectam a um ponto de acesso sem fio, mas não podem se comunicar entre si**). Dependendo dos ACLs de rede (ou da falta deles), pode ser possível enviar pacotes IP para um roteador, que então os encaminha de volta para um par vizinho.
Este ataque enviará um **pacote especialmente criado para o IP de um cliente, mas com o MAC do roteador**. Em seguida, o **roteador redirecionará o pacote para o cliente**. Assim como nos _Ataques de Dupla Marcação_, você pode explorar essa vulnerabilidade controlando um host acessível pela vítima.
**VTP (Protocolo de Tronco de VLAN)** é um protocolo projetado para gerenciar centralmente as VLANs. Para acompanhar o banco de dados VLAN atual, os switches verificam números de revisão especiais. Quando ocorre uma atualização na tabela, o número de revisão é incrementado em um. E se um switch detectar uma configuração com um número de revisão mais alto, ele atualizará automaticamente seu banco de dados VLAN.
* **Servidor VTP.** Um switch no papel de Servidor VTP pode criar novas VLANs, excluir antigas ou alterar informações nas próprias VLANs. **Ele também gera anúncios VTP para o restante dos membros do domínio.**
* **Cliente VTP.** Um switch nesse papel receberá anúncios VTP específicos de outros switches no domínio para atualizar os bancos de dados VLAN em seu próprio switch. Os clientes são limitados em sua capacidade de criar VLANs e nem mesmo podem alterar a configuração da VLAN localmente. Em outras palavras, **acesso somente leitura.**
* **Transparente VTP.** Nesse modo, o switch não participa dos processos VTP e pode hospedar a administração completa e local de toda a configuração da VLAN. Ao operar no modo transparente, os switches apenas transmitem anúncios VTP de outros switches sem afetar sua configuração de VLAN. **Esses switches sempre terão um número de revisão zero e não podem ser atacados.**
* **Anúncio Resumido —** o anúncio VTP que o servidor VTP envia a cada **300 segundos (5 minutos).** Este anúncio armazena o nome do domínio VTP, a versão do protocolo, o carimbo de data/hora e o valor de hash de configuração MD5.
* **Anúncio de Subconjunto —** este é o anúncio VTP que é enviado sempre que ocorre uma alteração na configuração da VLAN.
* **Solicitação de Anúncio —** é uma solicitação do cliente VTP ao servidor VTP para uma mensagem de Anúncio Resumido. Geralmente enviada em resposta a uma mensagem de que um switch detectou um Anúncio Resumido com um número de revisão de configuração mais alto.
O VTP pode ser **atacado apenas de uma porta de tronco**, porque **os anúncios VTP são apenas transmitidos e recebidos em portas de tronco.****Portanto, ao realizar pentesting após atacar o DTP, seu próximo alvo poderia ser o VTP.** Para atacar o domínio VTP, você pode **usar o Yersinia** para **executar uma injeção VTP que apagará todo o banco de dados de VLAN** e assim paralisar a rede.
Ao enviar muitos BPDUs TCP (Notificação de Mudança de Topologia) ou Conf (os BPDUs enviados quando a topologia é criada), os switches ficam sobrecarregados e param de funcionar corretamente.
Quando um TCP é enviado, a tabela CAM dos switches será apagada em 15s. Então, se você estiver enviando continuamente esse tipo de pacotes, a tabela CAM será reiniciada continuamente (ou a cada 15 segundos) e quando for reiniciada, o switch se comportará como um hub.
O atacante simula o comportamento de um switch para se tornar a raiz STP da rede. Em seguida, mais dados passarão por ele. Isso é interessante quando você está conectado a dois switches diferentes.\
Isso é feito enviando pacotes CONF de BPDUs dizendo que o valor de **prioridade** é menor que a prioridade real do switch raiz atual.
**Se o atacante estiver conectado a 2 switches, ele pode ser a raiz da nova árvore e todo o tráfego entre esses switches passará por ele** (um ataque MITM será realizado).
yersinia stp -attack 6 #This will cause a DoS as the layer 2 packets wont be forwarded. You can use Ettercap to forward those packets "Sniff" --> "Bridged sniffing"
O Protocolo de Descoberta CISCO (CDP) é o protocolo usado por dispositivos CISCO para se comunicarem, **descobrir quem está vivo** e quais recursos eles possuem.
**Por padrão, o CDP envia anúncios para todas as suas portas.** Mas e se um intruso se conectar a uma porta no mesmo switch? Usando um sniffer de rede, seja **Wireshark**, **tcpdump** ou **Yersinia**, ele poderia extrair **informações valiosas sobre o próprio dispositivo**, desde o modelo até a versão do Cisco IOS. Com essas informações, ele será capaz de enumerar a mesma versão do Cisco IOS e encontrar a vulnerabilidade para explorá-la.
Selecione a opção **tabela CDP de flooding** e inicie o ataque. A CPU do switch será sobrecarregada, assim como a tabela de vizinhos CDP, **resultando em uma "paralisia de rede".**
Embora destinados ao uso pelos telefones Voice over Internet Protocol (VoIP) dos funcionários, os dispositivos VoIP modernos estão cada vez mais integrados a dispositivos IoT. Muitos funcionários agora podem desbloquear portas usando um número de telefone especial, controlar o termostato da sala...
A ferramenta [**voiphopper**](http://voiphopper.sourceforge.net) imita o comportamento de um telefone VoIP em ambientes Cisco, Avaya, Nortel e Alcatel-Lucent. Ele descobre automaticamente o ID da VLAN correto para a rede de voz usando um dos protocolos de descoberta de dispositivos que suporta, como o Protocolo de Descoberta Cisco (CDP), o Protocolo de Configuração Dinâmica de Host (DHCP), o Protocolo de Descoberta de Mídia de Camada de Link (LLDP-MED) e 802.1Q ARP.
**VoIP Hopper** suporta **três** modos CDP. O modo **sniff** inspeciona os pacotes de rede e tenta localizar o ID da VLAN. Para usá-lo, defina o parâmetro **`-c`** como `0`. O modo **spoof** gera pacotes personalizados semelhantes aos que um dispositivo VoIP real transmitiria na rede corporativa. Para usá-lo, defina o parâmetro **`-c`** como **`1`**. O modo spoof com um pacote **pre-madepacket** envia os mesmos pacotes de um telefone IP Cisco 7971G-GE. Para usá-lo, defina o parâmetro **`-c`** como **`2`**.
Usamos o último método porque é a abordagem mais rápida. O parâmetro **`-i`** especifica a **interface de rede** do atacante, e o parâmetro **`-E`** especifica o **nome do dispositivo VOIP** que está sendo imitado. Escolhemos o nome SEP001EEEEEEEEE, que é compatível com o formato de nomenclatura da Cisco para telefones VoIP. O formato consiste na palavra "SEP" seguida por um endereço MAC. Em ambientes corporativos, você pode imitar um dispositivo VoIP existente olhando a etiqueta MAC na parte de trás do telefone; pressionando o botão Configurações e selecionando a opção Informações do Modelo na tela de exibição do telefone; ou conectando o cabo Ethernet do dispositivo VoIP ao seu laptop e observando as solicitações CDP do dispositivo usando o Wireshark.
**Dois tipos de DoS** podem ser realizados contra servidores DHCP. O primeiro consiste em **simular hosts falsos suficientes para usar todos os endereços IP possíveis**.\
Este ataque funcionará apenas se você puder ver as respostas do servidor DHCP e completar o protocolo (**Descoberta** (Comp) --> **Oferta** (servidor) --> **Solicitação** (Comp) --> **ACK** (servidor)). Por exemplo, isso **não é possível em redes Wifi**.
Outra maneira de realizar um DoS DHCP é enviar um **pacote DHCP-RELEASE usando como código fonte todos os IPs possíveis**. Em seguida, o servidor pensará que todos terminaram de usar o IP.
Você pode usar os ataques de DoS mencionados para forçar os clientes a obter novos leases dentro do ambiente e esgotar os servidores legítimos para que fiquem inativos. Assim, quando os legítimos tentarem se reconectar, **você pode fornecer valores maliciosos mencionados no próximo ataque**.
Você pode usar o script DHCP do Responder (_/usr/share/responder/DHCP.py_) para estabelecer um servidor DHCP falso. Definir um gateway malicioso não é ideal, pois a conexão sequestrada é apenas meio-duplex (ou seja, capturamos pacotes de saída do cliente, mas não as respostas do gateway legítimo). Portanto, recomendaria definir um servidor DNS ou WPAD falso para capturar o tráfego HTTP e credenciais em particular.
Se o atacante estiver entre a vítima e o servidor de autenticação, ele poderia tentar degradar (se necessário) o protocolo de autenticação para EAP-MD5 e capturar a tentativa de autenticação. Em seguida, ele poderia realizar uma força bruta usando:
**FHRP** (Protocolo de Redundância do Primeiro Salto) é uma classe de protocolos de rede projetados para **criar um sistema de roteamento redundante ativo**. Com o FHRP, roteadores físicos podem ser combinados em um único dispositivo lógico, o que aumenta a tolerância a falhas e ajuda a distribuir a carga.
Existem três versões do Protocolo de Informações de Roteamento (RIP) - RIP, RIPv2 e RIPng. RIP e RIPv2 usam datagramas UDP enviados para pares através da porta 520, enquanto o RIPng transmite datagramas para a porta UDP 521 via multicast IPv6. O RIPv2 introduziu suporte à autenticação MD5. O RIPng não incorpora autenticação nativa; em vez disso, depende de cabeçalhos IPsec AH e ESP opcionais dentro do IPv6.
**EIGRP (Protocolo de Roteamento de Gateway Interno Aprimorado)** é um protocolo de roteamento dinâmico. **É um protocolo de vetor de distância.** Se não houver **autenticação** e configuração de interfaces passivas, um **intruso** pode interferir no roteamento EIGRP e causar **envenenamento de tabelas de roteamento**. Além disso, a rede EIGRP (ou seja, sistema autônomo) **é plana e não possui segmentação em zonas**. Se um **atacante injetar uma rota**, é provável que essa rota se **espalhe** por todo o sistema autônomo EIGRP.
Para atacar um sistema EIGRP, é necessário **estabelecer uma vizinhança com um roteador EIGRP legítimo**, o que abre muitas possibilidades, desde reconhecimento básico até várias injeções.
\*\*\*\*[**FRRouting**](https://frrouting.org/) permite que você implemente **um roteador virtual que suporta BGP, OSPF, EIGRP, RIP e outros protocolos.** Tudo o que você precisa fazer é implantá-lo no sistema do seu atacante e você pode realmente se passar por um roteador legítimo no domínio de roteamento.
\*\*\*\*[**Coly**](https://code.google.com/p/coly/) também suporta a captura de transmissões EIGRP e a injeção de pacotes para manipular a configuração de roteamento. Para mais informações sobre como atacá-lo com Coly, consulte _**Network Security Assessment: Know Your Network (3ª edição).**_
A maioria das implementações do Open Shortest Path First (OSPF) usa MD5 para fornecer autenticação entre roteadores. Loki e John the Ripper podem capturar e atacar hashes MD5 para revelar a chave, que pode então ser usada para anunciar novas rotas. Os parâmetros de rota são definidos usando a aba _Injection_, e a chave é definida em _Connection_.
* Você pode encontrar mais informações sobre ataques de rede [aqui](https://github.com/Sab0tag3d/MITM-cheatsheet). _(TODO: Leia tudo e todos os novos ataques, se houver)_
ICMP Redirect consiste em enviar um pacote ICMP tipo 1 código 5 que indica que o atacante é a melhor maneira de alcançar um IP. Em seguida, quando a vítima deseja entrar em contato com o IP, ela enviará o pacote através do atacante.
hping3 [VICTIM IP ADDRESS] -C 5 -K 1 -a [VICTIM DEFAULT GW IP ADDRESS] --icmp-gw [ATTACKER IP ADDRESS] --icmp-ipdst [DST IP ADDRESS] --icmp-ipsrc [VICTIM IP ADDRESS] #Send icmp to [1] form [2], route to [3] packets sent to [4] from [5]
apt-get install dnsmasqecho "addn-hosts=dnsmasq.hosts" > dnsmasq.conf #Create dnsmasq.confecho "127.0.0.1 domain.example.com" > dnsmasq.hosts #Domains in dnsmasq.hosts will be the domains resolved by the Dsudo dnsmasq -C dnsmasq.conf --no-daemon
dig @localhost domain.example.com # Test the configured DNS
Frequentemente existem várias rotas para sistemas e redes. Ao criar uma lista de endereços MAC dentro da rede local, utilize _gateway-finder.py_ para identificar hosts que suportam encaminhamento IPv4.
Os sistemas da Microsoft utilizam a Resolução de Nomes Multicast de Link Local (LLMNR) e o Serviço de Nomes NetBIOS (NBT-NS) para resolução de host local quando as consultas DNS falham. A Apple Bonjour e as implementações de configuração zero do Linux utilizam o Multicast DNS (mDNS) para descobrir sistemas dentro de uma rede. Esses protocolos são não autenticados e enviam mensagens por broadcast via UDP; assim, os atacantes podem explorá-los para direcionar usuários para serviços maliciosos.
Muitos navegadores utilizam a Descoberta Automática de Proxy da Web (WPAD) para carregar configurações de proxy da rede. Um servidor WPAD fornece configurações de proxy do cliente por meio de uma URL específica (por exemplo, [http://wpad.example.org/wpad.dat](http://wpad.example.org/wpad.dat)) ao ser identificado por meio de qualquer um dos seguintes métodos:
- DHCP, usando uma entrada de código 252[34](https://learning.oreilly.com/library/view/Network+Security+Assessment,+3rd+Edition/9781491911044/ch05.html#ch05fn41)
- DNS, procurando pelo nome de host _wpad_ no domínio local
- Microsoft LLMNR e NBT-NS (no caso de falha na consulta DNS)
Você pode oferecer diferentes serviços na rede para tentar **enganar um usuário** a inserir algumas **credenciais em texto simples**. **Mais informações sobre esse ataque em** [**Falsificação de dispositivos SSDP e UPnP**](spoofing-ssdp-and-upnp-devices.md)**.**
Alguns sistemas operacionais configuram por padrão o gateway a partir dos pacotes RA enviados na rede. Para declarar o atacante como roteador IPv6, você pode usar:
Por padrão, alguns sistemas operacionais tentam configurar o DNS lendo um pacote DHCPv6 na rede. Assim, um atacante poderia enviar um pacote DHCPv6 para se configurar como DNS. O DHCP também fornece um endereço IPv6 à vítima.
Basicamente, o que esse ataque faz é, no caso do **usuário** tentar **acessar** uma página **HTTP** que está **redirecionando** para a versão **HTTPS**. O **sslStrip** irá **manter** uma conexão **HTTP com** o **cliente e** uma conexão **HTTPS com** o **servidor**, permitindo assim **capturar** a conexão em **texto simples**.
A **diferença** entre **sslStrip+ e dns2proxy** em relação ao **sslStrip** é que eles irão **redirecionar**, por exemplo, _**www.facebook.com**_ para _**wwww.facebook.com**_ (note o **"w" extra**) e irão definir o **endereço deste domínio como o IP do atacante**. Dessa forma, o **cliente** irá **conectar-se** a _**wwww.facebook.com**_ (o atacante), mas nos bastidores o **sslstrip+** irá **manter** a **conexão real** via https com **www.facebook.com**.
O **objetivo** dessa técnica é **evitar o HSTS** porque _**wwww**.facebook.com_**não** será salvo no **cache** do navegador, então o navegador será enganado para realizar **autenticação do facebook em HTTP**.\
Observe que, para realizar esse ataque, a vítima deve tentar acessar inicialmente [http://www.faceook.com](http://www.faceook.com) e não https. Isso pode ser feito modificando os links dentro de uma página http.
Mais informações [aqui](https://www.bettercap.org/legacy/#hsts-bypass), [aqui](https://www.slideshare.net/Fatuo\_\_/offensive-exploiting-dns-servers-changes-blackhat-asia-2014) e [aqui](https://security.stackexchange.com/questions/91092/how-does-bypassing-hsts-with-sslstrip-work-exactly).
**sslStrip ou sslStrip+ não funcionam mais. Isso ocorre porque existem regras HSTS pré-salvas nos navegadores, então mesmo que seja a primeira vez que um usuário acesse um domínio "importante", ele o acessará via HTTPS. Além disso, observe que as regras pré-salvas e outras regras geradas podem usar a flag** [**`includeSubdomains`**](https://hstspreload.appspot.com) **então o exemplo de _**wwww.facebook.com**_ de antes não funcionará mais, já que**_**facebook.com**_**usa HSTS com `includeSubdomains`.**
Outras coisas para testar são tentar assinar o certificado com um certificado válido que não seja uma CA válida. Ou usar a chave pública válida, forçar o uso de um algoritmo como diffie hellman (um que não precise decifrar nada com a chave privada real) e quando o cliente solicitar uma sonda da chave privada real (como um hash), enviar uma sonda falsa e esperar que o cliente não verifique isso.
Os pacotes ARP são usados para descobrir quais IPs estão sendo usados dentro da rede. O PC precisa enviar uma solicitação para cada endereço IP possível e apenas aqueles que estão sendo usados irão responder.
O Bettercap envia uma solicitação MDNS (a cada X ms) pedindo por **\_services\_.dns-sd.\_udp.local**. A máquina que vê esse pacote geralmente responde a essa solicitação. Em seguida, ele procura apenas por máquinas que respondem a "serviços".
**Dica de recompensa por bugs**: **Inscreva-se** no **Intigriti**, uma plataforma premium de **recompensas por bugs criada por hackers, para hackers**! Junte-se a nós em [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) hoje e comece a ganhar recompensas de até **$100.000**!
<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).