Maison > php教程 > php手册 > sql 注入 字符的检测函数

sql 注入 字符的检测函数

WBOY
Libérer: 2016-06-13 10:11:58
original
1026 Les gens l'ont consulté

自己写的一款sql注入检测函数,可以有效的检测用户post,get过来的参考进行过滤,有需要的朋友参考一下。

 代码如下 复制代码

/*sql 注入 字符的检测
* 在所有用户输入的数据,post传参, get传参 都需要检测下 
* 如果有匹配到关键字 则 返回该关键字  否则返回false
* 这个和敏感字符的检测不是一样的
*/
function Filter_SQL($strData)
{
 $strFilter=$blnFlag=$arrayFilter='';

 $strFilter="'|and|(|)|exec|insert|select|delete|update|count|*|%27|chr|mid|master|truncate|char|declare|union|or"; //需要过滤的字符,可以自己添,"|"是分隔符
 $blnFlag=false;   //过滤标志,如果产生过滤,那么就是真
 
 $arr=explode("|",$strFilter); 
 $str="";
 
 foreach($arr as $row)
 {
  $str.=preg_quote($row)."|";
 } 
 
 $str=trim($str,"|"); 
 
 if(preg_match('/'.$str.'/i',$strData,$word))
 {
  return $word[0];
 }
 
 return false;
}

/*
测试
$string="fasdf union ";
echo Filter_SQL($string);
*/

?>

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal