維護(hù)與安全
防SQL注入代碼(ASP版), 網(wǎng)站防SQL注入,網(wǎng)站防跨站攻擊
信息來源:轉(zhuǎn)載 互聯(lián)網(wǎng)  /  發(fā)布時(shí)間:2019-3-19  /  瀏覽數(shù)量:

防SQL注入代碼(ASP版)

<% 
Dim Fy_Url,Fy_a,Fy_x,Fy_Cs(),Fy_Cl,Fy_Ts,Fy_Zx 
'---定義部份 頭------ 
Fy_Cl = 1 '處理方式:1=提示信息,2=轉(zhuǎn)向頁面,3=先提示再轉(zhuǎn)向 
Fy_Zx = "index.Asp" '出錯(cuò)時(shí)轉(zhuǎn)向的頁面 
'---定義部份 尾------ 

On Error Resume Next 
Fy_Url=Request.ServerVariables("QUERY_STRING") 
Fy_a=split(Fy_Url,"&") 
redim Fy_Cs(ubound(Fy_a)) 
On Error Resume Next 
for Fy_x=0 to ubound(Fy_a) 
Fy_Cs(Fy_x) = left(Fy_a(Fy_x),instr(Fy_a(Fy_x),"=")-1) 
Next 
For Fy_x=0 to ubound(Fy_Cs) 
If Fy_Cs(Fy_x)<>"" Then 
If Instr(LCase(Request(Fy_Cs(Fy_x))),"'")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"select")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"update")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"chr")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"delete%20from")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),";")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"insert")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"mid")<>0 Or Instr(LCase(Request(Fy_Cs(Fy_x))),"master.")<>0 Then 
Select Case Fy_Cl 
Case "1" 
Response.Write "<Script Language=JavaScript>alert(' 出現(xiàn)錯(cuò)誤!參數(shù) "&Fy_Cs(Fy_x)&" 的值中包含非法字符串!\n\n 請(qǐng)不要在參數(shù)中出現(xiàn):and,select,update,insert,delete,chr 等非法字符!\n\n我已經(jīng)設(shè)置了不能SQL注入,請(qǐng)不要對(duì)我進(jìn)行非法手段!');window.close();</Script>" 
Case "2" 
Response.Write "<Script Language=JavaScript>location.href='"&Fy_Zx&"'</Script>" 
Case "3" 
Response.Write "<Script Language=JavaScript>alert(' 出現(xiàn)錯(cuò)誤!參數(shù) "&Fy_Cs(Fy_x)&"的值中包含非法字符串!\n\n 請(qǐng)不要在參數(shù)中出現(xiàn):,and,select,update,insert,delete,chr 等非法字符!\n\n設(shè)計(jì)了門,非法侵入請(qǐng)離開,謝謝!');location.href='"&Fy_Zx&"';</Script>" 
End Select 
Response.End 
End If 
End If 
Next 
%>

以上代碼為較多網(wǎng)友所用,從使用的感言來看,效果顯著。

Dim Query_Badword,Form_Badword,Err_Message,Err_Web,form_name 

'------定義部份 頭---------------------------------------------------------------------- 

Err_Message = 1 '處理方式:1=提示信息,2=轉(zhuǎn)向頁面,3=先提示再轉(zhuǎn)向 
Err_Web = "Err.Asp" '出錯(cuò)時(shí)轉(zhuǎn)向的頁面 
Query_Badword="'‖and‖select‖update‖chr‖delete‖%20from‖;‖insert‖mid‖master.‖set‖chr(37)‖=" 
'在這部份定義get非法參數(shù),使用"‖"號(hào)間隔 
Form_Badword="'‖%‖&‖*‖#‖@‖=‖select‖and‖set‖delete" '在這部份定義post非法參數(shù),使用"‖"號(hào)間隔 

'------定義部份 尾----------------------------------------------------------------------- 

On Error Resume Next 
'----- 對(duì) get query 值 的過濾. 
if request.QueryString<>"" then 
Chk_badword=split(Query_Badword,"‖") 
FOR EACH Query_form_name IN Request.QueryString 
for i=0 to ubound(Chk_badword) 
If Instr(LCase(request.QueryString(Query_form_name)),Chk_badword(i))<>0 Then 
Select Case Err_Message 
Case "1" 
Response.Write "<Script Language=JavaScript>alert('傳參錯(cuò)誤!參數(shù) "&form_name&" 的值中包含非法字符串!\n\n請(qǐng)不要在參數(shù)中出現(xiàn):and update delete ; insert mid master 等非法字符!');window.close();</Script>" 
Case "2" 
Response.Write "<Script Language=JavaScript>location.href='"&Err_Web&"'</Script>" 
Case "3" 
Response.Write "<Script Language=JavaScript>alert('傳參錯(cuò)誤!參數(shù) "&form_name&"的值中包含非法字符串!\n\n請(qǐng)不要在參數(shù)中出現(xiàn):and update delete ; insert mid master 等非法字符!');location.href='"&Err_Web&"';</Script>" 
End Select 
Response.End 
End If 
NEXT 
NEXT 
End if 

