Una buona pratica per gestire il caricamento degli utenti è stata condivisa in questo post sul blog di sicurezza di Google : spiega le insidie comuni e alcuni passaggi aggiuntivi di difesa. Lasciatemi riassumere qui:
Codifica il tuo output per il suo contesto:
Assicurati di avere la corretta codifica dell'output con algoritmo diverso per il contesto. Dovresti avere diverse pratiche di sanitizzazione per ogni HTML, attributi HTML, JSON ecc.
Fornisci contenuti utente da un dominio diverso:
Prima di tutto, è sempre saggio servire i contenuti utente da un dominio diverso. Google utilizza googleusercontent.com
e troverai sicuramente un investimento economico per la tua sicurezza. Lo stesso criterio di origine ti aiuta qui, poiché uno XSS non può raggiungere il dominio meno importante nel tuo dominio principale.