加入收藏 | 设为首页 | 会员中心 | 我要投稿 梅州站长网 (https://www.0753zz.cn/)- 行业物联网、云备份、数据工具、云计算、智能推荐!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

sql 注入字符的检测函数

发布时间:2022-07-28 10:02:07 所属栏目:PHP教程 来源:互联网
导读:自己写的一款sql注入检测函数,可以有效的检测用户post,get过来的参考进行过滤,有需要的朋友参考一下,代码如下: ?php /*sql 注入 字符的检测 * 在所有用户输入的数据,post传参, get传参 都需要检测下 * 如果有匹配到关键字 则 返回该关键字 否则返回false *
  自己写的一款sql注入检测函数,可以有效的检测用户post,get过来的参考进行过滤,有需要的朋友参考一下,代码如下:
 
  <?php
  /*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))
   {//开源代码phpfensi.com
    return $word[0];  
   }
   
   return false;
  }
   
  /*
  测试
  $string="fasdf union ";
  echo Filter_SQL($string);
  */
   
  ?> 

(编辑:梅州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读