sql注入的基本防范手段
基本的sql注入防御手段,概括来讲就是权限控制和关键词过滤。
防御sql注入 ============================================================================================================================================================================ mysql有四个级别的权限,用户级、库级、表级、列级。 select into outfile '<file-name>';需要全局的file权限,在mysql.user中有记录, 一般赋予某个库的所有权限在mysql.db中有记录。 http://www.blogjava.net/xiaomage234/archive/2011/11/04/362677.html 抵御mysql注入,做到以下几点: 1、后台连接数据库的用户,不要赋予file privilege,让其无法执行select into outfile,load_file等命令 2、mysql用户不能在网站目录有可写权限,否则可能挂马 3、其实只要post或get提交的参数中含有select、union、between、if、from、sleep、分号、单引号、#、--、逗号、(、)等关键字就可以返回404错误,在数据库采用UTF8编码且将单引号转义, 让攻击者无法得到任何可以利用的信息。 4、提交的参数在用来查询数据库时,可使用pdo进行参数绑定,预编译将数据和指令区分开。
自助者天助;自天佑之,吉无不利。