CodeIgniter安全相关设置汇总
CodeIgniter框架自身提供了一些安全设置如针对XSS和CSRF攻击的防范,针对SQL注入攻击的防范等。
就配置文件而言:
在application/config/config.php中
$config['encryption_key']='';//这个一定要设置以加密自己的cookie等 $config['cookie_secure']=TRUE;//设置为TRUE /* |-------------------------------------------------------------------------- |GlobalXSSFiltering全局XSS过滤设置为TRUE |-------------------------------------------------------------------------- | |DetermineswhethertheXSSfilterisalwaysactivewhenGET,POSTor |COOKIEdataisencountered | */ $config['global_xss_filtering']=TRUE; //防范csrf攻击 $config['csrf_protection']=TRUE; $config['csrf_token_name']='mall_tooken'; $config['csrf_cookie_name']='mall_cookie'; $config['csrf_expire']=7200;//设置适当的时间
打开system/core/Input.php
将get和post方法中的$xss_clean设置为true当然你的站点如果是安全无所谓的那就不设置或是在调用get或是post取参数时明确设置就可以了
开发中需要注意:
1.使用
$this->input->get('name',true);
而不使用$_GET['name'];
2.使用
$this->input->post('name',true);
而不使用$_POST['name'];
3.使用ActiveRecord查询语句而尽量不用select之类的语句