防范SQL注入攻击的新办法
2007-05-08 09:25:29 来源:WEB开发网核心提示:近段时间由于修改一个ASP程序(有SQL注入漏洞),在网上找了很多相关的一些防范办法,防范SQL注入攻击的新办法,都不近人意,所以我将现在网上的一些方法综合改良了一下,写出这个ASP函数,供大家参考
近段时间由于修改一个ASP程序(有SQL注入漏洞),在网上找了很多相关的一些防范办法,都不近人意,所以我将现在网上的一些方法综合改良了一下,写出这个ASP函数,供大家参考。
以下是引用片段:
FunctionSafeRequest(ParaName)
DimParaValue
ParaValue=Request(ParaName)
ifIsNumeric(ParaValue)=Truethen
SafeRequest=ParaValue
exitFunction
elseIfInstr(LCase(ParaValue),"select")>0orInstr(LCase(ParaValue),"insert")>0orInstr(LCase(ParaValue),"deletefrom")>0orInstr(LCase(ParaValue),"count(")>0orInstr(LCase(ParaValue),"droptable")>0orInstr(LCase(ParaValue),"update")>0orInstr(LCase(ParaValue),"truncate")>0orInstr(LCase(ParaValue),"asc(")>0orInstr(LCase(ParaValue),"mid(")>0orInstr(LCase(ParaValue),"char(")>0orInstr(LCase(ParaValue),"xp_cmdshell")>0orInstr(LCase(ParaValue),"execmaster")>0orInstr(LCase(ParaValue),"netlocalgroupadministrators")>0 orInstr(LCase(ParaValue),"and")>0orInstr(LCase(ParaValue),"netuser")>0orInstr(LCase(ParaValue),"or")>0then
Response.Write"<scriptlanguage='javascript'>"
Response.Write"alert('非法的请求!');" '发现SQL注入攻击提示信息
Response.Write"location.href='http://dev.yesky.com/';" '发现SQL注入攻击转跳网址
Response.Write"<script>"
Response.end
else
SafeRequest=ParaValue
EndIf
Endfunction
使用SafeRequest函数替换你的Request
- ››SQL Server 2008 R2 下如何清理数据库日志文件
- ››sqlite 存取中文的解决方法
- ››SQL2005、2008、2000 清空删除日志
- ››SQL Server 2005和SQL Server 2000数据的相互导入...
- ››sql server 2008 在安装了活动目录以后无法启动服...
- ››sqlserver 每30分自动生成一次
- ››sqlite 数据库 对 BOOL型 数据的插入处理正确用法...
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
赞助商链接