07 enero 2012

Slow Read: nuevo mecanismo DoS de servidores web


 
Las conexiones a Internet avanzan a una velocidad inusitada para poder dar un mejor servicio a los usuarios. Los ISPs, cada vez más, ofrecen anchos de banda descomunales a aquellos clientes que alojan sus páginas web. Lejos y atrás quedaron los tiempos en los que conseguir acceso (ya sea de forma lícita… o por las bravas) a una máquina con un gran ancho de banda, permitía tener el bastón de mando para "DoS-ear" servidores con conexiones a Internet más modestas.  

Por ello, actualmente, si no es mediante una botnet potente o una convocatoria Anonymous, hay que buscar alternativas a efectuar un DoS, que nada tengan que ver con colapsar las capacidades de ancho de banda del servidor. Así pues, tres de los últimos tipos de ataques DoS de servidores web, se basan precisamente en el envío de tráfico "muy lentamente", colapsando el número de sesiones máximas disponibles en el servidor.

Contando con predecesores como Slowloris y "Slow HTTP POST", Sergey Shekyan, desarrollador en Qualys, ha descubierto una nueva manera de colapsar servidores, y lo ha llamado "Slow Read".
 
Por resumir un poco el funcionamiento de los ataques DoS anteriores: 
  • En Slowloris, las peticiones al servidor se realizan enviando las cabeceras de la petición muy lentamente, no terminando nunca de ser enviadas. De esta manera, mientras el servidor no recibe todas las cabeceras, no considera como sesión web establecida, y no sabe si ha superado el número de conexiones máximas configuradas (por ejemplo, en Apache mediante la variable maxclients).
  • En Slow HTTP POST, se envían al servidor las peticiones POST con todas las cabeceras, incluyendo "Content-Length" que indica el tamaño del POST DATA a enviar. Así, el servidor queda esperando a que el cliente envíe tantos bytes, como indique la cabecera "Content-Length". El ataque en sí se basa en que, los datos del POST, los irá enviando muy despacio el cliente hacia el servidor, consumiendo una sesión abierta por cada POST, así como los recursos que reserva el servidor para recibir los datos que envía el cliente.
En el caso del nuevo ataque DoS, Slow Read, el procedimiento consiste en enviar una petición lícita a un servidor, sin embargo, el éxito radica en ralentizar lo máximo posible la recepción de los datos por parte del servidor hacia el cliente. Al ser TCP el protocolo web, es decir, orientado a la conexión y con control de errores, hasta que el servidor no recibe los correspondientes paquetes con Flag ACK indicando al servidor que prosiga enviando el resto de los datos, no se dará por finalizada la sesión, y por ende, los recursos no serán liberados en el servidor.

Mitigar este tipo de ataques resulta muy complicado, puesto que no se basan en patrones detectables por mecanismos como IPS o WAF debido al tipo de la petición. De hecho, el WAF libre mod_security, implementa mecanismos que permiten mitigar este y otros tipos de Denegaciones de Servicio, en base a limitar el número de conexiones por IP origen que se encuentren en estado SERVER_BUSY_WRITE, mediante la configuración de la directiva SecWriteStateLimit. Otra forma de mitigación de este tipo de ataques es mediante la inclusión de límites de tiempo existentes por cada conexión, a la hora de recibir cabeceras, así como en las transmisiones de datos en el envío o de recepción. Sin embargo, estas medidas son peligrosas puesto que cuando las conexiones se efectúan tras un proxy de forma lícita por muchos clientes, se pueden dar situaciones que provoquen un falso positivo denegando un montón de conexiones.
Para poder hacer pruebas, evidentemente con fines académicos y en ningún momento con intenciones destructivas, se ha publicado de forma libre la herramienta Slowhttptest, que implementa los tres tipos de ataque descritos en este artículo.

En el blog de Spider Labs, han publicado una excelente revisión de la herramienta Slowhttptest.

6 comments :

Juan Aguilera dijo...

Qué interesante. Lo que se llega a aprender con vosotros, de verdad. :)

PD: Muy explícita la imagen. ;)

Security dijo...

El colectivo de protesta Anonymous publica parte de la base de clientes de Terra como critica a la poca seguridad de Telefonica, incitando denunciar a la operadora:

------------------------
WIKILEAKS TELEFONICA
------------------------

http://pastebin.com/YALD5Mgg

Daniel Lopez dijo...

