SQL注入漏洞产生的原因是什么?怎么防止?XSS呢?

SQL注入产生的原因:程序开发过程中不注意规范书写sql语句和对特殊字符进行过滤,导致客户端可以通过全局变量POST和GET提交一些sql语句正常执行。 防止SQL注入: 

1、开启配置文件中的magic_quotes_gpc和magic_quotes_runtime设置 

2、执行sql语句时使用addslashes进行sql语句转换 

3、Sql语句书写尽量不要省略小引号和单引号 

4、过滤掉sql语句中的一些关键字:update、insert、delete、select、* 

5、提高数据库表和字段的命名技巧,对一些重要的字段根据程序的特点命名,取不易被猜到的。

6、Php配置文件中设置register_globals为off,关闭全局变量注册 

7、控制错误信息,不要再浏览器上输出错误信息,将错误信息写到日志文件中。

了解XSS攻击吗? 如何防止 ? 

XSS是跨站脚本攻击,首先是利用跨站脚本漏洞以一个特权模式去执行攻击者构造的脚本,然后利用不安全的Activex控件执行恶意的行为。使用htmlspecialchars()函数对提交的内容进行过滤,使字符串里面的特殊符号实体化。

posted @ 2016-11-20 20:34  Mr.peter  阅读(8090)  评论(0编辑  收藏  举报