 |
ASP上两个防止SQL注入式攻击Function |
|
|
| ASP上两个防止SQL注入式攻击Function |
|
| 作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-25 11:29:37 |
|
'========================== '过滤提交表单中的SQL '========================== function ForSqlForm() dim fqys,errc,i,items dim nothis(18) nothis(0)="net user"
nothis(1)="xp_cmdshell"
nothis(2)="/add"
nothis(3)="exec%20master.dbo.xp_cmdshell"
nothis(4)="net localgroup administrators"
nothis(5)="select"
nothis(6)="count"
nothis(7)="asc"
nothis(8)="char"
nothis(9)="mid"
nothis(10)="'"
nothis(11)=":"
nothis(12)=""""
nothis(13)="insert"
nothis(14)="delete"
nothis(15)="drop"
nothis(16)="truncate"
nothis(17)="from"
nothis(18)="%"
'nothis(19)="@"
errc=false
for i= 0 to ubound(nothis) for each items in request.Form if instr(request.Form(items),nothis(i))<>0 then response.write("<div>") response.write("你所填写的信息:" & server.HTMLEncode(request.Form(items)) & "<br>含非法字符:" & nothis(i)) response.write("</div>") response.write("对不起,你所填写的信息含非法字符!<a href=""#"" onclick=""history.back()"">返回</a>") response.End() end if next next end function '========================== '过滤查询中的SQL '========================== function ForSqlInjection() dim fqys,errc,i dim nothis(19) fqys = request.ServerVariables("QUERY_STRING") nothis(0)="net user"
nothis(1)="xp_cmdshell"
nothis(2)="/add"
nothis(3)="exec%20master.dbo.xp_cmdshell"
nothis(4)="net localgroup administrators"
nothis(5)="select"
nothis(6)="count"
nothis(7)="asc"
nothis(8)="char"
nothis(9)="mid"
nothis(10)="'"
nothis(11)=":"
nothis(12)=""""
nothis(13)="insert"
nothis(14)="delete"
nothis(15)="drop"
nothis(16)="truncate"
nothis(17)="from"
nothis(18)="%"
nothis(19)="@"
errc=false
for i= 0 to ubound(nothis)
if instr(FQYs,nothis(i))<>0 then
errc=true
end if
next
if errc then response.write "查询信息含非法字符!<a href=""#"" onclick=""history.back()"">返回</a>" response.end
end if
end function【转自世纪安全网 http://www.21safe.com】
|
|
| 文章录入:admin 责任编辑:admin |
|
|
上一篇文章: 防范ASP木马的十大基本原则 下一篇文章: ASP安全配置不完全手册 |
|
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
|
|
|
|
|