Gracias por el articulo, es bueno tenerlos a ustedes para que lo actualizen a uno en estos temas de la seguridad informatica

Ysm51 dijo...

Han probado el #fhttp?, es un framework de pentesteting desarrollado por xianur0, viene con un modulo para hacer test de estrés al protocolo http, un modulo muy potente, se basa en peticiones head, al parecer nadie lo ha logrado mitigar con exito, siempre les limita el hardware, seria interesante un review sobre esta tool. 


Enlace la wiki:
http://sourceforge.net/apps/mediawiki/fhttp/index.php?title=Main_Page


Saludos!

Borja Ferrer dijo...

Que bueno, es curioso, k despues de tanto estudiar redes a muchos nos sorprende la "sencillez" de la solucion. Siempre dí por supuesto que el servidor tendria un limite de tiempo para la informacion que recibe de cada cliente, igual que un cliente lo tiene de un servidor, nunca pense que se pudiera implementar un ataque en ese sentido, slow data flow... además de que los requisitos de recursos, una vez implementada la solucion, son "relativamente" poco exigentes. Que gran articulo, una grata sorpresa para un lunes ^^

Dimas Ade Suharto dijo...

Hola,
Todo
el mundo estoy tan feliz dando un vistazo a mi gran testimonio de cómo
conseguí mi préstamo deseo del Sr. Franklin Osayande de Scott Loan
Company, quiero usar rápidamente esta oportunidad para dejar que todo el
mundo saber de esto, Am señora Ann Maxwell de EE.UU., que fue en
busca de un préstamo para iniciar mi propio negocio en apoyo de mi
marido con respecto a los gastos de los niños, así que fui en línea en
busca de préstamo cuando me encontré con algunos prestamistas que hacen
trampa y estafado a mi poco dinero en ese proceso del tiempo que me
dieron confundido i ni
siquiera saben lo que hacer más porque el poco dinero que tenía con mí
fue llevado por esos bastardos fraudulentos que se hacen llamar los
prestamistas de préstamos reales, Así que en un día fiel como yo estaba
navegando por Internet en busca de trabajo me encontré con algunos
testimonios comentados en el foro por uno Sr. Andrew Fred, y la señora
Mónica Luis en la forma en que reciben su préstamo del Sr. Franklin
Osayande de Scott Loan Company Email: franklinosayandescott@gmail.com
Así que me dije a mí mismo que tengo que dar a esto un juicio porque i Estaba
tan asustada respecto a lo que los otros prestamistas hicieron a mí,
así que seguí adelante tomé su dirección de correo electrónico personal
que se encontraba en esos comentarios del foro, así que contacté con él
para informarle de que yo estaba arbitrado a él por algunos clientes que
recibieron su préstamo de
su empresa, el Sr. Andrew Fred, y la señora Mónica Luis, Así que cuando
se enteró de que estaba muy feliz por eso, así que mí que estoy en la
compañía adecuada aseguró donde puedo recibir mi préstamo deseo, Me
dieron el préstamo del prestatario formulario
de solicitud para llenar y regresar, yo todo lo que, teniendo en cuenta
que toda mi información necesaria se trata de mí, así que me dieron los
términos y condiciones de su compañía todo transcurrió sin problemas y
sin ninguna demora, en no menos de 24 horas se me informó que mi
préstamo suma
válida de € 6.000.000 ha sido registrado y aprobado por su junta de
préstamo de fiduciario, Así que en ese proceso del tiempo yo estaba tan
feliz cuando me dijeron que debo enviarlos por la banca detalles, pero
estaba poco escéptico de hacer eso, así que dije: tengo
confianza y creo que para este prestamista llame Sr. Franklin Osayande
Scott, me los dio por cuenta bancaria de manera sorprendente que recibo y
alerta de mi banco que mi cuenta ha sido acreditado con la suma de €
6.000.000 por el Sr. Franklin Osayande Scott, WOW .. casi
me desmayo, así que le enviaremos un correo electrónico con urgencia
que tengo recibir mi préstamo con éxito, Así que mis queridos hermanos y
hermanas por ahí todavía en busca de compañía de préstamos genuina voy a
aconsejar que se comunique amablemente el señor Franklin Osayande de
Scott con esta misma FACEBOOK: Franklin Osayande de Scott ,
E-mail: franklinosayandescott@gmail.com y sé que también le ayudará con
la cantidad del préstamo deseo bien, Enviar hoy y usted será feliz de
haberlo hecho.