Heim >Backend-Entwicklung >PHP-Tutorial >360提供的php防注入代码

360提供的php防注入代码

WBOY
WBOYOriginal
2016-07-25 08:43:071150Durchsuche
  1. //Code By Safe3
  2. function customError($errno, $errstr, $errfile, $errline)
  3. {
  4. echo "Error number: [$errno],error on line $errline in $errfile
    " ;
  5. die();
  6. }
  7. set_error_handler("customError",E_ERROR);
  8. $getfilter="'|(and|or)\\b.+?(>|$postfilter="\\b(and|or)\\b.{1,6}?(=|>|$cookiefilter="\\b(and|or)\\b.{1,6}?(=|>|function StopAttack($StrFiltKey,$StrFiltValue,$ArrFiltReq){
  9. if(is_array($StrFiltValue))
  10. {
  11. $StrFiltValue=implode($StrFiltValue);
  12. }
  13. if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue)==1){
  14. //slog("

    操作IP: ".$_SERVER["REMOTE_ADDR"]."
    操作时间: ".strftime("%Y-%m-%d %H:%M:%S")."
    操作页面:".$_SERVER["PHP_SELF"]."
    提交方式: ".$_SERVER["REQUEST_METHOD"]."
    提交参数: ".$StrFiltKey."
    提交数据: ".$StrFiltValue);
  15. print "360websec notice:Illegal operation!" ;
  16. exit();
  17. }
  18. }
  19. //$ArrPGC=array_merge($_GET,$_POST,$_COOKIE);
  20. foreach($_GET as $key=>$value){
  21. StopAttack($key,$value,$getfilter);
  22. }
  23. foreach($_POST as $key=>$value){
  24. StopAttack($key,$value,$postfilter);
  25. }
  26. foreach($_COOKIE as $key=>$value){
  27. StopAttack($key,$value,$cookiefilter);
  28. }
  29. /*
  30. if (file_exists('update360.php')) {
  31. echo "请重命名文件update360.php,防止黑客利用
    ";
  32. die();
  33. }
  34. */
  35. function slog($logs)
  36. {
  37. $toppath=$_SERVER["DOCUMENT_ROOT"]."/log.htm";
  38. $Ts=fopen($toppath,"a+");
  39. fputs($Ts,$logs."\r\n");
  40. fclose($Ts);
  41. }
复制代码

php


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn