狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

ASP、Request對(duì)象與SQL注入

admin
2011年2月15日 23:13 本文熱度 2691
Request對(duì)象探討

Request是ASP里的一個(gè)內(nèi)部對(duì)象,用于獲取HTTP請(qǐng)求中傳遞的任意信息(如頭信息、表單數(shù)據(jù)、cookies等等)。所以這是在ASP里面最常用的內(nèi)部對(duì)象,常用來(lái)獲得GET方式提交的數(shù)據(jù)(Request.QueryString)、表單POST提交的數(shù)據(jù)(Request. Form)和Cookies(Request.Cookies)。

我們用Request對(duì)象可以指定獲取某個(gè)特定方式提交的數(shù)據(jù)。比如我們用這段代碼獲得通過(guò)POST提交的數(shù)據(jù)lake2的值:request.Form("lake2");而request.queryString("CSDN")獲得GET方式提交的CSDN的值。

對(duì)于獲取HTTP數(shù)據(jù),ASP還給了我們一個(gè)更簡(jiǎn)單的方法:request(key),即直接使用request而不指定數(shù)據(jù)集合。此時(shí)ASP會(huì)依次在QueryString、From、Cookies、ServerVariables、ClientCertificate、Browser中檢查匹配的數(shù)據(jù),若發(fā)現(xiàn)則返回?cái)?shù)據(jù)。

上面6個(gè)集合中,ServerVariables、ClientCertificate和Browser的變量是固定了的;而QueryString、From、Cookies的變量可以任意指定。想不到Cookies可以拿來(lái)傳遞任意數(shù)據(jù),以前倒沒(méi)有注意。

OK,test一下先。在本地web目錄新建test.asp文件,內(nèi)容為:<%=request("b")%>

Step 1:直接訪問(wèn)http://127.0.0.1/test.asp?b=la<b>k</b>e2,瀏覽器顯示lake2

Step 2:構(gòu)造表單提交結(jié)果也如step 1

Step 3: 構(gòu)造表單,GET傳遞b值為"He",同時(shí)POST的b為"She",瀏覽器顯示為"He"。呵呵,按前面的排序有個(gè)優(yōu)先級(jí)的

Step 4:Telnet到本地80端口,構(gòu)造HTTP請(qǐng)求如下(注意Cookies哦):

GET /test.asp HTTP/1.1
Accept: */*
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; TencentTraveler ; .NET CLR 1.1.4322)
Host: 127.0.0.1
Connection: Keep-Alive
Cookie: b=lake2 , Success !

在一堆服務(wù)器響應(yīng)數(shù)據(jù)之后,我們看到了"lake2,Success!"(Q:為什么空格不見了?A:因?yàn)槲磳?duì)提交的空格進(jìn)行URL編碼)。

到此,我們已理論和實(shí)際相結(jié)合的證明了Cookies可以拿來(lái)傳遞數(shù)據(jù)。

Request對(duì)象與SQL注入

現(xiàn)在把話題轉(zhuǎn)一下,我們來(lái)說(shuō)說(shuō)SQL Injection。

SQL注入攻擊是由于Web應(yīng)用程序沒(méi)有過(guò)濾用戶所提交的有害數(shù)據(jù)而導(dǎo)致危害服務(wù)器的一種攻擊手法。注意咯,這里涉及到提交數(shù)據(jù),自然要跟剛才說(shuō)了一大堆的request聯(lián)系上啊。

歸根結(jié)底,ASP下面的SQL注入都是由于request的參數(shù)沒(méi)有過(guò)濾或者過(guò)濾不嚴(yán)。當(dāng)然,程序員不是安全專家,他們可能不知道如何過(guò)濾。

于是,網(wǎng)絡(luò)上就出現(xiàn)了通用的防注入ASP程序——"SQL通用防注入系統(tǒng)"。經(jīng)過(guò)一段時(shí)間和幾個(gè)作者的改進(jìn),該程序已經(jīng)比較完善了,基本上可以攔截SQL注入(但是,個(gè)人認(rèn)為它的過(guò)濾方式太嚴(yán),造成許多不便)。"SQL通用防注入系統(tǒng)"是個(gè)asp文件,只需在有參數(shù)提交的文件中include它就是了。程序過(guò)濾的原理是遍歷GET和POST參數(shù)的值,發(fā)現(xiàn)SQL注入關(guān)鍵字(如and、select)就停止正常文件執(zhí)行。

嘿嘿,它遍歷GET和POST,也就是Request對(duì)象的QueryString和From集合,忽略了Cookies。

現(xiàn)在,我們假設(shè)有一個(gè)SQL Injection漏洞百出的ASP程序,具備網(wǎng)絡(luò)安全知識(shí)的管理員同學(xué)在網(wǎng)上下載并使用了傳說(shuō)中的"SQL通用防注入系統(tǒng)",但是很不幸,ASP程序中所有獲取參數(shù)都是使用的request(key)……(呵呵,眼看著一個(gè)個(gè)封鎖被突破,那是很enjoy的事情^_^)

這里僅僅是假設(shè)而已,至于實(shí)際中到底有多少ASP程序員喜歡用request(key) 來(lái)獲取數(shù)據(jù)就不得而知咯。

該文章在 2011/2/15 23:13:01 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved