¿La prevención XSS solo en la interfaz es suficiente para los servicios JSON? [duplicar]

1

Tenemos una aplicación con un formulario donde el usuario puede ingresar un comentario. El formulario se envía utilizando AJAX. Los valores también se leen a través de AJAX y el backend los devuelve como JSON, y luego se analizan con JavaScript para presentarlos en la página.

Este formulario era vulnerable al ataque XSS, por lo que protegimos la aplicación solo en la interfaz, escapamos de los caracteres HTML y JavaScript cuando analizamos la respuesta JSON.

Creemos que no hay necesidad de hacer algo similar en el backend, es decir, para escapar de los caracteres riesgosos antes de almacenarlos en la base de datos, porque la respuesta JSON siempre será analizada por el frontend antes de renderizar.

¿Es el enfoque correcto o aún existe alguna amenaza o ataque?

    
pregunta dzieciou 09.10.2014 - 16:18
fuente

1 respuesta

4

Sí, hay un posible ataque: algún día cambias la interfaz, dejas de usar JSON y empiezas a usar otra cosa. El XSS almacenado en la base de datos se activa y sus usuarios son atacados.

Es una muy buena práctica sanear la información del usuario tan pronto como sea posible. Siempre los desinfecto tan pronto como llegue a mi código.

    
respondido por el ThoriumBR 09.10.2014 - 16:27
fuente

Lea otras preguntas en las etiquetas