欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【防范SQL注入攻击的新办法】,下面是详细的分享!
防范SQL注入攻击的新办法
近段时间由于修改一个ASP程序(有SQL注入漏洞),在网上找了很多相关的一些防范办法,都不近人意,所以我将现在网上的一些方法综合改良了一下,写出这个ASP函数,供大家参考。
以下是引用片段:
Function SafeRequest(ParaName)
Dim ParaValue
ParaValue=Request(ParaName)
if IsNumeric(ParaValue)=True then
SafeRequest=ParaValue
exit Function
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
Response.Write "<script language='javascript'>"
Response.Write "alert('非法的请求!');" '发现SQL注入攻击提示信息
Response.Write "location.href='http://blog.knowsky.com/';" '发现SQL注入攻击转跳网址
Response.Write "<script>"
Response.end
else
SafeRequest=ParaValue
End If
End function
使用SafeRequest函数替换你的Request
请作者联系本站,及时附注您的姓名。联系邮箱:edu#chinaz.com(把#改为@)。
以上所分享的是关于防范SQL注入攻击的新办法,下面是编辑为你推荐的有价值的用户互动:
相关问题:如何防范SQL注入式攻击
答:一、 SQL注入攻击的简单示例。 statement := "SELECT * FROM Users WHERE Value= " + a_variable + " 上面这条语句是很普通的一条SQL语句,他主要实现的功能就是让用户输入一个员工编号然后查询处这个员工的信息。但是若这条语句被不法攻击者改... >>详细
相关问题:sql注入攻击怎么解决
答:百度百科: SQL注入攻击是你需要担心的事情,不管你用什么web编程技术,再说所有的web框架都需要担心这个的。你需要遵循几条非常基本的规则: 1)在构造动态SQL语句时,一定要使用类安全(type-safe)的参数加码机制。大多数的数据API,包括ADO... >>详细
相关问题:.NET中如何防范SQL注入式攻击
答:所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
