近段时间由于修改一个ASP程序(有SQL注入漏洞),在网上找了很多相关的一些防范办法,都不近人意,所以我将现在网上的一些方法综合改良了一下,写出这个ASP函数,供大家参考。

  1. Function SafeRequest(ParaName)  
  2. Dim ParaValue  
  3. ParaValue=Request(ParaName) 
  4. if IsNumeric(ParaValue) = True then 
  5. SafeRequest=ParaValue 
  6. exit Function 
  7. elseIf Instr(LCase(ParaValue),"select ") > 0 or Instr(LCase(ParaValue),"insert ") > 0 or Instr(LCase(ParaValue),"delete from") > 0 or Instr(LCase(ParaValue),"count(") > 0 or Instr(LCase(ParaValue),"drop table") > 0 or Instr(LCase(ParaValue),"update ") > 0 or Instr(LCase(ParaValue),"truncate ") > 0 or Instr(LCase(ParaValue),"asc(") > 0 or Instr(LCase(ParaValue),"mid(") > 0 or Instr(LCase(ParaValue),"char(") > 0 or Instr(LCase(ParaValue),"xp_cmdshell") > 0 or Instr(LCase(ParaValue),"exec master") > 0 or Instr(LCase(ParaValue),"net localgroup administrators") > 0  or Instr(LCase(ParaValue)," and ") > 0 or Instr(LCase(ParaValue),"net user") > 0 or Instr(LCase(ParaValue)," or ") > 0 then 
  8.  Response.Write "<script language='javascript'>" 
  9.  Response.Write "alert('非法的请求!');"  '发现SQL注入攻击提示信息 
  10.  Response.Write "location.href='http://www.wz114.com/';"  '发现SQL注入攻击转跳网址 
  11.  Response.Write "<script>" 
  12.  Response.end 
  13. else 
  14. SafeRequest=ParaValue 
  15. End If 
  16. End function 


使用SafeRequest函数替换你的Reques

本日志由 胡子 于 2008-03-29 21:20:14 发表到 技术文章 中,目前已经被浏览 1185 次,评论 0 次;

作者添加了以下标签: 攻击sql防范数据库