iptables | Tipos de ICMP: quais são (potencialmente) prejudiciais?

8

Eu li que certos tipos de pacotes ICMP podem ser prejudiciais. Questões:

  • Quais e por quê?
  • Como devo fazer o layout de um conjunto de regras do iptables para lidar com cada tipo de pacote ICMP?
  • Devo limitar a taxa de qualquer um desses tipos de pacotes ICMP? E como?

[¹] Os tipos que eu li sobre: ​​Redirecionamento (5), Registro de data e hora (13) e Solicitação de máscara de endereço (17). Por favor, não considere apenas estes na sua resposta.

Mais informações
É um servidor Web em um VPS com o Ubuntu Server.

O objetivo
que estou tentando tornar o sistema mais seguro, atenua o risco de alguns ataques D / DoS e abuso geral.

Relacionada
É o meu linux firewall seguro?
Por que não bloquear o ICMP?

ML--
fonte

Respostas:

10

Parece que você está sendo vítima do mantra "ICMP IS EVIL".
O ICMP NÃO é mau, apenas mal compreendido. A triste realidade é que muitos administradores temem o que não entendem e, portanto, expulsam o ICMP de seu universo de rede, afastando-o no nível do firewall de ponta e impedindo que ele tome seu lugar certo e apropriado para o benefício de sua rede.

Dito isto, deixe-me responder às suas perguntas:


Quais tipos de mensagens ICMP podem ser prejudiciais e por quê?
Praticamente todos eles.

  • Echopacotes podem ser usados ​​para interromper serviços (especialmente para sistemas com pilhas IP mal implementadas); Usados ​​legitimamente, eles podem fornecer informações sobre sua rede.

  • Destination Unreachablepode ser injetado maliciosamente; Usados ​​legitimamente, eles podem fornecer informações sobre * sua estrutura de firewall / roteamento ou sobre uma máquina específica em sua rede.

  • Source Quench pode ser enviado com códigos maliciosos para fazer com que seu servidor fique efetivamente em um canto e chupe o polegar.

  • redirect pode ser usado como o nome indica.

  • router advertisemente router solicitationsolicitações podem ser usadas para criar topologias de tráfego "interessantes" (e facilitar ataques MITM) se seus hosts realmente prestarem atenção a elas.

  • traceroutefoi projetado para fornecer informações de topologia de rede.

... etc ...

Os nomes das várias mensagens do ICMP detalham o que eles são capazes de fazer. Exercite sua paranóia inata em sonhar com cenários de pesadelo :-)


Como devo fazer o layout de um conjunto de regras do iptables para lidar com cada tipo de pacote ICMP?
Ausente um bom motivo para mexer com o tráfego ICMP, deixe-o em paz!
Se mexer com o tráfego ICMP impede o uso apropriado das mensagens ICMP (gerenciamento e solução de problemas de tráfego) - será mais frustrante do que útil.


Devo limitar a taxa de qualquer um desses tipos de pacotes ICMP? E como?
Essa pode ser a única exceção legítima à filosofia "deixe para lá" - as mensagens ICMP com limitação de taxa ou largura de banda podem ser úteis para ajudá-lo a evitar usos ilegítimos das mensagens ICMP. O FreeBSD é fornecido com o ICMP Bandwidth / Rate Limiting por padrão, e eu suponho que o Linux tenha uma funcionalidade semelhante.

A limitação de taxa / largura de banda é muito preferível a uma regra geral de firewall que descarta o tráfego ICMP: ainda permite que o ICMP atenda a sua finalidade na rede e também atenua parcialmente as tentativas de abusar do servidor.


O exemplo acima representa as opiniões de um administrador de sistemas, que, por sua vez, está cansado de ter problemas com redes de solução de problemas em que todo o tráfego do ICMP é descartado - é irritante, frustrante e leva mais tempo para encontrar e corrigir problemas. :-)

voretaq7
fonte
Mas .. mas .. o Ping da Morte deve ser temido, a níveis irracionais! (é ruim que eu poderia dizer que escreveu esta resposta após o primeiro parágrafo?)
Shane Madden
De fato, o ICMP é útil. Se eu fui vítima de "ICMP é mau", prefiro bloquear tudo e não abrir esta pergunta :) Tudo o que quero é ajuda para tomar uma decisão informada. Você pode ter certeza que eu não vou para bloqueá-los todos :)
ML--
@ Shane Madden: Vai --state INVALIDdeixar Ping of Death?
ML--
7
@ ML-- Por favor, não se preocupe com o ping da morte. Nenhum sistema operacional deste milênio é vulnerável.
Shane Madden
2
@ ML-- O único vetor com o qual eu estaria preocupado é Source Quench, e você pode bloqueá-lo com relativa impunidade (o TCP acabará descobrindo isso por si mesmo). Ping e Traceroute são definitivamente vazamentos de informações, mas, na prática, não acho que adicione muita segurança real ao seu ambiente. Sua milhagem (e o nível exigido de paranóia) podem variar (dependendo da sensibilidade dos seus dados / ambiente).
voretaq7
4

Não se trata tanto de tipos quanto de possíveis vetores de ataque. Há um vetor de ataque DoS bastante eficaz usando o pacote de extinção de origem ICMP em muitas pilhas TCP / IP de hosts da Internet comuns há anos - e, no entanto, isso não significa que as mensagens ICMP de extinção de origem precisem ser filtradas em geral. Como tudo na segurança da rede, avalie os benefícios de um determinado protocolo ou serviço contra a possível superfície de ataque com base em suas prioridades pessoais . Se você possui hosts em suas redes suscetíveis a um vetor de ataque por meio do ICMP, não pode corrigi-los e não precisa dos recursos específicos, certamente deve considerar filtrá-lo.

Para minhas redes v4 administradas, achei seguro e conveniente permitir que os tipos ICMP 0, 8 (solicitação / resposta de eco), 11 (TTL expirado), 3 (destino inacessível) e 12 (erro de cabeçalho IP) e eliminassem todos o resto.

o wabbit
fonte