安静
PHP技术博客

121219 360通用php防护代码 不管你信不信 反正我信了

7月份发布的 昨天又被 phpchina 炒蛋炒饭 炒出来了 其实我记得这个东西是 360某论坛版主写的分享 或者该版主也是他们的员工吧 。
代码中进行了 常见的 注入过滤 和 csrf过滤 基本够用 ,基本上可以人手一份 用着,值得推荐.

360通用php防护代码源码

Error number: [$errno],error on line $errline in $errfile
"; die(); } set_error_handler("customError",E_ERROR); // 过滤常见 db 注入 $getfilter="'|(and|or)\b.+?(>|<|=|in|like)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)"; //过滤注入 $postfilter="\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)"; //过滤cfrs $cookiefilter="\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)"; function StopAttack($StrFiltKey,$StrFiltValue,$ArrFiltReq){ if(is_array($StrFiltValue)) { $StrFiltValue=implode($StrFiltValue); } if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue)==1){ //slog("

操作IP: ".$_SERVER["REMOTE_ADDR"]."
操作时间: ".strftime("%Y-%m-%d %H:%M:%S")."
操作页面:".$_SERVER["PHP_SELF"]."
提交方式: ".$_SERVER["REQUEST_METHOD"]."
提交参数: ".$StrFiltKey."
提交数据: ".$StrFiltValue); print "360websec notice:Illegal operation!"; exit(); } } //$ArrPGC=array_merge($_GET,$_POST,$_COOKIE); foreach($_GET as $key=>$value){ StopAttack($key,$value,$getfilter); } foreach($_POST as $key=>$value){ StopAttack($key,$value,$postfilter); } foreach($_COOKIE as $key=>$value){ StopAttack($key,$value,$cookiefilter); } if (file_exists('update360.php')) { echo "请重命名文件update360.php,防止黑客利用
"; die(); } function slog($logs) { $toppath=$_SERVER["DOCUMENT_ROOT"]."/log.htm"; $Ts=fopen($toppath,"a+"); fputs($Ts,$logs."\r\n"); fclose($Ts); } ?>

测试访问后写入记录:

//http://localhost/index.php?daskkljhhk=select%20*%20from;


操作IP: 127.0.0.1
操作时间: 2012-12-19 06:35:59
操作页面:/db/index.php
提交方式: GET
提交参数: daskkljhhk
提交数据: include 'asd';

操作IP: 127.0.0.1
操作时间: 2012-12-19 06:37:55
操作页面:/db/index.php
提交方式: GET
提交参数: daskkljhhk
提交数据: select * from;

360通用php防护代码官方下载

http://webscan.360.cn/down/php360.zip

赞(0) 打赏
未经允许不得转载:AJ's Blog » 121219 360通用php防护代码 不管你信不信 反正我信了
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