SQL注入漏洞的产生原因,如何防止?
SQL注入产生的原因:程序开发过程中不注意规范书写SQL语句和对特殊字符进行过滤,导致客户端可以通过全局变量post和get提交一些SQL语句正常执行。
如何防止:
- 开启配置文件中的magic_quotes_gpc和magic_quotes_runtime设置执行SQL语句时使用addslashes进行SQL语句转换。
- SQL语句书写尽量不要省略双引号和单引号。
- 过滤掉SQL中的一些关键词:update、insert、delete、select、*。
- 提高数据库表和字段的命名技巧,对一些重要的字段根据程序的特点命名,取不易被猜到的。
欢迎批评指正,提出问题,谢谢!