Una vulnerabilidad descubierta por kingcope permite que los servidores Apache vulnerables sean susceptibles de sufrir una denegación de servicio.

La vulnerabilidad se encuentra en el uso de la cabecera Range. Esta cabecera se utiliza para obtener sólo una parte de la página. Si se solicitan varias partes además de pedir que la respuesta se comprima, mediante la cabecera Accept-Encoding: gzip, se dispara el consumo de procesador y memoria.

Existe un script que permite comprobar si el servidor es vulnerable y, si es el caso, explotar dicha vulnerabilidad.

Para comprobar si un servidor es vulnerable, podemos ejecutar:

$ telnet 127.0.0.1 80
HEAD / HTTP/1.1
Host: 127.0.0.1
Range: bytes=0-5
Accept-Encoding: gzip
Connection: close

Si la respuesta es un código 206 Partial Content el servidor es vulnerable:

HTTP/1.1 206 Partial Content
Date: Wed, 31 Aug 2011 11:52:13 GMT
Server: Apache/2.2.17 (Ubuntu)
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Range: bytes 0-5/20
Content-Length: 6
Connection: close
Content-Type: text/html;charset=UTF-8

Protección

Si tenemos un servidor vulnerable, podemos adoptar alguna de las siguientes medidas de protección.


Entradas relacionadas


Published

Category

hack

Tags

Contacto