O NAT do VMWare não está preenchendo o ARP com IP / MAC apenas do host VMWare?

0

Eu tive um problema durante o teste de penetração com o Netdiscover em uma configuração virtual usando o VMPlayer, versão gratuita. A máquina de ataque está na interface de rede VMWare NAT e as máquinas de destino estão no host apenas do VMWare. Descobri que o Netdiscover não estava funcionando porque a interface do VMware NAT não tinha preenchido sua tabela ARP com o IP / MAC das máquinas de destino (o Netdiscover usa o ARP). Todos os outros protocolos testados do NAT para somente host (http, ping) funcionaram sem problemas. O problema original está no link .

Eu olhei para a documentação do VMWare e não encontrei nada claro sobre como o ARP é preenchido.

Este é o comportamento normal do VMWare ou estou fazendo algo errado?

    
por Stone True 22.11.2015 / 17:34

1 resposta

2

Netdiscover funciona ...

by actively sending arp requests

As solicitações de Arp não cruzam gateways. Por um lado, em máquinas Linux, ativamos o encaminhamento IPv4 , mas os pacotes IPv4 são objetos OSI-Camada 3, enquanto os pedidos ARP são objetos OSI-Camada 2, de modo que em nenhum kernel Linux existe uma instrução para encaminhar solicitações ARP para outra interface.

Este é exatamente o seu caso: uma vez que uma solicitação ARP atinja a interface do host, ela será descartada porque o IP para o qual o MAC é necessário não corresponde ao da interface. Nem o pedido será encaminhado para outra interface por causa do motivo acima. Portanto, seu host (corretamente) descarta a solicitação ARP, que ficará sem resposta. Isso explica a falha do Netdiscover na sua configuração.

A falha acima não se deve ao fato de que no VMWare não há gateway adequado entre as diferentes redes. Mesmo negligenciando a impossibilidade dos servidores Linux de encaminhar qualquer coisa além de objetos IPv4 ( ie , supondo que você tenha roteadores / gateways não-Linux), o comportamento mais comum para gateways é responder a solicitações ARP de hosts remotos com o seu próprio endereço MAC , veja por exemplo aqui sob operação ARP para um host remoto . Em outras palavras, não há cadeia upstream de solicitações ARP até que o endereço MAC de um host remoto seja correspondido ao IP fornecido. Nem o comportamento mínimo descrito acima (retornando o endereço MAC do gateway local) é comum.

Tudo isso pode ser facilmente testado: em uma máquina Debian

  sudo apt-get install iputils-arping 
  sudo arping -f -c 1 -w 5 -I eth0 8.8.8.8

e algo semelhante a isso em todos os outros sistemas operacionais. Você verá que não recebe respostas. Você também pode usar traceroute para encontrar os endereços IP de alguns dos seus próprios gateways upstream; o comando

  sudo arping -f -c 1 -w 5 -I eth0 IP_of_Upstream_Gateway

também ficará sem resposta.

Para testar Netdiscover em sua configuração, você terá que colocar todas as suas VMs, atacantes e atacantes na mesma sub-rede . Então o ARP funcionará.

    
por 26.11.2015 / 12:07