XSS no es lo mismo que SQL Inyections, el SQL inyection se resuelve en el servidor, al escapar los caracteres especiales en los datos añadidos a SQL, de hecho CI está preparado para ello, eso si, si lo utilizas debidamente:
http://stackoverflow.com/questions/1...-sql-injection
XSS por otro lado es otro problema que resulta básicamente de no escapar debidamente el código HTML:
http://maycolalvarez.com/articles/20...o-scripting-de