程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 防范SQL注入攻擊的新辦法:新手入門

防范SQL注入攻擊的新辦法:新手入門

編輯:關於SqlServer

近段時間由於修改一個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://dev.yesky.com/';"  '發現SQL注入攻擊轉跳網址
 Response.Write "<script>"
 Response.end
else
SafeRequest=ParaValue
End If
End function

使用SafeRequest函數替換你的Request

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved