IP spoofing: así manipulan los atacantes tus paquetes de datos
Independientemente de si navegas por Internet en tu tiempo libre o de si eres el responsable de una red de área local, es fundamental que te protejas contra accesos no autorizados y ataques que puedan generar daños considerables a tu sistema. Durante décadas, los cibercriminales han encontrado diferentes métodos para obtener acceso a sistemas informáticos externos, generando así daños a pequeña y gran escala. Si los intrusos son profesionales y cuentan con las herramientas necesarias, el usuario no se enterará del ataque en sí. Por otra parte, muchos cibercriminales saben cómo borrar sus huellas, por lo que es casi imposible determinar el origen de los ataques utilizando medios ordinarios. Una de las técnicas preferidas para estos propósitos es el llamado spoofing (en español, manipulación o suplantación) y, hacia 1980 y en su forma original, el IP spoofing, ya era un tema de conversación en los círculos de expertos.
¿Qué es el IP spoofing?
El llamado IP spoofing es una técnica en la que se envían paquetes de datos TCP/IP o UDP/IP con una dirección de remitente falsa. Para inyectar sus propios paquetes en un sistema externo, el atacante utiliza la dirección de un sistema autorizado y de confianza, que de otra manera sería bloqueado por un sistema de filtrado. En la mayoría de los casos, el IP spoofing se utiliza para realizar ataques DoS y DDoS. Sin embargo, bajo ciertas circunstancias, el atacante también puede interceptar y manipular el tráfico IP entre dos o más sistemas informáticos. A este tipo de ataques se les conoce como man in the middle y, al igual que el IP spoofing (con tan solo unas pocas excepciones), requieren que el atacante se encuentre en la misma subred que la víctima.
La razón de ser del IP spoofing es la suplantación
Suplantar la dirección IP es posible gracias a que la dirección de origen y de destino que cada paquete IP contiene en su encabezado no están lo suficientemente protegidas contra la manipulación. Desafortunadamente no hay mecanismos para cifrar esta información ni para comprobar su veracidad. Sin embargo, con un simple ataque de IP spoofing el atacante no obtiene acceso al tráfico de datos. Es decir, este solo puede cambiar la dirección en el paquete correspondiente, mientras que la dirección IP real se mantiene sin cambios. Así, la respuesta con los datos emitidos no llegará al atacante, sino a la dirección del ordenador que este introdujo.
El sistema que recibe la solicitud no tiene forma de saber que un tercero sin autorización se encuentra detrás del paquete IP, lo que hace que el IP spoofing sea de gran utilidad para los mencionados ataques DoS y DDoS. En particular, los dos siguientes escenarios son posibles:
- Basándose en la dirección de origen, el atacante envía muchos paquetes de datos a varios sistemas dentro de la respectiva red. Estos responden enviando un paquete de datos al ordenador cuya dirección fue usurpada.
- Un host de destino recibe, al mismo tiempo, muchos paquetes de datos por parte de varias direcciones IP suplantadas y, por lo tanto, se sobrecarga.
Los ordenadores cuyas direcciones IP han sido suplantadas pueden convertirse en objetivos para ataques DDoS o servir como herramienta para los mismos. En ambos casos, debido a que los paquetes enviados parecen provenir oficialmente de parte de los ordenadores cuyas IP fueron suplantadas, no es posible identificar a los atacantes.
¿Cómo burlan los atacantes incluso el problema del ataque coordinado?
Un atacante puede causar la sobrecarga intencional desde cualquier lugar, siempre y cuando el equipo de destino esté conectado a Internet. Sin embargo, el acceso directo al tráfico de datos es difícilmente realizable si el intruso no está en la misma subred. Esto se debe a que interceptar un paquete de datos solo es posible cuando se cuenta con el número de secuencia de dicho paquete, algo que externamente, en comparación con otras épocas, es casi imposible hoy en día.
En el pasado, los sistemas operativos y dispositivos de red generaban este encabezado TCP basándose en un patrón sin mayores cambios. De esta forma, los atacantes podían enviar múltiples paquetes al sistema de destino sin mayor problema y, gracias al comprobante de recibo, predecir el número de secuencia posterior. Estos también podían leer o manipular el paquete detrás del número y reenviarlo utilizando la dirección IP suplantada sin que este pudiera ser registrado por los sistemas en el proceso de comunicación. Dado que muchos sistemas recurrían al proceso de inicio de sesión basado en el host y transferían datos de inicio de sesión como nombre de usuario y contraseñas sin cifrar, con un poco de suerte el atacante podía conectarse sin ningún problema. Dado que actualmente los números de secuencia se generan al azar, los llamados ataques de predicción de secuencia TCP (en inglés, TCP Sequence Prediction) son básicamente ineficaces, por lo que los dispositivos antiguos todavía están en riesgo.
Si el IP spoofer se mueve en la misma subred, por ejemplo en la misma red local del sistema atacado, tiene mayores posibilidades de acceder fácilmente al número de secuencia o a los paquetes IP detrás de ella. En lugar de utilizar un procedimiento tedioso para ello, este puede filtrar el tráfico, analizarlo y seleccionar los paquetes de datos deseados. En este caso, se habla de non-blind spoofing.
Cómo protegerse contra el IP spoofing
Durante décadas, los expertos en seguridad y profesionales en la industria informática se han ocupado del problema del IP spoofing. Esto se debe principalmente a la facilidad con la que es posible generar ataques de denegación de servicio o DDoS valiéndose de este método de suplantación IP. Por lo tanto, desde hace tiempo se hace necesaria una filtración específica del tráfico saliente por parte de los proveedores de Internet donde se recojan y descarten los paquetes con direcciones de origen externas a la red. Desafortunadamente, los esfuerzos y costes son los principales motivos por los que, hasta ahora, esta solicitud se ha mantenido como tal sin que nadie haya logrado implementarla. Otra razón para la reticencia de los proveedores de Internet son las aparentes características de seguridad de la última versión del protocolo de Internet IPv6. Entre otras cosas, el sucesor oficial del actualmente extendido IPv4 incluye varias opciones de autenticación y encriptación opcional para los encabezados de paquetes de datos que, en un futuro, podría impedir por completo el IP spoofing. Sin embargo, hasta ahora, el cambio al nuevo protocolo de direccionamiento ha demostrado ser algo complicado, manifestándose, por ejemplo, en la falta de soporte IPv6 para varios dispositivos de red común. Para evitar que un atacante falsifique tu dirección IP y la utilice para fines inescrupulosos, tienes la posibilidad de tomar la iniciativa mediante la creación de tus propios mecanismos de protección. Así, te recomendamos concentrarte en las dos siguientes medidas:
- Establece una solución integral de filtrado de paquetes para tu router. Este se encargará de analizar y descartar aquellos paquetes cuyas direcciones de origen no provengan de la propia red. Deberás hacerte cargo incluso del filtrado de paquetes salientes con direcciones de remitente que estén fuera de tu red, a pesar de que, en este sentido, los expertos en seguridad lo consideren como un deber del proveedor de servicios.
- Mantente alejado del método de autenticación basado en el host. Asegúrate de que todos los métodos de registro de entrada se realicen a través de conexiones cifradas. De esta forma minimizarás el riesgo de un ataque de IP spoofing dentro de tu red y estarás fijando importantes estándares de seguridad.
Por otra parte, también es recomendable reemplazar los sistemas operativos y dispositivos de red más antiguos (en caso de que aún los utilices). De esta manera, no solo aumentarás la protección contra el IP spoofing, sino que también te estarás protegiendo contra muchas otras vulnerabilidades.