O que impede que um servidor ativado por ip_forwarded seja usado por um invasor como um roteador

2

Configuração / pergunta

Dado um servidor na Internet pública com o IP 185.48.117.176 com /proc/sys/net/ipv4/ip_forward=1 e sem regras de iptable.

O que impede que um invasor seja

  1. diretamente ou
  2. indiretamente (por meio de outro roteador)

conectado à internet usando meu servidor como roteador?

(Eu sei, sem o masquerading adequado configurar seu inútil, pois os reposonses não seriam roteados de volta, no entanto, ele ainda pode ser usado para ataques de inundação UDP, onde o pacote de resposta não é esperado de qualquer maneira.)

O que eu tentei:

Eu tentei adicionar uma rota (na minha máquina cliente / atacante)

route add 0.0.0.0 gw 185.48.117.176

depois que eu adicionei um "falso ip de interface"

ip address add dev wlan0 scope link 185.48.117.176

para evitar a mensagem de erro SIOCADDRT: Network is unreachable . Em seguida, apaguei o "falso ip de interface" para que a rota permaneça.

No entanto, ainda não consigo usar o servidor como uma rota, pois nenhum pacote chega lá (tentei capturar pacotes ICMP usando o tcpdump).

A partir de esta postagem em um problema do docker, parece estar relacionado a se o rede suporta comutação de camada 2.

Por que isso? O que estou perdendo?

    
por GameScripting 22.08.2016 / 18:44

2 respostas

0

De @ MarkoPolo (comentários) :

Your device will send an ARP request (broadcast), trying to get the Layer 2 MAC address associated with 185.48.117.176. Because no interfaces are physically connected to 185.48.117.176, no ARP reply will come back

E para chegar fisicamente ao seu destino ( 185.48.117.176 ) você precisa enviar o pacote para um dispositivo conectado pysicamente a 185.48.117.176 a um dispositivo fisicamente conectado a ele e assim por diante.

Em therory, você poderia, por exemplo, construir um pacote ethernet com um endereço MAC falso do seu roteador (para responder caso 2. indirectly (through another router) ) e encaminhar o pacote para a rede pública, o que é ok, porque é assim que funciona o roteamento .

Qual rede você está tentando acessar / injetar um pacote?

  • Se fosse algum dos endereços da RFC 1918, nenhum roteador público o rotearia, porque onde deveria estar uma rede privada?
  • Se fosse uma rede pública, é acessível de qualquer maneira

Portanto, só faz sentido tentar injetar um pacote em uma rede privada se você estiver fisicamente conectado ao roteador fisicamente conectado à rede privada.
E estando conectado fisicamente estava fora de questão, você, é claro, precisa de uma filtragem adequada.

EDITAR:

Tenha em atenção:
Se o atacante for seu ISP / controla dispositivos do ISP, conectado ao roteador / datacenter, é possível obter pacotes em sua rede. Se você tem NAT ativado, pode se comunicar com os dispositivos na rede privada.

Se for esse o caso, lembre-se de configurar a filtragem adequada.

    
por 22.08.2016 / 19:22
0

Um pacote não pode ser endereçado a essa máquina e à vítima. Se endereçado à vítima, não irá para aquela máquina. Se endereçado a essa máquina, ela não será encaminhada porque atingiu seu destino.

Estritamente falando, um pacote pode ser endereçado para ir a uma máquina e depois para um destino - isso é chamado roteamento de origem . Mas tais pedidos não são honrados a menos que a máquina esteja mal configurada.

    
por 24.08.2016 / 11:06