¿Cómo defenderse contra un ataque DOS de Spoofed-IP Blacklist?

4

Así que implementé una lista negra de IP para el punto final /login en mi servidor.

Si alguna IP no puede iniciar sesión más de x número de intentos en x número de minutos, la IP solicitada se encuentra en la lista negra para x número de minutos.

Eso contribuye en gran medida a mitigar los ataques de fuerza bruta que intentan determinar la contraseña de un usuario agregando grandes retrasos a la mezcla cuando una IP determinada recibe demasiadas solicitudes fallidas de /login .

Pero hay un escenario en el que esto podría ser problemático, y en realidad podría ser un instrumento para que un atacante lance un ataque DOS contra mi usuario legítimo, como por ejemplo:

  • Blackhat quiere el sitio web de DOS LegitUser
  • LegitUser tiene un servidor con el IP 11.22.33.44
  • El servidor de LegitUser necesita comunicarse con mi sistema para permanecer en línea.
  • Blackhat descubre cuál es la IP del servidor de LegitUser
  • Blackhat usa un servidor proxy como una máquina de suplantación de IP para enviar un gran número de intentos /login intencionadamente a mi sistema, sabiendo que estos intentos fallidos obtendrán la IP de solicitud (que ha sido falsificada para ser 11.22.33.44 ) en la lista negra.
  • A Blackhat no le importa si recibe una respuesta de mi sistema para las solicitudes /login intencionadamente fallidas porque el objetivo de este ataque no es forzar la fuerza bruta de ninguna credencial, es engañar a mi sistema para que crea que el IP 11.22.33.44 ha superado los errores de inicio de sesión asignados para cualquier período de tiempo dado.
  • El resultado es que el IP 11.22.33.44 está en la lista negra de mi sistema. Pero, esta IP no pertenece a Blackhat, pertenece a LegitUser, que no ha jugado ningún papel en este ataque.
  • El resultado de la lista negra de IP 11.22.33.44 es que el sitio web servido desde ese host ahora está desconectado, porque depende de mi sistema para permanecer en línea.

¿Cómo podría protegerme contra esto?

    
pregunta AJB 25.12.2015 - 02:20
fuente

1 respuesta

3

Según varias de estas respuestas:

enlace

Es realmente improbable que pueda falsificar la dirección IP y enviar una solicitud HTTP completa a un servidor. TCP requiere un protocolo de enlace de tres vías , lo que significa enviar un paquete al remitente y esperar una respuesta muy específica. (con un número que se espera que sea aleatorio, hace más de 10 años, ese número solo se incrementaría por lo que era posible adivinar más o menos el siguiente número y, por lo tanto, enviar una "respuesta" - segunda solicitud realmente - con el datos y por lo tanto la propia solicitud HTTP).

Teniendo esto en cuenta, bloquear una dirección IP es una buena manera de evitar perder el ancho de banda para satisfacer la sed de un robot en un intento de iniciar sesión en una cuenta. Muchos sistemas ofrecen esta capacidad y la mayoría, como la suya, lo hacen temporalmente. En realidad, generalmente configuro la mía para bloquear esa cuenta durante 1 día entero porque he visto muchos ataques que duraron al menos tanto tiempo. Dicho esto, mis sitios web no son como Facebook o Twitter, donde las personas vuelven varias veces al día casi todos los días ... Por lo tanto, dependerá de su modelo de negocio, quién usa sus sistemas, cuánto y con qué frecuencia necesitan iniciar sesión. en o inicie sesión de nuevo, etc.

    
respondido por el Alexis Wilke 13.01.2016 - 06:07
fuente

Lea otras preguntas en las etiquetas