Control de aplicación de compresión de contenido HTTP [cerrado]

2

¿Cómo controla una aplicación si su contenido http está comprimido o no? No estoy hablando de la compresión de nivel TLS, sino de la compresión de los cuerpos de respuesta https: // únicamente.

En los casos en que la respuesta contiene tanto tokens anti-CSRF como entradas reflejadas por el usuario, creo que dicha compresión puede llevar a un compromiso de INCUMPLIMIENTO. Entonces, ¿cómo elijo no comprimir esas respuestas?

    
pregunta Frugal Guy 19.10.2017 - 15:57
fuente

1 respuesta

2

La compresión HTTP está controlada por el servidor web, usted configura IIS / Apache / Other según corresponda y esto establece el encabezado de compresión que su navegador entiende y trata el contenido según corresponda.

BREACH es una vulnerabilidad en aplicaciones que utilizan la compresión HTTP, refleja algún tipo de información del usuario y también refleja un secreto, como, como usted dice, un token CSRF. el atacante aprovecha las diferencias en los tamaños de respuesta para determinar los secretos. Hay una buena explicación de BREACH aquí

Las mitigaciones simples incluyen deshabilitar la compresión, lo que puede o no ser práctico dependiendo de su aplicación. Como la compresión se realiza a nivel de servidor web, determinar cuándo comprimir en la aplicación puede ser complicado, un enfoque más simple es inyectar ruido en la respuesta de las páginas que son vulnerables. Una cadena aleatoria de longitud aleatoria inyectada en la respuesta es una buena contramedida si desea mantener la compresión habilitada.

    
respondido por el iainpb 19.10.2017 - 16:07
fuente

Lea otras preguntas en las etiquetas