it-swarm-es.com

¿Qué técnicas utilizan los firewalls avanzados para protegerse contra DoS / DDoS?

Es difícil proteger un servidor contra ataques de denegación de servicio , DoS/DDoS. Las dos formas simples en que puedo pensar es usar un servidor con muchos recursos (por ejemplo, CPU y memoria) y construir la aplicación del servidor para escalar muy bien. Probablemente el firewall usa otros mecanismos de protección. Se me ocurre una lista negra de direcciones IP, pero realmente no sé cómo funciona. Y probablemente haya otras técnicas que utiliza el firewall para proteger contra ataques DDoS.

¿Qué técnicas usan los firewalls avanzados para proteger contra ataques DoS/DDoS?

74
Jonas

Esos son realmente dos ataques diferentes, aunque similares.

DoS "regular" se basa en intentar bloquear el servidor/firewall, a través de algún tipo de error o vulnerabilidad. P.ej. los conocidos ataques SYN Flood . La protección contra estos, por supuesto, es específica de la falla (por ejemplo, cookies SYN) y codificación/diseño seguro en general.

Sin embargo, DDoS simplemente intenta abrumar al servidor/firewall inundándolo con una gran cantidad de solicitudes aparentemente legítimas.
A decir verdad, un solo firewall no puede realmente proteger contra esto, ya que no hay una forma real de marcar a los clientes "malos". Es solo una cuestión de "mejor esfuerzo", como estrangularse para que no se bloquee, equilibradores de carga y sistemas de conmutación por error, intentando poner en una lista negra las direcciones IP (si no según la "maldad", luego según el uso) y, por supuesto, notificando activamente a los administradores.
Esto último podría ser el más importante, ya que en casos de DDoS aparente (digo aparente, porque solo el uso pico normal podría verse como DDoS - historia real) realmente se necesita un ser humano para diferenciar el contexto de la situación y determinar si se debe cerrar, hacer el mejor esfuerzo, aprovisionar otra caja, etc. (¡o emplear un contraataque ... ssshhh!)

39
AviD

Mi experiencia con los ataques DoS y DDoS se basa en ser ingeniero de Cisco para un ISP y más tarde como administrador de seguridad para un Global muy grande. En base a esta experiencia, descubrí que para tratar eficazmente los ataques complejos y a gran escala se requiere una buena asociación entre la organización bajo ataque y su socio de mitigación de ISP o DDoS (Sí, ahora hay empresas dedicadas a esto, en esencia son muy ISP grande por derecho propio, pero utiliza su red global para asumir el tráfico adicional generado durante un ataque).

A continuación se presentan algunas consideraciones si se enfrenta a un ataque que está fuera de su tolerancia de ancho de banda (también conocido como consumo de ancho de banda) y necesita ayuda para responder.

Donde no exista un socio de mitigación: Establezca una relación sólida con su ISP. Identifique los equipos y contactos correctos que necesitará si hay un ataque.

Use su firewall (u otro dispositivo de registro) para obtener evidencia del ataque (IP de origen, protocolo, longitud del paquete, etc.) ya que esta información puede ser de gran valor para el ISP al decidir cómo responder. ¡No es divertido tratar de atrapar el tráfico en un dispositivo de enrutamiento de Cisco desde la línea de comando a las tres de la mañana! Asi que se agradece cualquier ayuda. :-)

Con esto, su enfoque probable será filtrar el tráfico dentro de la nube ISP. Si ha podido proporcionar suficiente información y el tráfico es tal, entonces el ISP puede filtrar el tráfico malicioso y dejar libre el tráfico de red válido para acceder a su red. Sin embargo, si está causando problemas de latencia para el ISP, es probable que bloquee toda su ruta en su puerta de enlace BGP y desaparecerá de la red. Los filtros de enrutamiento adicionales causan carga en las puertas de enlace, por lo que no espere que su ISP agregue varios filtros, ya que esto puede afectar a sus otros usuarios.

sando un socio de mitigación:

Solo puedo hablar de la experiencia de un proveedor para esto, por lo que deberá hacer su tarea para decidir si lo requiere y, de ser así, quién estaría en mejores condiciones para proporcionarlo.

El servicio se basó en la publicidad de rutas BGP y el monitoreo de ataques. Una vez que se ha identificado un ataque, el socio de mitigación anuncia su ruta para pasar a través de su red, donde los enrutadores principales se utilizan para filtrar el tráfico malicioso antes de pasar a la organización.

Mi papel en todo esto fue probar la implementación de un enfoque asociado para la mitigación de DDoS. Esto implicaba utilizar un equipo global de ingenieros de seguridad para generar suficiente tráfico para realizar una prueba válida. Estábamos probando la capacidad de identificar un ataque y luego responder de manera efectiva. En base a esto, quedamos muy impresionados con su enfoque general y la solución funcionó.

40
David Stubley

Un tipo de protección contra DDOS no realizado directamente por firewalls es distribuir el contenido de la página en todo el mundo de manera que todas las solicitudes que provienen de un país se realicen contra un servidor local y las solicitudes de otro país , a la misma URL o dominio, se realizan contra otros servidores locales que distribuyen la carga entre servidores locales y no sobrecargan un servidor único. Otro punto de este sistema es que las solicitudes no viajan demasiado lejos.

Este es un trabajo para DNS y la infraestructura se llama Content Delivery Network o CDN.

Empresas como CloudFlare ofrece este tipo de servicios.

8
kinunt

El DDOS generalmente se realiza enviando una cantidad abrumadora de paquetes al servidor, en el que el servidor intentará frenéticamente procesar, naturalmente. Una vez que un cortafuegos advierte un posible DDOS, puede configurarse para incluir en la lista negra a cualquier cliente con un nivel suficientemente alto PPS (Paquetes por segundo)).

Los filtros se pueden activar y desactivar en cualquier momento, de modo que si experimenta un DDOS, puede activar un filtro con un conjunto de reglas muy estricto.

5
Chris Dale

Me gusta responder la primera parte de la pregunta que es " usar un servidor con muchos recursos (por ejemplo, CPU y memoria) para ampliar la aplicación ". Se recomienda realizar el escalado de la aplicación antes de escalar el servidor. El perfil de la aplicación se puede dividir en los siguientes pasos:

  1. Pruebas de carga: realice pruebas de esfuerzo en su aplicación a través de herramientas de prueba de carga como pylot.
  2. Optimización de la consulta: la segunda tarea es optimizar la consulta, es decir, la consulta que puede funcionar de manera eficiente para bases de datos pequeñas pero no se puede escalar para bases de datos grandes.
  3. Fragmentación de aplicaciones: implementación de la mayoría del contenido de acceso en un disco más rápido.

Hay mucho para agregar esta lista y una buena lectura es "Cómo escalar una aplicación web"

2
Ali Ahmad