Los ataques DoS (Denegación de Servicio) y DDoS (Denegación de Servicio Distribuido) son cada vez más comunes y potentes. Los ataques de denegación de servicio se presentan de muchas formas, pero comparten un propósito común: impedir que los usuarios accedan a un recurso, ya sea una página web, un correo electrónico, la red telefónica o cualquier otra cosa. Veamos los tipos de ataques más comunes contra objetivos web y cómo DoS puede convertirse en DDoS.
Los tipos más comunes de ataques de denegación de servicio (DoS)
En esencia, un ataque de denegación de servicio normalmente se realiza inundando un servidor (por ejemplo, el servidor de un sitio web) hasta tal punto que no puede proporcionar sus servicios a usuarios legítimos. Hay varias formas de realizar esto; las más comunes son los ataques de inundación de TCP y los ataques de amplificación de DNS.
Ataques de inundación TCP
Relacionado: ¿Cuál es la diferencia entre TCP y UDP?
Casi todo el tráfico web (HTTP/HTTPS) se realiza mediante el Protocolo de control de transmisión (TCP). TCP tiene más gastos generales que la alternativa, el Protocolo de datagramas de usuario (UDP), pero está diseñado para ser confiable. Dos computadoras conectadas entre sí mediante TCP confirmarán la recepción de cada paquete. Si no se proporciona ninguna confirmación, el paquete deberá enviarse nuevamente.
¿Qué sucede si una computadora se desconecta? Tal vez un usuario se queda sin energía, su ISP tiene una falla o cualquier aplicación que esté usando se cierra sin informar a la otra computadora. El otro cliente debe dejar de reenviar el mismo paquete o, de lo contrario, desperdiciará recursos. Para evitar una transmisión interminable, se especifica una duración de tiempo de espera y/o se impone un límite a la cantidad de veces que se puede reenviar un paquete antes de interrumpir completamente la conexión.
TCP fue diseñado para facilitar una comunicación confiable entre bases militares en caso de un desastre, pero este mismo diseño lo deja vulnerable a ataques de denegación de servicio. Cuando se creó TCP, nadie imaginó que sería utilizado por más de mil millones de dispositivos cliente. La protección contra los ataques modernos de denegación de servicio simplemente no formaba parte del proceso de diseño.
El ataque de denegación de servicio más común contra servidores web se realiza enviando spam con paquetes SYN (sincronización). Enviar un paquete SYN es el primer paso para iniciar una conexión TCP. Después de recibir el paquete SYN, el servidor responde con un paquete SYN-ACK (confirmación de sincronización). Finalmente, el cliente envía un paquete ACK (acuse de recibo), completando la conexión.
Sin embargo, si el cliente no responde al paquete SYN-ACK dentro de un tiempo determinado, el servidor envía el paquete nuevamente y espera una respuesta. Repetirá este procedimiento una y otra vez, lo que puede desperdiciar memoria y tiempo de procesador en el servidor. De hecho, si se hace lo suficiente, puede desperdiciar tanta memoria y tiempo de procesador que los usuarios legítimos vean interrumpidas sus sesiones o no puedan iniciar nuevas sesiones. Además, el mayor uso del ancho de banda de todos los paquetes puede saturar las redes, impidiéndolas transportar el tráfico que realmente desean.
Ataques de amplificación de DNS
Relacionado: ¿Qué es DNS? ¿Debo utilizar otro servidor DNS?
Los ataques de denegación de servicio también pueden apuntar a servidores DNS: los servidores que traducen nombres de dominio (como howtogeek.com) en direcciones IP (12.345.678.900) que las computadoras utilizan para comunicarse. Cuando escribe howtogeek.com en su navegador, se envía a un servidor DNS. Luego, el servidor DNS lo dirige al sitio web real. La velocidad y la baja latencia son preocupaciones importantes para DNS, por lo que el protocolo opera sobre UDP en lugar de TCP. El DNS es una parte fundamental de la infraestructura de Internet y el ancho de banda consumido por las solicitudes de DNS suele ser mínimo.
Sin embargo, DNS creció lentamente y con el tiempo se agregaron nuevas funciones. Esto introdujo un problema: DNS tenía un límite de tamaño de paquete de 512 bytes, lo que no era suficiente para todas esas nuevas características. Entonces, en 1999, el IEEE publicó la especificación para mecanismos de extensión para DNS (EDNS)lo que aumentó el límite a 4096 bytes, lo que permite incluir más información en cada solicitud.
Sin embargo, este cambio hizo que el DNS fuera vulnerable a “ataques de amplificación”. Un atacante puede enviar solicitudes especialmente diseñadas a servidores DNS, solicitando grandes cantidades de información y solicitando que se envíen a la dirección IP de su objetivo. Se crea una “amplificación” porque la respuesta del servidor es mucho mayor que la solicitud que la genera, y el servidor DNS enviará su respuesta a la IP falsificada.
Muchos servidores DNS no están configurados para detectar o descartar solicitudes incorrectas, por lo que cuando los atacantes envían repetidamente solicitudes falsificadas, la víctima se ve inundada con enormes paquetes EDNS, lo que congestiona la red. Al no poder manejar tantos datos, se perderá su tráfico legítimo.
Entonces, ¿qué es un ataque de denegación de servicio distribuido (DDoS)?
Un ataque distribuido de denegación de servicio es aquel que tiene múltiples atacantes (a veces involuntarios). Los sitios web y las aplicaciones están diseñados para manejar muchas conexiones simultáneas; después de todo, los sitios web no serían muy útiles si sólo una persona pudiera visitarlos a la vez. Servicios gigantes como Google, Facebook o Amazon están diseñados para manejar millones o decenas de millones de usuarios simultáneos. Por eso, no es factible que un solo atacante los derribe con un ataque de denegación de servicio. Pero muchos atacantes podrían hacerlo.
Relacionado: ¿Qué es una botnet?
El método más común para reclutar atacantes es a través de una botnet. En una botnet, los piratas informáticos infectan todo tipo de dispositivos conectados a Internet con malware. Esos dispositivos pueden ser computadoras, teléfonos o incluso otros dispositivos de su hogar, como DVR y cámaras de seguridad. Una vez infectados, pueden utilizar esos dispositivos (llamados zombies) para contactar periódicamente con un servidor de comando y control para pedir instrucciones. Estos comandos pueden ir desde minar criptomonedas hasta, sí, participar en ataques DDoS. De esa manera, no necesitan un montón de hackers para unirse: pueden usar los dispositivos inseguros de los usuarios domésticos normales para hacer el trabajo sucio.
Otros ataques DDoS pueden realizarse de forma voluntaria, normalmente por motivos de motivación política. A los clientes les gusta Cañón de iones de órbita baja Haga que los ataques DoS sean simples y fáciles de distribuir. Tenga en cuenta que es ilegal en la mayoría de los países participar (intencionalmente) en un ataque DDoS.
Por último, algunos ataques DDoS pueden ser involuntarios. Originalmente conocido como el Efecto de barra diagonal y generalizado como el “abrazo de la muerte”, enormes volúmenes de tráfico legítimo pueden paralizar un sitio web. Probablemente hayas visto que esto sucede antes: un sitio popular enlaza con un pequeño blog y una gran afluencia de usuarios hace que el sitio caiga accidentalmente. Técnicamente, esto todavía se clasifica como DDoS, incluso si no es intencional ni malicioso.
¿Cómo puedo protegerme contra ataques de denegación de servicio?
Los usuarios típicos no tienen que preocuparse por ser blanco de ataques de denegación de servicio. Con la excepción de streamers y jugadores profesionales, es muy raro que un DoS apunte a un individuo. Dicho esto, aún debes hacer lo mejor que puedas para proteger todos tus dispositivos del malware que podría convertirte en parte de una botnet.
Sin embargo, si es administrador de un servidor web, existe una gran cantidad de información sobre cómo proteger sus servicios contra ataques DoS. La configuración del servidor y los dispositivos pueden mitigar algunos ataques. Otros pueden evitarse garantizando que los usuarios no autenticados no puedan realizar operaciones que requieran importantes recursos del servidor. Desafortunadamente, el éxito de un ataque DoS suele estar determinado por quién tiene el canal más grande. Servicios como Llamarada de nube y encapsula ofrecen protección colocándose frente a sitios web, pero pueden ser costosos.