¿Protegerse contra los ataques DDoS? [cerrado]

-3

Voy a hacer un servidor de juego que involucre el reenvío de puertos, también escuché que la gente puede atacar DDoS. Cuando atacan con DDoS, ¿qué es lo que atacan, Internet o la computadora? Además, ¿qué es un ataque DDoS de todos modos? ¿Cómo puedo protegerme contra ellos?

    
pregunta LilVinny 14.10.2016 - 01:25
fuente

1 respuesta

3

En las comunicaciones TCP normales, su servidor * está escuchando silenciosamente en la red, esperando paquetes con el indicador SYN configurado. Estos paquetes SYN provienen de clientes que inician una solicitud para abrir una nueva conexión de socket. El servidor toma nota de la solicitud de conexión abierta, guarda la dirección IP de origen del remitente (que se encuentra dentro del paquete) y envía una respuesta que contiene los indicadores SYN y ACK establecidos de nuevo a la dirección IP de origen. Cuando el cliente recibe el paquete SYN / ACK, responde con un paquete ACK. Cuando su servidor recibe el ACK, el zócalo está completamente conectado y las aplicaciones pueden comenzar a enviarse datos entre sí.

Un ataque de denegación de servicio distribuido (DDoS) es un ataque basado en la red, donde docenas o miles de computadoras pirateadas ejecutan malware que envía miles o millones de solicitudes cada segundo al puerto abierto de su red. Un ataque SYN Flood es donde el malware solo envía paquetes SYN. Las computadoras pirateadas escriben una dirección aleatoria en cada paquete como la dirección IP de origen. Su servidor no sabe que no son direcciones válidas, por lo que solo intenta responderles.

Pero las computadoras atacantes están ejecutando código malicioso. Nunca reciben la respuesta (que su servidor envía educadamente a la dirección de origen aleatoria), y nunca envían el paquete ACK que su servidor está esperando. Esto deja el zócalo parcialmente abierto simplemente recostado en la memoria de su servidor, esperando que se complete la solicitud. Su servidor tiene solo una capacidad limitada en cuanto a cuántos sockets parcialmente abiertos puede mantener alrededor; y solo un tiempo finito para responderles. No puede manejar una cola de un millón de sockets medio abiertos.

Pero como su servidor confía en que todas las solicitudes de socket provienen de usuarios legítimos, hace todo lo posible por responder a todas ellas, porque eso es lo que se supone que debe hacer. Se llena rápidamente bajo la inundación del tráfico. Si tiene suerte, envía los paquetes RST a todos los que intentan conectarse una vez que la cola está llena, negándoles cortésmente el servicio. Si no tiene suerte, su tarjeta de red o su servidor se ahogan en la sobrecarga y se bloquea. De cualquier manera, sus usuarios legítimos quedan atrapados en la inundación y tampoco pueden acceder a su servidor, por lo que se les "niega el servicio" (de ahí el nombre).

Desafortunadamente, hay muy poco que usted como propietario de un servidor pueda hacer con respecto a un ataque DDoS. Todos los paquetes provienen de direcciones aleatorias, y no contienen la dirección IP real de la computadora que los envió, por lo que no hay una manera fácil de seguirlos a los atacantes. Con suficiente dinero, puede contratar una empresa para ayudarlo a mantener su sitio a través de varios trucos de alojamiento y redes. Y hay dispositivos de red que intentan identificar y excluir paquetes de inundación SYN. Pero incluso ellos tienen sus límites, como Brian Krebs descubrió hace unas semanas.

* Escribí servidor para mantener la descripción simple, pero este ataque inundará cualquier dispositivo de red que esté escuchando en ese puerto. Si está utilizando un enrutador doméstico típico y el reenvío de puertos a su servidor, la memoria más limitada del enrutador se inundará y es probable que el enrutador se bloquee antes de que lo haga su servidor.

    
respondido por el John Deters 14.10.2016 - 03:39
fuente

Lea otras preguntas en las etiquetas