Además de los ejemplos de JavaScript que ya se han mencionado, los paréntesis también se pueden ocultar con diferentes codificaciones de XML y JavaScript.
Pero incluso si nadie supiera cómo omitir tu filtro, eso no probaría nada. Simplemente podría ser una falta de conocimiento o creatividad por nuestra parte. ¿Quién sabe todas las características locas de JavaScript y las peculiaridades del navegador?
La lista negra simplemente no es la respuesta. Muchas personas inteligentes lo intentaron y pensaron que finalmente habían escrito el filtro XSS perfecto, pero luego apareció un atacante aún más inteligente y demostró que estaban equivocados. Es una carrera de armamentos infinita.
Por muy tentador que sea aceptar el desafío, es mucho mejor evitarlo. Simplemente no permita que sus usuarios inyecten el código JavaScript cualquiera , y no tendrá que preocuparse por encontrar las partes malas.