下载后可任意编辑1、 基本概念php
ini 文件中的一个设置:magic_quotes_gpc
此设置默认是关闭的,即 magic_quotes_gpc=off,一般将其设置为 on
为 on 时,php 应用程序服务器将自动把用户提交的对 SQL 的查询进行转换,比如吧“’”转化为“\’”,它的作用是在敏感字符前加一个反斜杠“\”,这对防止SQL 注入有重大作用
函数 addslashes()作用是在所有 外部数据敏感字符’(单引号)、\(反斜杠)、NUL 的前面加上反斜杠
函数 intval()作用是将数据类型转化为整型
注意:在新版本 PHP 中,即使 magic_quotes_gpc 设成了 on,在使用 addslashes()函数来处理时不会出现冲突的,可以大胆使用
2、 sql 漏洞注入原理基础过滤和二次过滤一般情况下,在获得用户提交的参数时,首先要进行一些基础性的过滤,然后再根据程序的响应的功能以及用户输入进行二次过滤
在所有用户输入处对敏感字符进行过滤,敏感字符如下:"\\", "&", " ", "'", "/", "*", ",", "", "\r", "\t", "\n", "#", "$", "(", ")", "%", "@", "+", "
", ";", "^","--","and","or","select","update"在 javascript 中使用代码过滤敏感字符串:标题页function check(inputStr) { if (typeof(inputStr)
= "string") { return inputStr; } //推断是否是字符串类型 var tmpValue = inputStr; //以下搜索字符串中的特别字符,假如存在,则替换成"" while (tmpValue
indexOf(