¿Cuándo usaré el encabezado de origen frente a la directiva SameSite frente al token csrf para la defensa CSRF?

2

¿Cuándo tendría más sentido:

  1. compruebe el encabezado de origen
  2. usa un token CSRF (en doble envío o algo así)
  3. Utilice la directiva de cookies SameSite

para la defensa CSRF. Parece que revisar el encabezado de origen ofrece la mayor versatilidad sobre los otros dos, así que no estoy seguro de por qué querría usar los otros dos a menos que no confíe en el navegador para imponer el origen debido a un error de flash o algo (en cuyo caso usaría el token CSRF).

    
pregunta winhowes 15.12.2017 - 00:25
fuente

1 respuesta

2

OWASP tiene un gran conjunto de recomendaciones para tratar con CSRF:

enlace

Usted puede usar solo un Verificador de referencia y origen para la protección CSRF sin ninguna otra medida, si en el caso raro de que no reciba ninguna cabecera, simplemente bloquee la solicitud. Una vez fue común que los usuarios falsificaran o deshabilitaran el envío de encabezados de Referer por razones de privacidad, y es posible que los navegadores más antiguos no envíen el encabezado de Origin. Probablemente esto no importa en 2017, pero depende de sus necesidades.

Debe poder extraer la información relevante del origen (por ejemplo, el nombre de host) de cualquiera de los encabezados (que puede incluir un encabezado del Referente completo) y compararla con su origen objetivo de manera sólida.

Creo que una cookie de envío doble (por ejemplo, un token y una cookie generados aleatoriamente cada vez) puede ser más sencilla de implementar.

    
respondido por el thomasrutter 15.12.2017 - 01:16
fuente

Lea otras preguntas en las etiquetas