@MoDoRrO, de tiempo que te leo. El XSS es frecuentemente usado para evadir e inyectar código Script (javascript, vbscript, etc):
http://es.wikipedia.org/wiki/Cross_Site_Scripting Cita: XSS, del
inglés Cross-site scripting es un ataque basado en la explotación de vulnerabilidades del sistema de validación de
HTML incrustado.
[...]
XSS es un ataque
basado en explotar vulnerabilidades del sistema de validación de HTML incrustado. Su nombre original "
Cross Site Scripting", y renombrado XSS para que no sea confundido con las hojas de estilo en cascada (
CSS), originalmente abarcaba cualquier ataque que permitiera ejecutar código de "scripting", como
VBScript o
javascript, en el contexto de otro dominio.
Recientemente se acostumbra a llamar a los ataques de XSS "HTML Injection", sin embargo el término correcto es XSS. Estos errores se pueden encontrar en cualquier aplicación
HTML, no se limita a sitios web, ya que puede haber aplicaciones locales vulnerables a XSS, o incluso el navegador en sí. El problema está en que normalmente no se validan correctamente los datos de entrada que son usados en cierta aplicación.
Ahora, con la aparición y el cada vez más frecuente uso de AJAX, están apareciendo nuevas formas de XSS que justamente tratan de identificar vulnerabilidades en estos sistemas.
Pero en general, mysql_real_escape_string() y funciones afines, así como magic_quotes, fueron inicialmente pensados para evitar el SQL Injection (Servidor; XSS es más Cliente).
Un saludo,