zoukankan      html  css  js  c++  java
  • zencart安全辅助小脚本

    在includes/application_top.php最后一行加入
    require('fish.php');

    将下面代码保存为fish.php

    <?php
    function customError($errno, $errstr, $errfile, $errline)
    {
     echo "<b>Error number:</b> [$errno],error on line $errline in $errfile<br />";
     die();
    }
    set_error_handler("customError",E_ERROR);
    $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)";
    $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&&!isset($_REQUEST['securityToken'])){
     slog("<br><br>操作IP: ".$_SERVER["REMOTE_ADDR"]."<br>操作时间: ".strftime("%Y-%m-%d %H:%M:%S")."<br>操作页面:".$_SERVER["PHP_SELF"]."<br>提交方式: ".$_SERVER["REQUEST_METHOD"]."<br>提交参数: ".$StrFiltKey."<br>提交数据: ".$StrFiltValue);
     print "result 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);
    }
       
    function slog($logs)
    {
     $toppath="zc_hack_log.htm";
     $Ts=fopen($toppath,"a+");
     fputs($Ts,$logs."
    ");
     fclose($Ts);
    }
    ?>

    日志保存在zc_hack_log.htm

    转载请注明出处!小鱼阁工作室 -专注zencart建站,织梦企业建站,ecshop商城,二次开发,产品采集,模板修改!技术QQ 631992791
  • 相关阅读:
    导入别人的flex项目出现的问题
    HTTP通信原理
    java 代码的细节优化
    跨服务器之间的session共享
    spring整合hibernate配置文件
    java中时间类型的问题
    Hibernate注解映射sequence时出现无序增长问题+hibernate 映射 oracle ID自动增长:
    并发处理方案 个人总结
    MsSqlserver 查看锁表与解锁
    c# CTS 基础数据类型笔记
  • 原文地址:https://www.cnblogs.com/afish/p/3924808.html
Copyright © 2011-2022 走看看