防注入函数

防注入函数

Dim regEx, Match, Match2, Matches, Matches2
Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global = True
regEx.MultiLine = True

If Request.QueryString <> "" Then Call StopInjection(Request.QueryString)
If Request.Cookies <> "" Then Call StopInjection(Request.Cookies)

Sub StopInjection(Values)
    Dim FoundInjection
    regEx.Pattern = "'|;|#|([\s\b+()]+(select|update|insert|delete|declare|@|exec|dbcc|alter|drop|create|backup|if|else|end|and|or|add|set|open|close|use|begin|retun|as|go|exists)[\s\b+]*)"
    Dim sItem, sValue
    For Each sItem In Values
        sValue = Values(sItem)
        If regEx.Test(sValue) Then
            FoundInjection = True
            Response.Write "很抱歉,由于您提交的内容中含有危险的SQL注入代码,致使本次操作无效! "
            Response.Write "<br>字段名:" & sItem
            Response.Write "<br>字段值:" & sValue
            Response.Write "<br>关键字:"
            Set Matches = regEx.Execute(sValue)
            For Each Match In Matches
                Response.Write FilterJS(Match.value)
            Next
            Response.Write "<br><br>如果您是正常提交仍出现上面的提示,请联系站长修改Config.asp文件的第7行,暂时禁用掉防SQL注入功能,操作完成后再打开。"
                    
        End If
    Next
    If FoundInjection = True Then
        Response.End
    End If
End Sub

时间: 2024-10-26 09:02:25

防注入函数的相关文章

asp get post sql防注入函数

asp get post sql防注入函数 '----实现get请求的注入的拦截----- dim sql_injdata,Sql_Inj,SQL_Get,Sql_Post,Sql_DATA SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare" SQL_inj = split(SQL_Injdata,"|") If R

PHP防注入函数代码总结

为了安全,我们常用到下面的函数来过滤一些传递过来的非法字符: PHP防注入函数  代码如下 复制代码 <?php //要过滤的非法字符 $ArrFiltrate=array("'",";","union","select","delete","'","or","and","="); //出错后要跳转的url,不填则默认前一

经典php防注入函数代码

<?php教程 /************************* 说明: 判断传递的变量中是否含有非法字符 如$_post.$_get 功能: 防注入 **************************/ //要过滤的非法字符  这个过滤的字符 还可以增加 $arrfiltrate=array("'",";","union"); //出错后要跳转的url,不填则默认前一页 $strgourl=""; //是否存在数

PHP 防注入函数(格式化数据)_php技巧

复制代码 代码如下: <? //格式化数据(防止注入) function site_addslashes($string, $force = 0) { !defined('MAGIC_QUOTES_GPC') && define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc()); if(!MAGIC_QUOTES_GPC || $force) { if(is_array($string)) { foreach($string as $key =&

php addslashes sql防注入函数

//参数'a..z'界定所有大小写字母均被转义 echo addcslashes('foo[ ]','a..z');       //输出:foo[ ] // $str="is your name o'reilly?";      //定义字符串,其中包括需要转义的字符 echo addslashes($str);       //输出经过转义的字符串 /* 定义和用法 addslashes() 函数在指定的预定义字符前添加反斜杠. 这些预定义字符是: 单引号 (') 双引号 (&qu

比较好用的PHP防注入漏洞过滤函数代码_php实例

复制代码 代码如下: <?PHP //PHP整站防注入程序,需要在公共文件中require_once本文件 //判断magic_quotes_gpc状态 if (@get_magic_quotes_gpc ()) { $_GET = sec ( $_GET ); $_POST = sec ( $_POST ); $_COOKIE = sec ( $_COOKIE ); $_FILES = sec ( $_FILES ); } $_SERVER = sec ( $_SERVER ); functi

discuz的php防止sql注入函数

最近在做一个主题投票网站,客户懂一些程序方面的东西.有特别要求需要过滤一些字符防止sql注入.本来这方面就没有特别的研究过.呵呵,又发扬了一回拿来主义.把discuz论坛的sql防注入函数取了来! 复制代码 代码如下: $magic_quotes_gpc = get_magic_quotes_gpc(); @extract(daddslashes($_COOKIE)); @extract(daddslashes($_POST)); @extract(daddslashes($_GET)); if

discuz的php防止sql注入函数_php技巧

最近在做一个主题投票网站,客户懂一些程序方面的东西.有特别要求需要过滤一些字符防止sql注入.本来这方面就没有特别的研究过.呵呵,又发扬了一回拿来主义.把discuz论坛的sql防注入函数取了来! 复制代码 代码如下: $magic_quotes_gpc = get_magic_quotes_gpc(); @extract(daddslashes($_COOKIE)); @extract(daddslashes($_POST)); @extract(daddslashes($_GET)); if

mysql sql防注入简介与防注入实例

下面我们根据我编程序的经验来写一篇关于mysql教程 sql防注入简介与防注入实例吧. sql防注入简介: sql查询是一种用来数据与用户进行交互的文本语言,sql利用外部接将用户提交的数据发送给mysql数据库教程服务器进行处理,如果没有严密的过滤,可能导致数据丢失,如被删除,修改,而这样问题是网络管理员很难做事的,他们不能通过打系统被丁,或安装防火强可以控制了,. 下面我们来看一个简单的用户登陆实例. 一,创建用户表user create table user ( userid(int) n