es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Problema de CSRF de OWASP para archivos de JS (falta el token requerido en la solicitud)

Tengo un problema con OWASP CSRF. Implementé OWASP CSRF en nuestro sitio web java.
CSRF funciona bien para los archivos JSP, pero no para los archivos js.

Hemos incluido archivos js en la página de inicio de nuestra aplicación (index.jsp) utilizando la etiqueta de script con el atributo src como se muestra a continuación.

<script src="plugins/jquery/jquery.min.js"></script>
<script src="plugins/jquery-ui/jquery-ui.min.js"></script>
<script src="plugins/bootstrap/bootstrap.min.js"></script>

Cuando implementamos OWASP CSRF en nuestra aplicación, encontramos el siguiente error al cargar los archivos JS: error: se requiere un token que falta en la solicitud.

Sé que podríamos hacer que todos los archivos js se vuelvan no protegidos con el archivo de propiedades de csrf. Pero queremos estar seguros si existe alguna forma de establecer el token OWASP CSRF en los archivos js.

¿Podría sugerir una solución? Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Hay varias formas de incorporar la protección CSRF de OWASP en sus archivos JS:

    1. Configurar encabezados HTTP: Puede agregar un encabezado HTTP a sus archivos JS que incluya el token de CSRF. Esto se puede hacer adjuntando un token de sesión único a cada encabezado de solicitud que se envía al servidor.
    2. Incrustar el token en el archivo JS: Otra forma de incorporar la protección CSRF en sus archivos JS es incrustar el token de CSRF directamente en el archivo. Puede hacer esto agregando un campo de entrada oculto en su archivo JSP y luego haciendo referencia a él en su archivo JS utilizando document.getElementsByName() o $(‘input[name=csrf_token]’).val() de jQuery.

    3. Usar llamadas AJAX: Puede utilizar llamadas AJAX para enviar el token de CSRF junto con cada solicitud. Puede hacer esto agregando una función beforeSend a su solicitud AJAX que adjunte el token a los encabezados de la solicitud.

    Tenga en cuenta que implementar la protección CSRF para archivos JS puede agregar complejidad adicional a su aplicación. Es importante probar a fondo cualquier cambio antes de implementarlos en producción.

Comments are closed.