六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

在ASP中過(guò)濾用戶輸入 提高安全

[摘要]安全對(duì)于所有應(yīng)用程序來(lái)說(shuō)都是十分重要的。一個(gè)簡(jiǎn)單應(yīng)用程序里的某個(gè)失誤都會(huì)造成對(duì)數(shù)據(jù)庫(kù)或者其他企業(yè)資源未經(jīng)授權(quán)的訪問(wèn),因此安全尤其重要。一種常用的攻擊方法是將命令嵌入到用戶的回應(yīng)里,而從用戶輸入里過(guò)濾...

安全對(duì)于所有應(yīng)用程序來(lái)說(shuō)都是十分重要的。一個(gè)簡(jiǎn)單應(yīng)用程序里的某個(gè)失誤都會(huì)造成對(duì)數(shù)據(jù)庫(kù)或者其他企業(yè)資源未經(jīng)授權(quán)的訪問(wèn),因此安全尤其重要。一種常用的攻擊方法是將命令嵌入到用戶的回應(yīng)里,而從用戶輸入里過(guò)濾掉這些非法的字符就能夠防止這種攻擊。

 
允許用戶輸入非法的字符會(huì)增加用戶導(dǎo)致問(wèn)題的機(jī)會(huì)。例如,很多應(yīng)用程序都能夠接受用戶在SQL命令里增加的WHERE子句。惡意用戶會(huì)通過(guò)向其輸入的信息里增加額外命令的方法,來(lái)執(zhí)行數(shù)據(jù)庫(kù)服務(wù)器上的代碼。例如,他們不是輸入“Smith”,將其作為檢索字符串,而是輸入“Smith'; EXEC master..xp_cmdshell 'dir *.exe”。

下面這段代碼是設(shè)計(jì)用來(lái)處理從服務(wù)器返回的多個(gè)Recordset的。用戶的輸入會(huì)包含一個(gè)額外的、未預(yù)料的的執(zhí)行命令。當(dāng)NextRecordset方法被調(diào)用的時(shí)候,潛藏的惡意代碼就會(huì)被執(zhí)行。

這一攻擊可以通過(guò)過(guò)濾掉用戶輸入信息中的非法字符(在注釋段里)來(lái)避免。這樣做了之后,用戶的輸入仍然被允許處理,但是清除掉了所有的非法字符。

Dim rst As Recordset
Dim rst2 As Recordset
Dim strUserInput As String

strUserInput = "Smith';EXEC master..xp_cmdshell 'dir *.exe"

'Filter input for invalid characters
strUserInput = Replace(strUserInput, "<", vbNullString)
strUserInput = Replace(strUserInput, ">", vbNullString)
strUserInput = Replace(strUserInput, """", vbNullString)
strUserInput = Replace(strUserInput, "'", vbNullString)
strUserInput = Replace(strUserInput, "%", vbNullString)
strUserInput = Replace(strUserInput, ";", vbNullString)
strUserInput = Replace(strUserInput, "(", vbNullString)
strUserInput = Replace(strUserInput, ")", vbNullString)
strUserInput = Replace(strUserInput, "&", vbNullString)
strUserInput = Replace(strUserInput, "+", vbNullString)
strUserInput = Replace(strUserInput, "-", vbNullString)

Set rst = New Recordset
rst.ActiveConnection = "PROVIDER=SQLOLEDB;DATA SOURCE=SQLServer;" & _
                       "Initial Catalog=pubs;Integrated Security=SSPI"
rst.Open "Select * from authors where au_lname = '" & strUserInput & _
         "'", , adOpenStatic
'Do something with recordset 1

Set rst2 = rst.NextRecordset()
'Do something with recordset 2

在用戶的輸入中嵌入命令也是攻擊ASP Web應(yīng)用程序的一種常見(jiàn)手法,也叫做跨網(wǎng)站腳本攻擊。過(guò)濾輸入的內(nèi)容并使用Server.HTMLEncode和Server.URLEncode這兩個(gè)方法會(huì)有助于防止你ASP應(yīng)用程序里這類(lèi)問(wèn)題的發(fā)生。


 




主站蜘蛛池模板: 欧美午夜性春猛xxxx | 青青视频免费在线观看 | 中文字幕日韩视频 | 日韩精品一区二区三区 在线观看 | 亚洲免费在线播放 | 伊人免费在线观看 | 亚洲乱码国产一区网址 | 日本在线看小视频网址 | 日韩午夜伦| 日本vs欧美一区二区三区 | 午夜视频播放 | 天天久久狠狠色综合 | 亚洲mv在线观看 | 香蕉成人福利片视频在线下载 | 日韩欧美一区二区不卡看片 | 色网站观看 | 亚洲高清视频免费 | 天天综合久久久网 | 一级毛片免费视频 | 亚洲成a人v欧美综合天堂麻豆 | 中日韩一线二线三线视频 | 亚洲wwwwww| 午夜视频在线免费 | 又粗又黄又猛又爽大片app | 日本欧美中文字幕 | 色18姝姝 | 色香欲综合成人免费视频 | 婷婷激情小说网 | 日韩欧美国产另类 | 中文字幕一精品亚洲无线一区 | 视频一区在线 | 日本色资源 | 日本欧美高清 | 天天插日日插 | 青草青青视频 | 天天看片天天爽 | 亚洲欧美日韩精品永久在线 | 三级在线免费观看 | 一级黄色片免费播放 | 色姣姣狠狠撩综合网 | 亚洲另类电击调教在线观看 |