基本信息
- 項(xiàng)目名稱:
- SQL注入攻擊與防御工具的研究與現(xiàn)實(shí)
- 來(lái)源:
- 第十二屆“挑戰(zhàn)杯”省賽作品
- 小類:
- 信息技術(shù)
- 簡(jiǎn)介:
- SQL注入攻擊是近年來(lái)網(wǎng)絡(luò)中常見的一種針對(duì)網(wǎng)站系統(tǒng)的攻擊方式,由于這種攻擊方式易于掌握,危害極大,已對(duì)B/S模式的Web系統(tǒng)構(gòu)成了巨大的威脅。 本論文詳細(xì)闡述了SQL注入攻擊的理論基礎(chǔ),網(wǎng)站和攻擊工具的設(shè)計(jì)思想、體系結(jié)構(gòu)以及主要功能模塊的實(shí)現(xiàn)。
- 詳細(xì)介紹:
- 目前各大企業(yè),學(xué)校和政府機(jī)關(guān)都擁有了自己的網(wǎng)站,通過(guò)自己的網(wǎng)站發(fā)布各類信息,實(shí)現(xiàn)了企業(yè)信息化、電子政務(wù)、電子商務(wù)等各種Web業(yè)務(wù)。通常網(wǎng)站的建設(shè)使用的是ASP,PHP,JSP等腳本編程語(yǔ)言,以實(shí)現(xiàn)各種動(dòng)態(tài)效果。據(jù)資料統(tǒng)計(jì),國(guó)內(nèi)的網(wǎng)站用ASP結(jié)合Access或SQL Server數(shù)據(jù)庫(kù)的大約占70%以上,使用PHP結(jié)合MySQL數(shù)據(jù)庫(kù)的占20%,其他的不足10%。 Web業(yè)務(wù)的迅速發(fā)展引起了黑客們的強(qiáng)烈關(guān)注,他們將注意力從以往對(duì)傳統(tǒng)網(wǎng)絡(luò)服務(wù)器的攻擊逐步轉(zhuǎn)移到了對(duì)Web業(yè)務(wù)的攻擊上。根據(jù)Gartner這家全球最具權(quán)威的IT研究與顧問(wèn)咨詢公司的調(diào)查,信息安全攻擊有75%都是發(fā)生在Web應(yīng)用層而非網(wǎng)絡(luò)層面上。同時(shí),數(shù)據(jù)也顯示,2/3的Web站點(diǎn)都相當(dāng)脆弱,易受攻擊。 SQL注入攻擊是威脅Web安全的核心問(wèn)題。這種攻擊方式具有以下一些特點(diǎn): 1.掌握起來(lái)難度較小,攻擊者只需具備基本的腳本編程基礎(chǔ)和數(shù)據(jù)庫(kù)理論即可實(shí)行攻擊。 2.變化多樣,有經(jīng)驗(yàn)的攻擊者會(huì)手動(dòng)調(diào)整攻擊參數(shù),致使攻擊數(shù)據(jù)的變種是不可枚舉的,這導(dǎo)致傳統(tǒng)的特征匹配檢測(cè)方法僅能識(shí)別相當(dāng)少的攻擊,難以防范。 3.攻擊過(guò)程簡(jiǎn)單,攻擊者可以使用網(wǎng)上流傳的各種現(xiàn)有的攻擊工具發(fā)動(dòng)針對(duì)特定目標(biāo)的大量有效攻擊,配合手動(dòng)攻擊方式,致使這種攻擊相當(dāng)容易成功。 4.隱蔽性,這種攻擊方式都是從正常的WWW端口訪問(wèn),表面上看起來(lái)與正常的Web頁(yè)面訪問(wèn)基本沒有區(qū)別,所以目前市面上的防火墻都不會(huì)對(duì)SQL注入發(fā)出警報(bào)。如果管理員沒有查看IIS日志的習(xí)慣,可能被入侵了很長(zhǎng)時(shí)間都不會(huì)發(fā)覺。 5.危害大,由于Web編程自身的缺陷以及具有安全編程能力的開發(fā)人員少之又少,大多數(shù)Web業(yè)務(wù)系統(tǒng)均具有被注入攻擊的可能。而攻擊者一旦攻擊成功,就可以控制整個(gè)業(yè)務(wù)系統(tǒng),對(duì)數(shù)據(jù)做出任何修改,甚至可以通過(guò)搭配其他攻擊手段拿到整個(gè)服務(wù)器的最高權(quán)限,破壞力達(dá)到極致。 在防御方面,從根本上講,最有效的防御SQL注入攻擊的方法是加強(qiáng)Web系統(tǒng)的代碼安全性,對(duì)所有傳回?cái)?shù)據(jù)庫(kù)的訪問(wèn)語(yǔ)句加以關(guān)鍵詞過(guò)濾,限制那些敏感的可能造成注入的代碼訪問(wèn)數(shù)據(jù)庫(kù)。但這種防御方法將會(huì)使得程序員需要重寫已有的Web業(yè)務(wù)系統(tǒng)代碼,當(dāng)系統(tǒng)比較龐大的時(shí)候,這種工作量將會(huì)十分巨大。各大安全廠商均推出了自己的IPS(入侵防御系統(tǒng)),可以從很大程度上防御普通的SQL注入攻擊。但是IPS的價(jià)格并不是所有擁有Web業(yè)務(wù)的單位都可以承受的。因此,我們必須尋求一種理想的防御思路,這種思路必須滿足可以抵御SQL注入攻擊,工作量小,不影響Web系統(tǒng)結(jié)構(gòu)等要求。
作品專業(yè)信息
撰寫目的和基本思路
- 通常網(wǎng)站的建設(shè)使用的是ASP,PHP,JSP等腳本編程語(yǔ)言,以實(shí)現(xiàn)各種動(dòng)態(tài)效果。據(jù)資料統(tǒng)計(jì),國(guó)內(nèi)的網(wǎng)站用ASP結(jié)合Access或SQL Server數(shù)據(jù)庫(kù)的大約占70%以上,使用PHP結(jié)合MySQL數(shù)據(jù)庫(kù)的占20%,其他的不足10%。 信息安全攻擊有75%都是發(fā)生在Web應(yīng)用層而非網(wǎng)絡(luò)層面上。同時(shí),數(shù)據(jù)也顯示,2/3的Web站點(diǎn)都相當(dāng)脆弱,易受攻擊。
科學(xué)性、先進(jìn)性及獨(dú)特之處
- 隨著B/S模式應(yīng)用開發(fā)技術(shù)的不斷發(fā)展,各種網(wǎng)絡(luò)應(yīng)用給人們的日常工作和生活帶來(lái)了極大的便利。但與此同時(shí)各種網(wǎng)絡(luò)安全問(wèn)題也不容忽視。由于SQL注入攻擊實(shí)現(xiàn)簡(jiǎn)單,而且難于檢測(cè),已經(jīng)成為目前最常見的針對(duì)網(wǎng)站系統(tǒng)的攻擊形式之一。因此,學(xué)習(xí)SQL注入攻擊的原理,了解已有的攻擊方法并掌握各種有效的防范方法,可以更好地確保網(wǎng)站的安全。
應(yīng)用價(jià)值和現(xiàn)實(shí)意義
- 學(xué)習(xí)SQL注入攻擊的原理,了解已有的攻擊方法并掌握各種有效的防范方法,可以更好地確保網(wǎng)站的安全。
學(xué)術(shù)論文摘要
- 在已知一個(gè)注入點(diǎn)后,攻擊者可以通過(guò)使用這個(gè)注入點(diǎn)來(lái)判斷出后臺(tái)使用的數(shù)據(jù)庫(kù)類型。最簡(jiǎn)便的辦法是,在已有注入點(diǎn)URL的最后添加一個(gè)單引號(hào)“’”。這樣構(gòu)造的URL必然無(wú)法正確執(zhí)行,服務(wù)器會(huì)返回一個(gè)錯(cuò)誤信息。從錯(cuò)誤信息中我們可以判斷出數(shù)據(jù)庫(kù)的類型。當(dāng)服務(wù)器返回的錯(cuò)誤信息中包含有“Microsoft JET Database Engine 錯(cuò)誤”這樣的提示時(shí),可以判斷出后臺(tái)使用的是ACCESS數(shù)據(jù)庫(kù)。當(dāng)服務(wù)器返回的錯(cuò)誤信息中包含有“Microsoft OLE DB Provider for ODBC Drivers”這樣的提示時(shí),可以判斷出后臺(tái)使用的是Microsoft SQL Server數(shù)據(jù)庫(kù)。
獲獎(jiǎng)情況
- 無(wú)
鑒定結(jié)果
- 隨著技術(shù)的不斷發(fā)展,SQL注入攻擊也呈現(xiàn)了一些新的技術(shù)特點(diǎn)??梢悦鞔_的是,這種攻擊方式不會(huì)被淘汰,而會(huì)隨著技術(shù)的進(jìn)步而不斷發(fā)展,其威力和破壞性也會(huì)逐步提高。我們只有不斷地進(jìn)行研究,才能應(yīng)對(duì)新的挑戰(zhàn)。
參考文獻(xiàn)
- [1] 鄭阿奇.ASP程序設(shè)計(jì)教程[M]. 北京:機(jī)械工業(yè)出版社,2005.09 [2] 王振.ASP動(dòng)態(tài)網(wǎng)站建設(shè)[M]. 北京:國(guó)防工業(yè)出版社,2002.06 [3] 劉好增,張坤.ASP動(dòng)態(tài)網(wǎng)站開發(fā)實(shí)踐教程[M]. 北京:清華大學(xué)出版社,2007.01 [4] 方睿,刁仁宏,吳四九.網(wǎng)絡(luò)數(shù)據(jù)庫(kù)原理及應(yīng)用[M]. 成都:四川大學(xué)出版社,2005.08 [5] 崔勇.Visual C++ .NET實(shí)用案例教程[M].北京:清華大學(xué)出版社,2003.08 [6] 黃承安.Visual C++ .NET經(jīng)典開發(fā)案例[M].北京:中國(guó)鐵道出版社,2003.01 [7] 李博軒.Visual C++ .NET網(wǎng)絡(luò)應(yīng)用開發(fā)技術(shù)[M].北京:國(guó)防工業(yè)出版社,2002.10
同類課題研究水平概述
- 國(guó)內(nèi)的網(wǎng)站用ASP結(jié)合Access或SQL Server數(shù)據(jù)庫(kù)的大約占70%以上,使用PHP結(jié)合MySQL數(shù)據(jù)庫(kù)的占20%,其他的不足10%。 Web業(yè)務(wù)的迅速發(fā)展引起了黑客們的強(qiáng)烈關(guān)注,他們將注意力從以往對(duì)傳統(tǒng)網(wǎng)絡(luò)服務(wù)器的攻擊逐步轉(zhuǎn)移到了對(duì)Web業(yè)務(wù)的攻擊上。根據(jù)Gartner這家全球最具權(quán)威的IT研究與顧問(wèn)咨詢公司的調(diào)查,信息安全攻擊有75%都是發(fā)生在Web應(yīng)用層而非網(wǎng)絡(luò)層面上。同時(shí),數(shù)據(jù)也顯示,2/3的Web站點(diǎn)都相當(dāng)脆弱,易受攻擊。