'-----對(duì) post 表 單值的過濾. 
if request.form<>"" then 
Chk_badword=split(Form_Badword,"‖") 
FOR EACH form_name IN Request.Form 
for i=0 to ubound(Chk_badword) 
If Instr(LCase(request.form(form_name)),Chk_badword(i))<>0 Then 
Select Case Err_Message 
Case "1" 
Response.Write "<Script Language=JavaScript>alert('出錯(cuò)了!表單 "&form_name&" 的值中包含非法字符串!\n\n請(qǐng)不要在表單中出現(xiàn): % & * # ( ) 等非法字符!');window.close();</Script>" 
Case "2" 
Response.Write "<Script Language=JavaScript>location.href='"&Err_Web&"'</Script>" 
Case "3" 
Response.Write "<Script Language=JavaScript>alert('出錯(cuò)了!參數(shù) "&form_name&"的值中包含非法字符串!\n\n請(qǐng)不要在表單中出現(xiàn): % & * # ( ) 等非法字符!');location.href='"&Err_Web&"';</Script>" 
End Select 
Response.End 
End If 
NEXT 
NEXT 
end if

以上是另一種版本。

<%
Dim GetFlag Rem(提交方式)
Dim ErrorSql Rem(非法字符) 
Dim RequestKey Rem(提交數(shù)據(jù))
Dim ForI Rem(循環(huán)標(biāo)記)
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(每個(gè)敏感字符或者詞語請(qǐng)使用半角 "~" 格開)
ErrorSql = split(ErrorSql,"~")
If Request.ServerVariables("REQUEST_METHOD")="GET" Then
GetFlag=True
Else
GetFlag=False
End If
If GetFlag Then
For Each RequestKey In Request.QueryString
For ForI=0 To Ubound(ErrorSql)
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then
response.write "<script>alert(""警告:\n請(qǐng)不要做任何嘗試"");location.href=""index.asp"";</script>"
Response.End
End If
Next
Next 
Else
For Each RequestKey In Request.Form
For ForI=0 To Ubound(ErrorSql)
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then
response.write "<script>alert(""警告:\n請(qǐng)不要做任何嘗試"");location.href=""index.asp"";</script>"
Response.End
End If
Next
Next
End If
%>

1、將上述代碼放入conn文件中即可!

2、將上述代碼保存為safe.asp,在conn文件中引入也可!





上一條: xss利用和檢測(cè)平臺(tái) 防XSS跨網(wǎng)站攻擊
下一條: 網(wǎng)站被黑還要交罰款?網(wǎng)絡(luò)安全法:你們可能已經(jīng)違法了
相關(guān)熱門資訊  News
一二三客戶案例

  123 NETWORK

合作共贏,助您打開網(wǎng)絡(luò)營(yíng)銷財(cái)富之間!

www.88aikan.com

聯(lián)系方式

地址:湖南省長(zhǎng)沙市天心區(qū)韶山南路248號(hào)南園503室

電話:13637482004    0731-88571521

網(wǎng)址:http://www.88aikan.com/

郵箱:123@123007.com

微信咨詢

掃一掃進(jìn)移動(dòng)端

版權(quán)所有 © 長(zhǎng)沙一二三網(wǎng)絡(luò)技術(shù)有限公司    統(tǒng)一社會(huì)信用代碼:91430103MACCH7984M    網(wǎng)站ICP備案號(hào):湘ICP備2023006748號(hào)     湘公網(wǎng)安備 43010302001803號(hào)        
柠檬福利精品视频导航| 成人啪精品视频免费网站| 福利姬在线精品观看| 91精品一区二区| 国产亚洲精品久久久久秋霞 | 国产伦精品一区二区三区四区| 久久亚洲伊人中字综合精品| 凹凸69堂国产成人精品视频| 麻豆精品在线播放| 久久久国产乱子伦精品| 国产精品亚洲高清一区二区| 国产成人精品久久久久| 久久精品免视看国产成人| 国产精品国产三级国产| 国产精品扒开腿做爽爽的视频| 97麻豆精品国产自产在线观看| 久久久久久一品道精品免费看| 国产麻豆精品入口在线观看| 尤物在线观看精品国产福利片 | 久久久久久人妻一区精品| 惠民福利中文字幕人妻无码乱精品| 亚洲av午夜国产精品无码中文字| 亚洲国产成人久久精品动漫| 中国国产成人精品久久| 无码精品久久一区二区三区| 亚洲精品无码aⅴ中文字幕蜜桃| 精品无码国产一区二区三区AV| 99精品国产99久久久久久97| 亚洲精品久久久www| 国产剧情精品在线| 成人H动漫精品一区二区| 95在线观看精品视频| 97精品人人妻人人| 午夜影视日本亚洲欧洲精品一区| 国产精品V亚洲精品V日韩精品| 国产嫩草影院精品免费网址| 国内大量揄拍人妻精品視頻| 久久夜色精品国产噜噜亚洲a| 国产成人精品久久二区二区| 在线观看日韩精品| 3d动漫精品啪啪一区二区中文 |