Hoy he leído una noticia bastante interesante acerca de una denegación de servicio en Apache. Tal y como dice la noticia original existe multitud de código que permite explotar este problema.
Cuando se inicia la conexión el servidor espera a las cabeceras enviadas por el cliente. Después de enviar parte de la cabecera legítima, éste (DoSer) envia unas cabeceras especialmente manipuladas que provocan que el servidor no finalice la conexión y permanezca a la espera de las demás partes de la cabecera. Para poder mandar la cabecera que “mantiene al servidor a la escucha” en la cabecera legítima no se envia un CLRF final, sino que después de un tiempo se le envía la cabecera:
X-a: b\r\n
que provoca que el servidor siga aún esperando el resto de la cabecera al no estar finalizada a través de el CLRF que mencionamos anteriormente. Debido a que este ataque se puede realizar moviendo un volumen pequeño de datos como bien apunta la fuente original cualquier usuario con un ancho de banda mínimo podría explotar esta vulnerabilidad en servidores con un ancho de banda relativamente grande.
Si habéis pensado en el parámetro MaxClients lo que hará será incrementar las necesidades de ancho de banda y CPU de los atacantes. Según Tomasz Miklas es posible bloquear este tipo de ataques usando un proxy inverso como PerlBal usándolo delante del servidor con Apache
Apche 1.x y 2.x están afectadas, así como Squid.
No pondré aquí la definición o cosas por el estilo ya que todo el mundo tiene acceso a Wikipedia, pero sí os dejaré aquí un buen puñado de enlaces en donde encontraréis información sobre como asegurar, explotar y comprender este tipo de vulnerabilidades.
Quizás muchos de vosotros ya sabéis el problema que os voy a comentar a continuación. A través del blog de F-Secure me llega una noticia un tanto curiosa. Seguramente recordáis la problemática de las extensiones en muchas de las versiones del sistema operativo de Microsoft. Si alguien ponía una extensión del tipo .TXT.EXE aparentemente en el explorador se podía ver el iconito como si fuera realmente un archivo de texto, cuando no es así. Si alguien no tenía activado ver las extensiones completamente (la mayor parte de los usuarios de este sistema operativo) podría ‘caer en la tentación’ de abrir el fichero y fiarse de él además porque se supone que sería un fichero de texto.
Pues vien, la historia se repite. Haz click aquí para ver las imágenes en la web de F-Secure.