Come inserire in modo sicuro oggetti JSON in javascript, contenuti DOM e attributi di elementi html?

1

C'è un modo per disinfettare o scapeare le stringhe per proteggere i dati put in un oggetto in script o DOM come:

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

Questo JSON viene generato quando un utente A invia un oggetto all'interno di un JSON all'utente B, in un'applicazione di chat che l'utente B riceve quel JSON e memorizza questo oggetto in un array, quindi genera un elemento HTML con un attributo e un contenuto. / p>     

posta Augusto Will 14.07.2016 - 17:01
fonte

1 risposta

1

Alcuni dei punti che dovresti fare attenzione sono: (in nessun ordine)

  1. L'input dell'utente non attendibile dovrebbe essere considerato solo come testo visualizzabile. Non trattare mai dati non fidati come codice o markup all'interno del codice JavaScript. HTML codifica tutti gli input dell'utente.
  2. Sempre JavaScript codifica e delimita i dati non fidati come stringhe tra virgolette quando si inserisce l'applicazione
  3. Evita l'uso dei metodi di rendering HTML

  4. Usa document.createElement ("..."), element.setAttribute ("...", "value"), element.appendChild (...), ecc. per costruire interfacce dinamiche. Gli attributi pericolosi includono qualsiasi attributo che sia un contesto di esecuzione comandi, come onclick o onblur.

risposta data 14.07.2016 - 17:11
fonte

Leggi altre domande sui tag