¿Es el método HTTP TRACE una vulnerabilidad de seguridad?

32

He visto muchas publicaciones aquí en este sitio ofreciendo consejos sobre cómo deshabilitar el método HTTP TRACE para evitar el rastreo entre sitios . Busqué hacer lo mismo. Pero cuando leí la documentación de Apache , da el siguiente consejo:

  

Nota

     

A pesar de las afirmaciones en contrario, TRACE no es una vulnerabilidad de seguridad   y no hay ninguna razón viable para que se deshabilite. Haciéndolo   necesariamente hace que su servidor no sea compatible.

¿Qué debo seguir?

    
pregunta Question Overflow 30.04.2014 - 11:46
fuente

3 respuestas

26

Uno de los principios de seguridad más inteligentes dice que lo que no se usa debe deshabilitarse.

Entonces las primeras preguntas son: ¿Realmente vas a usarlo? ¿Necesitas que esté habilitado?

Si no va a utilizar el método TRACE , en mi opinión, debería estar apagado. Evitará su aplicación no solo contra XST , sino también contra vulnerabilidades no descubiertas relacionadas con este canal, que se pueden encontrar en el futuro.

    
respondido por el boleslaw.smialy 30.04.2014 - 15:37
fuente
20

Para enviar un comando TRACE a un servidor determinado, debe tener el derecho de hacerlo, lo que normalmente se impide mediante Política del mismo origen (el famoso" SOP "). Si una pieza de JavaScript malintencionado, con la intención de robar su cookie en el sitio example.com , puede enviar una solicitud de TRACE a example.com , entonces ese malvado JavaScript ya ganó y usted está en mayores problemas. Deshabilitar TRACE no resuelve el problema real (y ese problema es del lado del cliente).

Para hacer una analogía indignante: hay personas que asesinan a otros apuñalándolos con cuchillos. ¿Prohibir los cuchillos realmente resolvería el problema? (Estoy usando cuchillos y no pistolas aquí, porque es bastante obvio que los cuchillos son herramientas muy útiles para tareas distintas del asesinato de personas, por ejemplo, uso cuchillos a diario para cocinar; no se puede decir lo mismo de las pistolas. Del mismo modo, el HTTP% El método TRACE es una herramienta de depuración útil.)

    
respondido por el Tom Leek 30.04.2014 - 13:26
fuente
11
  

¿Qué debo seguir?

Vas a escanear tu sitio web, ¿qué ... anualmente? ¿Trimestral? ¿Mensual, semanal? Y eso aparecerá en todas esas exploraciones. Hasta que le diga a su escáner que omita esa comprobación, o que haga una excepción ... en ese momento se quedará allí hasta que un tercero realice una exploración por usted, o uno de sus socios escanee su sitio y lo ponga debajo. su nariz como "¿Cómo puede dejar un ítem de lista de verificación tan básico sin atender?

A la inversa, se analizará el cumplimiento de las especificaciones HTTP ... nunca. Tendrá que usar TRACE ... casi nunca. El efecto práctico sobre la interoperabilidad con sus clientes será ... nada.

Entiendo y estoy de acuerdo con el punto de @Tom-Leek de que no es un problema de seguridad. Sin embargo, no estoy de acuerdo en que la desventaja de la desactivación es minúscula, y la desventaja de desactivarla es evitar una gran cantidad de molestias que de otro modo terminarían en tu regazo.

No soy el único que piensa de esa manera, por lo que Apache agregó una directiva en 1.3.34 y 2.0.55 para simplemente cerrar TRACE:

TraceEnable Off

Aquí hay una buena página que lo discute , incluyendo pasos de prueba manuales.

    
respondido por el gowenfawr 30.04.2014 - 15:13
fuente

Lea otras preguntas en las etiquetas