CodeIgniter 3のXSS対策について

CI3のXSS対策について - Google グループ

  1. global_xss_filtering
    本体のコメントやdocumentにも記載されていますが、CI3ではDEPRECATEDとなっています。
    使っちゃダメ。
     
  2. xss_clean
    以下のようなメソッドの第二引数にTRUEを指定することで xss_clean を実行することが可能ですが
    XSS filtering は怪しいので、使わない方がbetter。(from kenjiさん)
> $this->input->post() 
> $this->input->get() 
> $this->input->cookie() 
> $this->input->server() 

私の意見では XSS filtering を使うケースはありません。 

XSS filtering は過去何度も何度も脆弱性が指摘されて修正されて 
おり、根本的に安全かどうかは疑問があります。 

ただし、もし上記のメソッドの第二引数にTRUEを指定するなら、 
その返り値をそのまま view で表示することになると思います。 

XSS filtering にバグがなければ、XSS されないことが保証されます。 

 
3. じゃ、どうすんのよ

通常は Twig なり Smarty なりを使い、テンプレートエンジンの機能で自動エスケープ 
するのが一般的

CIでtwigを簡単に利用するために以下のようなものもあります。CI3でも使えます。
kenjis/codeigniter-ss-twig
kenjisさんありがとうございます。