Ignorar y no enviar nunca redirecciones ICMP
Un dispositivo de red puede decirle a este equipo que envíe su tráfico a través de otro. Esto rechaza esos mensajes y deja de enviarlos.
Por qué importa
Un ICMP redirect es un mensaje de un router que dice usa este otro router para ese destino. En una Wi-Fi compartida, un atacante puede enviar uno falso para que tu tráfico pase por su máquina, donde puede observarlo o cambiarlo. Rechazar los redirects mantiene tus rutas bajo tu control.
Cómo funciona
Pone las opciones accept_redirects y secure_redirects en 0 para IPv4 y accept_redirects en 0 para IPv6, en los grupos de interfaces all y default. También pone send_redirects en 0, para que este equipo no envíe redirects a otros.
Quién debería usarlo
Correcto para escritorios, portátiles y la mayoría de servidores. Una máquina que hace de router puede querer seguir enviando redirects, y algunas redes pequeñas dependen de ellos.
Qué puedes notar
Nada en redes normales. Si tu equipo no es el router de la red, nadie nota la diferencia, y lo mismo vale para los demás dispositivos.
Compruébalo en tu equipo
Lee el valor actual:
sysctl net.ipv4.conf.all.accept_redirects
sysctl net.ipv4.conf.default.accept_redirects
sysctl net.ipv4.conf.all.secure_redirects
sysctl net.ipv4.conf.default.secure_redirects
sysctl net.ipv6.conf.all.accept_redirects
sysctl net.ipv6.conf.default.accept_redirects
sysctl net.ipv4.conf.all.send_redirects
sysctl net.ipv4.conf.default.send_redirects Aplícalo a mano
Establécelo ahora (hasta el próximo reinicio):
sudo sysctl -w net.ipv4.conf.all.accept_redirects=0
sudo sysctl -w net.ipv4.conf.default.accept_redirects=0
sudo sysctl -w net.ipv4.conf.all.secure_redirects=0
sudo sysctl -w net.ipv4.conf.default.secure_redirects=0
sudo sysctl -w net.ipv6.conf.all.accept_redirects=0
sudo sysctl -w net.ipv6.conf.default.accept_redirects=0
sudo sysctl -w net.ipv4.conf.all.send_redirects=0
sudo sysctl -w net.ipv4.conf.default.send_redirects=0 Consérvalo tras los reinicios, en un archivo tuyo:
sudo tee /etc/sysctl.d/90-net-redirects.conf <<'EOF'
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
EOF
sudo sysctl --system Deshazlo
Elimina el archivo y reinicia, o vuelve a poner el valor anterior con sysctl -w.
Ajustes relacionados
Fuentes
- Linux Hardening Guide (madaidans)
- 2.2.2
- ANSSI, Configuration recommendations of a GNU/Linux system (BP-028)
- kernel and network settings