Disculpe si no estoy muy claro. El inglés no es mi lengua materna.
La mejor manera de garantizar un gran nivel de seguridad en su producto es seguir la regla de oro: " Nunca confíe en las entradas del usuario "
Por lo tanto, siempre debe asumir que un usuario intentará enviar datos inesperados a su aplicación, que no seguirá los protocolos (es decir, que falsificará algunos campos, repetirá la solicitud, etc.) Y usted debe predecir su comportamiento.
Para el punto XSS debes
- > Valide la entrada del usuario (es decir, si espera obtener un nombre, debe bloquear todos los valores que contengan caracteres especiales como% o ", si espera un número de teléfono, debe bloquear los valores que contienen letras, y así sucesivamente)
- > Desinfecte la entrada del usuario (es decir, escape todos los caracteres que tienen una semántica específica para el intérprete en el backend. Para el XSS es usualmente html / javascript, por lo que debería preocuparse por ", & lt ;, > in prioridad)
Como hemos dicho a nuestros colegas, hay una gran guía hecha por OWASP con respecto a la prevención XSS: enlace