Variar: encabezado de respuesta de origen y explotación de CORS

7

Recientemente, PortSwigger (los que están detrás de Burp Suite) publicaron una publicación en el blog que analizaba los riesgos de seguridad asociados con las configuraciones erróneas de CORS.

enlace

En resumen, el blog habla sobre formas inseguras de habilitar CORS que pueden permitir que los sitios web maliciosos lean datos de un sitio de destino. Hacia el final, el blog habla sobre un mecanismo de prevención que involucra el encabezado Vary: Origin :

  

Si echa un vistazo a la sección 'Consideraciones de implementación' en   La especificación CORS, notará que instruye a los desarrolladores.   Especifique el encabezado HTTP 'Variar: Origen' cada vez que   Los encabezados de Access-Control-Allow-Origin se generan dinámicamente.

Me está costando entender cómo exactamente el encabezado Vary ayuda a prevenir la explotación de CORS (XSS usando el envenenamiento de caché) en un escenario donde el encabezado Access-Control-Allow-Origin se genera dinámicamente (controlado por el cliente).

    
pregunta Shurmajee 17.02.2017 - 21:20
fuente

1 respuesta

7

Es importante incluir el encabezado Vary: Origin para evitar el almacenamiento en caché. El encabezado indica que la respuesta depende de alguna manera del origen y, por lo tanto, no se debe servir desde la memoria caché para ningún otro origen. Si falta el encabezado, los ataques de envenenamiento de caché podrían ser posibles como se explica en el artículo mediante el ejemplo de XSS a través de un encabezado personalizado reflejado. Un encabezado Vary faltante no crea una vulnerabilidad por sí mismo.

    
respondido por el Arminius 17.02.2017 - 22:46
fuente

Lea otras preguntas en las etiquetas