sql通用防注入系统

//防注入

 代码如下 复制代码
$arrfiltrate=array("update","delete","selert","drop","exec","cast","'","union");
//出错后要跳转的url,不填则默认前一页
$strgourl="";
//是否存在数组中的值
function funstringexist($strfiltrate,$arrfiltrate){
    foreach ($arrfiltrate as $key=>$value){
        if (eregi($value,$strfiltrate)){
            return true;
        }
    }
return false;
}
//合并$_post 和 $_get
if(function_exists(array_merge)){
    $arrpostandget=array_merge($http_post_vars,$http_get_vars);
}else{
    foreach($http_post_vars as $key=>$value){
        $arrpostandget[]=$value;
    }
    foreach($http_get_vars as $key=>$value){
    $arrpostandget[]=$value;
    }
}
//验证开始
foreach($arrpostandget as $key=>$value){
    if (funstringexist($value,$arrfiltrate)){
        echo " ";
        if (empty($strgourl)){
            echo " ";
        }else{
            echo " ";
        }
        echo "<script>alert('系统检测到非法字符!');history.back();</script>";
        exit();
    }
}
?>
时间: 2024-10-29 20:20:08

sql通用防注入系统的相关文章

asp下的风讯用的SQL通用防注入模块提供了_应用技巧

复制代码 代码如下: <% Dim FS_NoSqlHack_AllStr,FS_NoSqlHack_Str,FS_NoSqlHack_ComeUrlGet,FS_NoSqlHack_ComeUrlPost,FS_NoSqlHack_Get,FS_NoSqlHack_Post,FS_NoSqlHack_i 'On Error Resume Next FS_NoSqlHack_AllStr="'|;| and |chr(|exec |insert |select |delete from|u

asp下的风讯用的SQL通用防注入模块提供了

复制代码 代码如下: <% Dim FS_NoSqlHack_AllStr,FS_NoSqlHack_Str,FS_NoSqlHack_ComeUrlGet,FS_NoSqlHack_ComeUrlPost,FS_NoSqlHack_Get,FS_NoSqlHack_Post,FS_NoSqlHack_i 'On Error Resume Next FS_NoSqlHack_AllStr="'|;| and |chr(|exec |insert |select |delete from|u

MSSQL通用防注入程序的漏洞

现在基于web的攻击一般都是注入.导致注入的原因一般为对变量的过滤不完全,从而可以使入侵者非法执行程序或查询修改任意数据.随着注入攻击的愈演愈烈,一些专门的过滤代码应运而生.但一些过滤代码的不完善很可能导致新的攻击.下面就以目前应用最广泛的过滤代码--SQL通用防注入程序为下列说明漏洞的成因.利用方法及防范措施. SQL通用防注入程序是由火狐的枫知秋编写的,功能相当完善的防注入代码.它能对定义的过滤字符实现get提交的过滤,并能记录攻击者的IP提交的数据信息.使用时只须在要防注入的文件头中加入代

ASP通用防注入代码.杜绝SQL注入隐患.提升网站安全

ASP通用防注入代码.杜绝SQL注入隐患.提升网站安全 <% '''''''''''''''''''''''''''''''''''''''''''''''' 'ASP通用防注入代码 '您可以把该代码COPY到头文件中.也可以单独作 '为一个文件存在,每次调用使用 '作者:y3gu - 2005-7-29 '''''''''''''''''''''''''''''''''''''''''''''''' Dim GetFlag Rem(提交方式) Dim ErrorSql Rem(非法字符) Di

通过cookies注入破解ASP通用防注入程序

在一次网站被注入木马后,很是郁闷,网站已经放入了通用的ASP防注入程序,但依然被注入. 在查阅了大量的资料后,终于发现了问题所在. 现在很多网站都加了防注入系统代码,你输入注入语句将无法注入~~感觉这样的防注入系统不错,但防注入系统没有注意到 Cookies 的问题!所以就有了Cookies注入~~ 我们来研究一下怎样情况下才会有Cookies注入!如果你学过ASP你应该会知道 Request.QueryString (GET) 或 Request.Form (POST)!呵,没错,这就是我们用

php通用防注入与注入详细说明

还有服务器和mysql教程也要加强一些安全防范. 对于linux服务器的安全设置: 加密口令,使用"/usr/sbin/authconfig"工具打开密码的shadow功能,对password进行加密. 禁止访问重要文件,进入linux命令界面,在提示符下输入: #chmod 600 /etc/inetd.conf    //改变文件属性为600 #chattr +i  /etc/inetd.conf     //保证文件属主为root #chattr –i  /etc/inetd.c

asp sql超级防注入代码

asp sql超级防注入代码 <%Function Safe(str) Dim s_BadStr, n, i s_BadStr = "' &<>?%,;)`~!@#$^*{}[]|/+-="&Chr(34)&Chr(9)&Chr(32) n = Len(s_BadStr) Safe = True For i = 1 To n If Instr(str, Mid(s_BadStr, i, 1)) > 0 Then Safe = Fa

PHP通用防注入安全代码

安全|防注入 简述:/************************* 说明: 判断传递的变量中是否含有非法字符 如$_POST.$_GET 功能: 防注入 **************************/ <?php //要过滤的非法字符 $ArrFiltrate=array("'",";","union"); //出错后要跳转的url,不填则默认前一页 $StrGoUrl=""; //是否存在数组中的值 fu

php通用防注入程序 推荐_php技巧

复制代码 代码如下: function jk1986_checksql() { $bad_str = "and|select|update|'|delete|insert|*"; $bad_Array = explode("|",$bad_str); /** 过滤Get参数 **/ foreach ($bad_Array as $bad_a) { foreach ($_GET as $g) { if (substr_count(strtolower($g),$bad