Razões para desligar / ligar mensagens inacessíveis?

4

Eu vejo essa pergunta ( Como posso impedir que o Linux envie respostas "Destination Inreachable" do ICMP? ) que houve muita discussão apontando para o fato de que você não deve desativar as mensagens inacessíveis do ICMP. Eu estou querendo saber por que e quando você deveria? Eu também quero saber como fazer isso. Eu sei que quebra a descoberta do caminho MTU, mas o que mais?

Em dispositivos Cisco, você pode ativar ou desativar isso, deve haver um motivo. Em sua documentação, ele apenas diz que desligá-lo é para aumentar a segurança, já que é mais difícil obter informações sobre sua rede? Isto é o que a documentação do cisco diz. Eu preciso implementar a capacidade de ativar e desativar isso em um switch para minha empresa, então estou aprendendo sobre isso. Independentemente do motivo, eu ainda tenho que fazê-lo, mas gostaria de uma resposta informada sobre por que fazer ou não dar aos outros.

Quando quero desativar redirecionamentos ICMP, faço isso:

echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects

Existe algo semelhante para inacessíveis?

O usuário no outro segmento fez o seguinte:

iptables -A OUTPUT -p icmp --icmp-type destination-unreachable -j DROP 

este é um bom caminho, então eu poderia ligá-lo novamente parando esta queda?

Devo dizer às pessoas que elas não precisam desse recurso?

EDITAR: Online eu vejo isso:

An attacker could gather information’s about your network when scanning it,
like unused IP’s and networks. When working with (interface-) Access-Lists,
a deny statement triggers an ICMP Type 3     Code 9/10 message
(Network/Host is Administratively Prohibited). When disabling ICMP    unreachables 
on the interface where the ACL is applied, the deny statement 
acts like a ‘drop’ and does not reply.
    
por Paul 04.06.2013 / 12:45

3 respostas

6

De uma resposta completa e bem redigida sobre o mesmo assunto em security.SE , que eu recomendo que você leia:

At its core ICMP was designed as the debugging, troubleshooting, and error reporting mechanism for IP. This makes it insanely valuable so a lot of thought needs to into shutting it down. It would be a bit like tacking >/dev/null 2>&1 to the end of all your cron entries.

O Quench / Redirect de origem é praticamente obsoleto e removido dos dispositivos de rede modernos. O IPv6 requer que o ICMP funcione totalmente.

A conclusão: não bloqueie nada, a menos que você entenda completamente as implicações. Se eu fosse lhe dar um conselho, seria para bloquear o eco icmp no seu firewall externo e deixar todo o resto aberto. Mas essa é apenas a minha opinião.

    
por 04.06.2013 / 15:34
2

Evitar que seu servidor envie "destino inacessível" basicamente faz com que ele mude para a maioria das verificações de porta, o que aumenta a segurança. No entanto, não por muito. Ele quebra a descoberta do caminho e não há razão real para bloqueá-lo. Há muitas maneiras de varrer um servidor e essa resposta do ICMP é apenas uma delas.

    
por 04.06.2013 / 13:05
0

Eu acho que você tem alguns erros. O Redirecionamento ICMP e o Destino ICMP Inacessível são diferentes.

O redirecionamento ICMP deve ser desativado, porque é extremamente fácil falsificar e um invasor pode forjar pacotes de redirecionamento ICMP basicamente.

Destino ICMP Inacessível é necessário para o seu host fazer o caminho MTU descobrir, desabilitado ele pode fazer algum falso positivo com a comunicação do seu host. Mas um invasor também pode usá-lo para descobrir sua topologia de rede.

A solução simples para você é fazer com que o seu firewall negue todos os novos pacotes ICMP de entrada, apenas aceite pacotes com o estado ESTABLISHED.

iptables -A INPUT -i eth0 -p icmp -m state --state ESTABLISHED -j ACCEPT
iptables -A OUPUT -i eth0 -p icmp -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -e eth0 -p icmp -j DROP

Assim, seu host ainda pode descobrir o caminho que o MTU descobre e é quase "invisível" com um scanner automático.

    
por 04.06.2013 / 13:25

Tags