¿Qué está verificando el sitio web de mi navegador para proteger el sitio web de una DDoS?

100

Algunos sitios que visito me llevan a una página que dice más o menos, "Comprobando su navegador antes de acceder a example.com. Protección contra ataques DDoS por CloudFlare".

¿Qué es exactamente lo que se está verificando sobre mi navegador y cómo ayudará eso a protegerme contra un ataque DDoS?

    
pregunta Supreme Grand Ruler 26.03.2017 - 22:07
fuente

4 respuestas

95

La mayoría de los ataques de denegación de servicio (DOS) se basan en cierta asimetría entre los recursos involucrados en el lado del atacante y en el lado del destino. En otras palabras, para tener éxito, un DOS necesita una acción que requiera muy pocos recursos del lado del cliente (para que cada cliente pueda enviar una gran cantidad de solicitudes) al mismo tiempo que involucre recursos más grandes del lado del servidor (por lo que el servidor no podrá). para manejar la carga).

Debido a esto, los ataques DDOS (la versión "Distribuida" de los ataques de DOS) obviamente no son activados por humanos reales que hacen clic en los enlaces en una pestaña del navegador, sino por bots que envían una cantidad masiva de solicitudes paralelas al objetivo. La consecuencia de esto es que el "cliente" de DDOS no es un navegador real, sino una herramienta que puede simular más o menos uno.

El sistema de protección DDOS de Cloudflare está descrito rápidamente en su sitio web de la siguiente manera: "se presenta una página intersticial a su visitantes del sitio durante 5 segundos mientras se completan los controles ".

Dos cosas atraen mi atención aquí:

  • Los cheques : la forma más obvia de clasificar a los usuarios de sitios web reales de los robots DDOS automáticos es verificar si el cliente HTTP es un navegador real o no. Esto puede ir a través de la prueba del comportamiento del cliente frente a un panel de pruebas (vea la detección del bot " a través de la huella digital del navegador " por ejemplo) y compare el resultado con el esperado de una instancia genuina del navegador que el cliente dice ser (por ejemplo, si el cliente dice ser una versión 52 de Firefox que se ejecuta en una máquina con Windows 10, ¿Presenta las mismas características?).

  • 5 segundos : ejecutar pruebas de JavaScript y redirigir al visitante puede ser una operación muy rápida y casi transparente, por lo que creo que este tiempo de espera de "5 segundos" no se produce por accidente, pero está destinado a revertirse La asimetría computacional vuelve a favor del servidor.

    • La versión más liviana de tal principio sería simplemente pedirle al cliente que espere (reposo) 5 segundos antes de volver a enviar la misma solicitud (con un identificador único almacenado en una cookie, como se describe en la página de Cloudflare). Esto obligaría al cliente DDOS a manejar de alguna manera una cola de redirecciones pendientes y, finalmente, haría que el proceso general de DDOS sea menos efectivo.

    • Una alternativa más brutal sería solicitar al navegador que resuelva un problema matemático que requeriría unos segundos para resolverlo en un sistema doméstico promedio. En tal caso, los atacantes no tendrían otra opción que gastar el poder computacional para resolver estos desafíos si desean continuar, pero al hacerlo se anulará completamente la asimetría ya que todos los recursos del atacante estarán ocupados resolviendo los desafíos en lugar de enviar solicitudes. finalmente, "DOSIFICANDO" el sistema del atacante en lugar del del objetivo.

respondido por el WhiteWinterWolf 26.03.2017 - 23:03
fuente
16

Solo para agregar lo que sé por experiencia: Cloudflare bloquea los navegadores no gráficos (probado: enlaces, lynx), no en la primera vista de página, sino en la segunda. Estos navegadores (presumiblemente) no cargan imágenes, al menos no las muestran, y tampoco admiten JavaScript.

¿Cómo lo sé? Estar atascado con un entorno gráfico roto y amp; buscando respuestas en la web ...

    
respondido por el user2394284 27.03.2017 - 16:09
fuente
2

Eso significa que el propietario de la página contrató los servicios de Cloudflare para proteger su página contra los ataques DoS. Es algún tipo de página intermedia que verifica la conexión y luego redirige y muestra la página final si se pasa la verificación.

Verifican el origen (IP) de la conexión, el tipo de paquete, el tamaño del paquete, la cantidad de paquetes recibidos (tasa), el agente de usuario del navegador, etc. Es cómo miden si La conexión es legítima o no para pasar el filtro o no.

    
respondido por el OscarAkaElvis 26.03.2017 - 22:19
fuente
2

¿Qué hace el "desafío del navegador"?

Un simple cálculo mediocre en JavaScript. Luego establece un UID como una cookie en su navegador. Por lo tanto, la próxima vez que visite el sitio web, verificará si la cookie está allí y si no está vencida. Si la cookie no está allí o está vencida, lo "desafiará" nuevamente.

¿Cómo?

Hay un formulario oculto dentro de la página y JavaScript, el formulario obtiene números “secretos” al azar y JavaScript hace los cálculos y envía el formulario al servidor.

Esta es la forma más mediocre de mitigar los ataques DDoS de Capa 7, porque solo un navegador real (ish) puede ejecutar JavaScript y hacer cálculos matemáticos. Los scripts DDoS regulares como, por ejemplo, loris lentos no pueden ejecutar JavaScript y, como el servidor no recibe el cálculo, solo devuelve 403/503.

    
respondido por el Norbert Boros 05.07.2018 - 09:17
fuente

Lea otras preguntas en las etiquetas