Scusami se non sono molto chiaro. L'inglese non è la mia lingua madre.
Il modo migliore per garantire un elevato livello di sicurezza nel tuo prodotto è seguire la regola d'oro: " Non fidarti mai degli input utente "
Quindi devi sempre dare per scontato che un utente proverà a inviare dati inattesi alla tua app, che non seguirà i protocolli (ad esempio: falsificherà alcuni campi, farà la richiesta di risposta, ecc.) E devi pronosticare il suo comportamento.
Per il punto XSS dovresti
- > Convalida l'input dell'utente (es .: se prevedi di ottenere un nome, dovresti bloccare tutti i valori che contengono caratteri speciali come% o ", se prevedi un numero di telefono dovresti bloccare i valori che contengono lettere, un così via)
- > Disinfetta l'input dell'utente (es .: sfugge a tutti i caratteri che hanno una semantica specifica per l'interprete nel backend. Per l'XSS è usualmente html / javascript quindi dovresti preoccuparti di ", & lt ;, > priorità)
Come hanno detto i nostri compagni, l'OWASP offre un'ottima guida sulla prevenzione dell'XSS: link