Codeigniter xss_clean dilema

Sé que esta pregunta se ha hecho una y otra vez, pero todavía no he encontrado la respuesta perfecta para mi gusto, así que aquí va de nuevo ...

He estado leyendo muchísimos comentarios polarizadores sobre el xss_filter de CI. Básicamente la mayoría dice que es malo. ¿Alguien puede elaborar cómo es malo, o al menos dar 1 escenario más probable donde puede ser explotado? He analizado la clase de seguridad en CI 2.1 y creo que es bastante bueno ya que no permite cadenas maliciosas como document.cookie, document.write, etc.

Si el sitio tiene una presentación básicamente no html, ¿es seguro usar el xss_filter global (o si REALMENTE está afectando mucho al rendimiento, utilícelo por correo) antes de insertarlo en la base de datos? He estado leyendo sobre los pros y los contras sobre si escapar en la entrada / salida con la mayoría dice que deberíamos escapar solo en la salida. Pero, de nuevo, ¿por qué permitir cadenas como<a href="javascript:stealCookie()">Click Me</a> para ser guardado en la base de datos en absoluto?

Lo único que no me gusta esjavascript: y tal será convertido a[removed]. ¿Puedo ampliar el núcleo de seguridad del CI?$_never_allowed_str matrices para que las cadenas nunca permitidas vuelvan vacías en lugar de[removed].

El mejor ejemplo de conducta errónea razonable que he leído es si un usuario tiene la contraseña dejavascript:123 será limpiado en[removed]123 lo que significa una cuerda como estadocument.write123 También pasará como contraseña del usuario. Entonces, nuevamente, ¿cuáles son las probabilidades de que eso suceda e incluso si sucede, no puedo pensar en ningún daño real que pueda hacer al sitio?

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta