¿Cómo insertar de forma segura objetos JSON en los atributos de javascript, contenido DOM y elementos html?

1

¿Hay alguna forma de sanear o crear cadenas para proteger los datos de un objeto en un script o DOM como:

var myObj = JSON.parse({someObject: value})
someElement.innerHTML('<div data-id="'+myObj.someObject+'">' + '+myObj.someObject+')?

Este JSON se genera cuando un usuario A envía un objeto dentro de un JSON al usuario B, en una aplicación de chat que el usuario B recibe ese JSON y almacena este objeto en una matriz, luego genera un elemento HTML con un atributo y contenido.

    
pregunta Augusto Will 14.07.2016 - 17:01
fuente

1 respuesta

1

Algunos de los puntos que debe tener en cuenta son: (sin orden)

  1. Las entradas de usuario que no son de confianza solo deben tratarse como texto visualizable. Nunca trate los datos que no sean de confianza como código o marca dentro del código JavaScript. HTML codifica todas las entradas del usuario.
  2. Siempre codifique y delimite JavaScript de los datos que no son de confianza como cadenas citadas al ingresar a la aplicación
  3. Evita el uso de métodos de representación HTML

  4. Use document.createElement ("..."), element.setAttribute ("...", "value"), element.appendChild (...), etc. para crear interfaces dinámicas. Los atributos peligrosos incluyen cualquier atributo que sea un contexto de ejecución de comando, como onclick o onblur.

respondido por el one 14.07.2016 - 17:11
fuente

Lea otras preguntas en las etiquetas