RSS订阅优然探索
你的位置:首页 » 技术文章 » 正文

ASP防止SQL注入

选择字号: 超大 标准 发布时间:2010-7-14 13:21:38 | 作者:admin | 0个评论 | 人浏览

function gosql

Dim Fy_Post,Fy_Get,Fy_In,Fy_Inf,Fy_Xh,Fy_db,Fy_dbstr,Kill_IP,WriteSql
Fy_In = "'|;|and|(|)|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
Kill_IP=True
WriteSql=True  
'----------------------------------


Fy_Inf = split(Fy_In,"|")
'--------POST部份------------------
If Request.Form<>"" Then
For Each Fy_Post In Request.Form
   For Fy_Xh=0 To Ubound(Fy_Inf)
    If Instr(LCase(Request.Form(Fy_Post)),Fy_Inf(Fy_Xh))<>0 Then
     If WriteSql=True Then
      killSqlconn.Execute("insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('"&Request.ServerVariables("REMOTE_ADDR")&"','"&Request.ServerVariables("URL")&"','POST','"&Fy_Post&"','"&replace(Request.Form(Fy_Post),"'","''")&"')")
   
      Set killSqlconn = Nothing
     End If
     htm = htm& "<Script Language=JavaScript>alert('SQL通用防注入系统提示你↓\n\n请不要在参数中包含非法字符尝试注入!\n');</Script>"
     htm = htm& "非法操作!系统做了如下记录↓<br>"
     htm = htm& "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br>"
     htm = htm& "操作时间:"&Now&"<br>"
     htm = htm& "操作页面:"&Request.ServerVariables("URL")&"<br>"
     htm = htm& "提交方式:POST<br>"
     htm = htm& "提交参数:"&Fy_Post&"<br>"
     htm = htm& "提交数据:"&Request.Form(Fy_Post)
     Response.End
    End If
   Next
Next
End If
'----------------------------------

'--------GET部份-------------------
If Request.QueryString<>"" Then
For Each Fy_Get In Request.QueryString
   For Fy_Xh=0 To Ubound(Fy_Inf)
    If Instr(LCase(Request.QueryString(Fy_Get)),Fy_Inf(Fy_Xh))<>0 Then
     If WriteSql=True Then
     
     End If
     htm = htm& "<Script Language=JavaScript>alert('SQL通用防注入系统提示你↓\n\n请不要在参数中包含非法字符尝试注入!\n');</Script>"
     htm = htm& "非法操作!系统做了如下记录↓<br>"
     htm = htm& "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br>"
     htm = htm& "操作时间:"&Now&"<br>"
     htm = htm& "操作页面:"&Request.ServerVariables("URL")&"<br>"
     htm = htm& "提交方式:GET<br>"
     htm = htm& "提交参数:"&Fy_Get&"<br>"
     htm = htm& "提交数据:"&Request.QueryString(Fy_Get)
     Response.End
    End If
   Next
Next
End If

end function

gosql

标签:

猜你喜欢

发表评论

必填

选填

选填

必填,不填不让过哦,嘻嘻。

记住我,下次回复时不用重新输入个人信息

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。