两个防止SQL注入的ASP函数
来源:asp之家 发布时间:2005-08-10 14:05:00
标签:SQL注入,ASP
做为站长学习如何防止SQL注入是非常必须的,因为一旦网站被注入小到挂马,大到破坏系统程序,可以说对网站的破坏是非常大的,对于asp编写的程序,我们应该考虑到表单提交的安全,对于能暴露或破坏数据库特殊字符应当全部过滤,已及禁止从站外提交表单,对于形如xx.asp?id=的形式来传递参数的页面,我们应该对ID参数进行数字验证,asp可以使用IsNumeric(expression)函数来验证是否为数字,非数字则禁止操作,下面是两个收集来的过滤函数。
’==========================
’过滤提交表单中的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
0
投稿
猜你喜欢
- 因为对属性了解不多,所以给出我一上午自己琢磨出来的方法。这个方法主要是适合运用在XP系统下无法安装IIS来进行配置ASP环境和不会安装Apa
- 本文我们将讨论使用 mod_status 和 mod_info to 来告诉你目前服务器的工作情况我可以得到什么样的信息?使用 mod_st
- 即日起,Robin主持点石你问我答,如果你有关SEO方面的问题需要咨询,不妨让我知道。你问我答每周举行一次,Robin会挑选3个具有典型性的
- 代码如下【<a href="javascript:" onclick='window.
- 许多人在用IIS建设网站的过程中或多或少都会出现问题,在IIS6中有些是以前版本中就曾经出现过,IIS6中也有些是新发现的问题,本文在此对建
- 相较于前两年大型客户端网游一统江湖的局面,如今的网游市场可谓是遍地开花,尤其是网页游戏自去年以来的不俗表现,吸引了包括腾讯、盛大、网易等巨头
- 昨天跟大家分享了Google排名算法中的最新趋势,大幅提高大品牌网站排名。有的人认为大品牌公司网站,本来排名就应该比较好,但其实现实情况并不
- 这个架构是目前我个人觉得比较稳妥并且最方便的架构,易于多数人接受: 前端的lvs和squid,按照安装方法,把epol
- 如果你想禁止Google收录你的网页内容,你可以在网页代码里使用Google支持的系列Meta标签。但如果你有些网页希望文字内容被收录,但又
- 1 背景知识1.1 什么是XSS攻击XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascadin
- 借上周推一把论坛举办《高手坐堂第一期宋建明:软文与网站优化的那点事》的机会,彭宇诚针对如何利用软文推广产品的问题与本期的嘉宾宋建明进行了一些
- 一、什么是Google Sitelinks?Google Sitelinks也叫站内链接,这种方式的索引结果在Google搜索引擎上已经存在
- 日前,因QQ互联帐号接入政策限制在新浪微博上出现了广泛的争议,多个知名社区负责人表示无法申请QQ互联接入服务,随后有消息称Discuz将推独
- 精美商城模板,不容错过V5MALL多用户商城系统是一款秉承威博多用户版优秀品质,运营于高速稳定的微软。完全具备搭建超大型网络购物多用户网上商
- ASP中数据库的安全是一个很严肃的问题。很多代码的编写者意识到了这类问题,并且小心翼翼地对他们认为有问题的地方做了补救,但常见的情况是要么没
- 我最近一直在阅读一些关于Google Adsense技巧的论坛和博客,我觉得有必要将这些技巧都集中整理在一个地方,同时我也写了几个我自己的诀
- “企业的成功在于其创造力、想象力、大胆的尝试及富于幻想的激情”,这是吉姆·柯林
- PR值(Page Rank)是较早被互联网从业人员熟知的谷歌算法之一,它的诞生甚至可以说成就了谷歌在搜索引擎行业范围内的霸主地位。随着互联网
- 在新浪所有的产品线当中,还没有任何一款产品在诞生初期就能让如此多公司高层“亲力亲为”。或许是得益于此
- 服务器系统是WINDOWS2003, 启用了防火墙, 并开放了21号端口, 但是用ServU连接不上.....解决方法是在防火墙配置界面增加