Implicaciones de los métodos Trace / Track en Apache

11

Al realizar exploraciones de vulnerabilidades con Nessus, contra un host que ejecuta Apache, un resultado esperado siempre es "Métodos HTTP TRACE / TRACK permitidos". Si bien este resultado solo tiene un CVSS base de 4.3, siempre recomiendo que se corrija. La solución es bastante fácil de lo que nunca he recibido rechazo.

¿Cuáles son las implicaciones de la vida real de dejar algo como esto abierto?

    
pregunta Scott Pack 29.09.2011 - 14:54
fuente

2 respuestas

14
El método

HTTP TRACE básicamente responde la solicitud, junto con todos los encabezados en respuesta. Encabezado de la cookie también se incluirá en la respuesta. Las cookies de sesión deben tener el indicador enlace para prevenir ataques de secuestro de sesión . Esta bandera bloquea el acceso al valor de cookie de Javascript. Básicamente, esto garantiza que incluso si el atacante explotará una falla XSS en un sitio web, no sabrá el valor de la cookie de la sesión, por lo que no podrá piratearlo.

Pero si un servidor de aplicaciones web tiene habilitado TRACE, el atacante puede enviarlo, por ejemplo. XMLHttprequest (AJAX) al servidor de destino. El navegador adjuntará las cookies a la solicitud, el servidor las responderá y el código JS del atacante obtendrá la respuesta y podrá secuestrar la sesión.

La vulnerabilidad se llama Rastreo entre sitios y se ha descrito en este documento técnico .

Sin embargo, desde 2003, cuando se descubrió esta vulnerabilidad, muchos navegadores simplemente rechazaron el envío de solicitudes con el método TRACE. También la especificación para XMLHttpRequest no permite el método TRACE ahora. No tengo ningún resultado concreto sobre qué navegador me permite enviar TRACE ahora mismo, la coincidencia más cercana que encontré es este artículo .

Pero aún así, es probable que haya algunos navegadores antiguos y otros complementos como Flash, Silverlight, Java que a menudo reciben cookies del navegador y pueden usarlos para enviar TRACE. Por lo tanto, deshabilitarlo es ahora la única opción para asegurarse de que no sea vulnerable al rastreo entre sitios. Y también es fácil: solo use TraceEnable off en Apache .

    
respondido por el Krzysztof Kotowicz 29.09.2011 - 15:32
fuente
5

JavaScript puede usarlo para acceder a los encabezados de solicitud http. Esto permite

  • acceso a las cookies marcadas para el acceso sin script mediante el uso de "httpOnly"
  • enlace

Estos ataques están sujetos a la misma política de origen, pero en combinación con las explotaciones de SOP en Java, Flash, ActiveX, Vbscript, se pueden aplicar a cualquier dominio.

Hay un buen whitepaper sobre este tema.

tldr : no se puede explotar por sí solo, pero supone un riesgo en combinación con otras vulnerabilidades.

    
respondido por el Hendrik Brummermann 29.09.2011 - 15:29
fuente

Lea otras preguntas en las etiquetas