Los ataques de falsificación de IP, conocidos también como IP spoofing, forman parte de un oscuro abanico de tácticas utilizadas en el ciberespacio. Dicho de manera sencilla, en estos ataques, los ciberdelincuentes disfrazan su verdadera dirección IP, camuflándose bajo una falsa.
Al final del artículo encontrarás un pequeño test que te permitirá evaluar los conocimientos adquiridos en esta lectura
En este contexto, podríamos considerar la dirección IP como el DNI (número de identificación) de un dispositivo en internet. Cada acción en la red deja un rastro digital vinculado a esta dirección. No obstante, en los ataques de falsificación de IP, los ciberdelincuentes manipulan este rastro.
¿Cómo ocurre esto?
Los atacantes manipulan los paquetes de datos que se envían a través de la red. Cuando el paquete llega a su destino, aparenta venir de una dirección IP diferente. Así, se encubre la verdadera ubicación del atacante, dificultando su rastreo.
Es relevante señalar que esta táctica no sólo sirve para ocultar la identidad del ciberdelincuente. Además, puede utilizarse para lanzar ataques de denegación de servicio (DoS) o incluso para acceder a sistemas protegidos.
Por ejemplo, un atacante puede enviar paquetes de datos a una red o sistema, pretendiendo que provienen de una dirección IP de confianza. Esto puede engañar al sistema y permitir el acceso del atacante.
Caso de análisis
Un ejemplo destacado y bien documentado de un ataque utilizando falsificación de IP, o IP Spoofing, fue el ataque a la empresa GitHub en 2018.
GitHub, una plataforma de alojamiento de código fuente y desarrollo de software, experimentó el 28 de febrero de 2018 un ataque de denegación de servicio distribuido (DDoS) de gran escala. Este ataque es considerado uno de los más grandes registrados hasta la fecha, alcanzando un tráfico no solicitado de 1.35 terabits por segundo.
El ataque se realizó utilizando una técnica conocida como “amplificación de memcached”. Los atacantes aprovecharon servidores memcached (diseñados para acelerar las aplicaciones web al almacenar datos en la memoria) que estaban incorrectamente expuestos en internet.
Estos servidores pueden tener una relación de amplificación de hasta 51.000:1, lo que significa que por cada byte de datos que el atacante envía, hasta 51.000 bytes de tráfico pueden inundar el objetivo.
Los atacantes falsificaron la dirección IP de GitHub en sus solicitudes a los servidores memcached, que luego inundaron GitHub con tráfico. Debido a que la dirección IP de GitHub estaba falsificada en las solicitudes, los servidores memcached enviaron sus respuestas a GitHub, en lugar de enviarlas de vuelta al atacante.
Como resultado, GitHub se vió inundado con un volumen abrumador de tráfico, lo que interrumpió sus servicios.
El ataque a GitHub es un ejemplo claro de cómo la falsificación de IP puede ser utilizada para magnificar la escala de un ataque DDoS. Este incidente también sirve como un recordatorio de los riesgos de seguridad asociados con la exposición incorrecta de servicios en internet.
Desde entonces, GitHub ha tomado medidas adicionales para mejorar su resiliencia a ataques DDoS, y las organizaciones de todo el mundo han trabajado para proteger sus servidores memcached de la explotación.
Defensa contra los ataques
Defenderse contra los ataques de falsificación de IP puede ser un desafío debido a su naturaleza engañosa y a la variedad de tácticas que los atacantes pueden emplear. Sin embargo, hay varias medidas que las organizaciones pueden tomar para reducir el riesgo de estos ataques.
1. Router de Borde y Firewalls
Como primera línea de defensa, los routers de borde y los firewalls pueden ser configurados para bloquear el tráfico entrante de direcciones IP que son claramente falsas. Por ejemplo, un router puede ser configurado para rechazar paquetes de datos que vienen de direcciones IP que no deberían existir en la red pública. Este enfoque se llama filtrado de ingreso (ingress filtering), y puede ser una medida efectiva para prevenir algunos tipos de falsificación de IP.
2. Implementar Prevención de Suplantación de IP (IP Spoofing)
La implementación de BCP38, un estándar de la industria que define las mejores prácticas para la prevención de la suplantación de IP, puede ser de ayuda. BCP38 sugiere que los proveedores de servicios de Internet (ISP) y las redes implementen filtrado de salida (egress filtering) en sus routers para asegurarse de que los paquetes de datos salientes tienen una dirección IP fuente legítima.
3. Sistemas de Detección y Prevención de Intrusos (IDS/IPS)
Estos sistemas pueden ser útiles para detectar y prevenir ataques de falsificación de IP. Los IDS/IPS pueden identificar patrones sospechosos en el tráfico de la red que podrían indicar un ataque en progreso.
4. Implementar un Sistema de Distribución de Denegación de Servicio (DDoS)
Como los ataques de falsificación de IP a menudo se utilizan en ataques DDoS, contar con medidas de mitigación de DDoS puede ser beneficioso. Los servicios de mitigación de DDoS pueden ayudar a absorber el tráfico excesivo durante un ataque y a mantener los servicios en línea.
5. Honeypots y Honeynets
Estas herramientas pueden ser utilizadas para atraer a los atacantes y observar sus tácticas. Sin embargo, los honeypots y honeynets suelen ser más útiles para la investigación y el análisis que para la defensa activa. Además, si se implementan incorrectamente, pueden presentar riesgos de seguridad adicionales.
Configuración básica en MikroTik para evitar IP Spoofing
Configura las reglas del firewall.
Establece reglas que bloqueen los paquetes que intentan entrar a tu red con una dirección IP de origen que no debería estar en el tráfico entrante. Esto se llama filtrado de ingreso.
Puedes usar reglas de firewall similares a las siguientes (ajustándolas según la configuración de tu red):
/ip firewall filter
add chain=input in-interface=ether1 src-address-list=LAN action=drop
add chain=forward in-interface=ether1 src-address-list=LAN action=drop
En las reglas anteriores, ether1
es la interfaz que está conectada a Internet, y LAN
es la lista de direcciones IP de tu red interna.
Estas reglas bloquearán cualquier paquete que intente entrar a tu red desde ether1
si tiene una dirección IP de origen que está en tu lista de direcciones LAN
.
Dicho de otra manera, si un paquete pretende ser de tu red interna pero está tratando de entrar a tu red desde Internet, será bloqueado.
Filtrado de salida
Mientras que el filtrado de ingreso se enfoca en bloquear tráfico entrante con direcciones IP sospechosas, el filtrado de salida bloquea el tráfico saliente de tu red que tiene una dirección IP de origen que no debería tener.
Por ejemplo, podrías bloquear cualquier paquete que intenta salir de tu red desde la interfaz conectada a Internet si tiene una dirección IP de origen que está en tu lista de direcciones LAN.
Esta regla ayudaría a evitar que tus dispositivos sean utilizados en ataques de falsificación de IP hacia otros.
/ip firewall filter
add chain=output out-interface=ether1 src-address-list=LAN action=drop
Bloqueo de direcciones IP privadas no utilizadas
Si hay rangos de direcciones IP privadas que no estás utilizando en tu red, podrías configurar reglas de firewall para bloquear el tráfico de esas direcciones. Esto puede ayudar a prevenir la falsificación de IP desde esos rangos.
/ip firewall filter
add chain=input in-interface=ether1 src-address=192.168.0.0/16 action=drop
Bloqueo de direcciones IP reservadas y de loopback
Algunas direcciones IP están reservadas para usos especiales y nunca deberían aparecer en el tráfico de Internet. Podrías configurar reglas de firewall para bloquear el tráfico de estas direcciones.
/ip firewall filter
add chain=input in-interface=ether1 src-address=127.0.0.0/8 action=drop
Implementación de listas de bloqueo
MikroTik permite la creación de listas de direcciones IP para bloquear. Podrías usar esta característica para bloquear direcciones IP o rangos de direcciones conocidos por participar en ataques de falsificación de IP.
Estas reglas son sólo sugerencias y pueden no ser adecuadas para todas las redes. Siempre debes adaptar tus reglas de firewall a las necesidades específicas de tu red y mantenerlas actualizadas a medida que esas necesidades cambien.