¿El ASM Big-IP de F5 puede proteger contra CSRF para llamadas AJAX?

1

Sé que el ASM Big-Ip de F5 ofrece protección contra CSRF con respecto a enlaces y formularios.

Sin embargo, cuando se trata de llamadas AJAX, su documentación es algo ambigua. Entiendo que NO son compatibles con CSRF en el contexto de las llamadas AJAX, pero no tengo experiencia previa con este sistema en particular.

Entendí claramente que se ofrecen protecciones con respecto a las llamadas AJAX, pero ¿es CSRF una de esas? ¿O es CSRF solo para formularios y enlaces en línea?

    
pregunta niilzon 08.01.2016 - 14:56
fuente

2 respuestas

3

Dependerá de la versión de software F5 que tengas. En el pasado, ASM solo funcionaba inyectando el token en los campos en formularios POST de HTML estáticos, y no podía abordar otros tipos de peticiones o interacciones guiadas por el lado del cliente.

Parece que más recientemente, la función CSRF ahora puede inyectar el script del lado del cliente para:

  • Aplique el token CSRF a los formularios GET y a los enlaces simples. Esta es una muy mala idea: no quieres filtrar tus tokens CSRF en las URL.

  • Frob el prototipo XMLHttpRequest para inyectar un encabezado personalizado de valor fijo X-TS-AJAX-Request: true para omitir la protección CSRF. Esto es viable, pero los encabezados personalizados son la solución del hombre pobre, en comparación con los tokens adecuados; han sido vulnerables a ataques de caso extremo como de Flash en el pasado.

Estas características, al igual que gran parte de lo que hace ASM, son útiles como una solución temporal de última hora para cuando tenga que implementar aplicaciones que sabe que son inseguras pero no tiene la capacidad o el permiso para corregirlas correctamente. Pero si puede, es mucho más confiable abordar el problema en la propia aplicación.

    
respondido por el bobince 09.01.2016 - 13:43
fuente
0

Hasta donde entendí cómo se implementa CSRF, si una solicitud no contiene información de CSRF, se descarta. Independientemente de cómo se construyó la solicitud o de dónde se originó. CSRF agrega profundidad a las sesiones, lo que significa que un token CSRF no solo ofrece seguimiento y singularidad de las sesiones, sino que también se puede usar para regresar a un estado anterior de una aplicación web. Aunque este no es el uso previsto para CSRF, lo he visto usado como tal. Menciono esto porque a menudo es así como un sitio web impulsado por ajax maneja la experiencia del usuario de una aplicación web (apuntando a los estados)

    
respondido por el Saint Crusty 09.01.2016 - 23:26
fuente

Lea otras preguntas en las etiquetas