何小波
摘要:隨著互聯(lián)網(wǎng)應(yīng)用的增多,網(wǎng)絡(luò)安全問題也日益突出?!靶畔⒒潭仍礁?,國家安全、社會(huì)安全面臨的風(fēng)險(xiǎn)就越大。”在2008年3月5日召開的第十一屆全國人民代表大會(huì)上,信息安全等級(jí)保護(hù)制度的落實(shí)和實(shí)施再次成為兩會(huì)代表們建言的核心內(nèi)容。那么如何來保護(hù)網(wǎng)站不會(huì)遭到攻擊呢?隨著攻擊向應(yīng)用層發(fā)展,網(wǎng)絡(luò)中的WEB應(yīng)用部署面臨的安全問題必須通過一種全新設(shè)計(jì)的高性能防護(hù)應(yīng)用層攻擊的安全防護(hù)設(shè)備——WEB專用應(yīng)用防御系統(tǒng)來解決。它需要通過執(zhí)行應(yīng)用會(huì)話內(nèi)部的請(qǐng)求來處理應(yīng)用層,專門保護(hù)Web應(yīng)用通信流和所有相關(guān)的應(yīng)用資源免受利用Web協(xié)議發(fā)動(dòng)的攻擊。
關(guān)鍵詞:防護(hù);SQL注入;攻擊;應(yīng)用層;WEB專用應(yīng)用防御系統(tǒng)
中圖分類號(hào):TP393.08文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-3198(2009)04-0271-01
隨著互聯(lián)網(wǎng)應(yīng)用的增多,網(wǎng)絡(luò)安全問題也日益突出?!靶畔⒒潭仍礁?,國家安全、社會(huì)安全面臨的風(fēng)險(xiǎn)就越大?!痹?月5日召開的第十一屆全國人民代表大會(huì)上,信息安全等級(jí)保護(hù)制度的落實(shí)和實(shí)施再次成為兩會(huì)代表們建言的核心內(nèi)容。
CNNIC統(tǒng)計(jì)顯示的07年上半年TCP協(xié)議流量端口排名,HTTP80端口服務(wù)居第1位,占所有業(yè)務(wù)的23.97%,網(wǎng)頁服務(wù)網(wǎng)站已成為網(wǎng)上交流的最重要的手段。網(wǎng)站安全問題已成為網(wǎng)絡(luò)防護(hù)的主要問題。由于Web架構(gòu)在成本與應(yīng)用能力方面的優(yōu)勢(shì),越來越多的企業(yè)和機(jī)構(gòu)將應(yīng)用遷移到基于Web的架構(gòu)。Web應(yīng)用已經(jīng)從最初提供簡單的靜態(tài)內(nèi)容演變到提供豐富的動(dòng)態(tài)內(nèi)容,還可以同數(shù)據(jù)庫進(jìn)行通信以生成對(duì)用戶有用的內(nèi)容,這些都為攻擊提供了機(jī)會(huì)。
2007年上半年抽樣監(jiān)測(cè)發(fā)現(xiàn)我國大陸約有3百多萬個(gè)IP地址的主機(jī)被植入僵尸程序。2007年上半年,中國大陸被篡改網(wǎng)站的數(shù)量相比往年處于明顯上升趨勢(shì)。CNCERT/CC監(jiān)測(cè)到中國大陸被篡改網(wǎng)站總數(shù)達(dá)到28367個(gè),比去年全年增加了近16%。CNCERT/CC在2007年上半年抽樣監(jiān)測(cè)。境內(nèi)外控制者利用木馬控制端對(duì)主機(jī)進(jìn)行控制的事件中。木馬控制端IP地址總數(shù)為209949個(gè),被控制端IP地址總數(shù)為1863753個(gè)。
怎樣來構(gòu)建一個(gè)安全的Web應(yīng)用平臺(tái)呢?Web設(shè)計(jì)人員首先必須在Web應(yīng)用的每個(gè)層面精心設(shè)計(jì)安全性。但是,許多企業(yè)在設(shè)計(jì)Web應(yīng)用時(shí),Web設(shè)計(jì)人員并未全面考慮安全性。從實(shí)際的案例中,我們發(fā)現(xiàn)。大部分被攻擊的網(wǎng)站也都有防火墻防護(hù)。但由于黑客多采用SQL代碼注入等協(xié)議層的攻擊,以及采用大規(guī)模僵尸網(wǎng)絡(luò)DDOS攻擊,對(duì)于這類攻擊,防火墻則顯得無能為力。
其根本的原因是,傳統(tǒng)的防火墻設(shè)備對(duì)于應(yīng)用層的攻擊防范,作用十分有限。目前的大多防火墻都是工作在網(wǎng)絡(luò)層,通過對(duì)網(wǎng)絡(luò)層的數(shù)據(jù)過濾(基于TCP/IP報(bào)文頭部的ACL)實(shí)現(xiàn)訪問控制的功能I通過狀態(tài)包過濾防火墻可以保證內(nèi)部網(wǎng)絡(luò)不會(huì)被外部網(wǎng)絡(luò)非法接入,而應(yīng)用層攻擊的特征在網(wǎng)絡(luò)層次上是無法檢測(cè)出來的。
目前常見的Web攻擊主要分為三類;一是利用web服務(wù)器的漏洞進(jìn)行攻擊,如CGI緩沖區(qū)溢出、目錄遍歷漏洞等攻擊;二是利用網(wǎng)頁自身的安全漏洞進(jìn)行攻擊,如SQL注入、跨站腳本攻擊、Cookie假冒、認(rèn)證逃避、非法輸入、強(qiáng)制訪問、隱藏變量篡改等;三是利用僵尸網(wǎng)絡(luò)的分布式DOS攻擊,造成網(wǎng)站拒絕服務(wù)。利用網(wǎng)上隨處可見的攻擊軟件,攻擊者甚至不需要對(duì)網(wǎng)絡(luò)協(xié)議的深厚理解基礎(chǔ),即可完成諸如更換Web網(wǎng)站主頁、盜取管理員密碼、破壞整個(gè)網(wǎng)站數(shù)據(jù)等等攻擊。而這些攻擊過程中產(chǎn)生的網(wǎng)絡(luò)層數(shù)據(jù),和正常數(shù)據(jù)沒有什么區(qū)別。對(duì)于和后臺(tái)數(shù)據(jù)庫產(chǎn)生交互的網(wǎng)頁,如果沒有對(duì)用戶輸入數(shù)據(jù)的合法性進(jìn)行全面的判斷,用戶可以在可以提交正常數(shù)據(jù)的URL或者表單輸入框中提交一段精心構(gòu)造的數(shù)據(jù)庫查詢代碼,使后臺(tái)應(yīng)用執(zhí)行攻擊著的SQL代碼,攻擊者根據(jù)程序返回的結(jié)果,獲得某些他想得知的敏感數(shù)據(jù),如管理員密碼,保密商業(yè)資料等。
隨著網(wǎng)絡(luò)攻擊向應(yīng)用層發(fā)展,網(wǎng)絡(luò)中的WEB應(yīng)用部署面臨的安全問題現(xiàn)在可以通過一種全新設(shè)計(jì)的高性能防護(hù)應(yīng)用層攻擊的安全防護(hù)設(shè)備——WEB專用應(yīng)用防御系統(tǒng)來解決。它需要通過執(zhí)行應(yīng)用會(huì)話內(nèi)部的請(qǐng)求來處理應(yīng)用層,專門保護(hù)Web應(yīng)用通信流和所有相關(guān)的應(yīng)用資源免受利用Web協(xié)議發(fā)動(dòng)的攻擊。Web應(yīng)用層防御系統(tǒng)可以阻止將應(yīng)用行為用于惡意目的的瀏覽器和HTTP攻擊。這些攻擊包括利用特殊字符或通配符修改數(shù)據(jù)的數(shù)據(jù)攻擊,設(shè)法得到命令串或邏輯語句的邏輯內(nèi)容攻擊,以及以賬戶、文件或主機(jī)為主要目標(biāo)的目標(biāo)攻擊。
下面簡單的介紹一下WEB專用應(yīng)用防御系統(tǒng)的幾個(gè)主要功能:
1惡意代碼主動(dòng)防御
利用信任鏈機(jī)制,對(duì)系統(tǒng)中所有裝載的可執(zhí)行文件代碼(例如,EXE、DLL、COM等)進(jìn)行控制,所有可執(zhí)行文件代碼在加載運(yùn)行之間都需要先經(jīng)過檢驗(yàn),只有通過驗(yàn)證的代碼才可以加載,這種方式可以有效阻止惡意代碼的運(yùn)行。
2網(wǎng)頁文件過濾驅(qū)動(dòng)保護(hù)
利用操作系統(tǒng)漏洞,應(yīng)用緩沖區(qū)溢出等方法可以獲得管理員權(quán)限。從而可以任意修改網(wǎng)頁文件。以達(dá)到攻擊的目的。針對(duì)這種攻擊方式,采用對(duì)象相關(guān)(Object-Specific)保護(hù)方式來保護(hù)靜態(tài)網(wǎng)頁不被篡改。即網(wǎng)站管理員可以自行選擇需要保護(hù)的網(wǎng)頁文件設(shè)定為受控對(duì)象,對(duì)于每一個(gè)受保護(hù)的對(duì)象,管理員為其設(shè)定一個(gè)對(duì)象相關(guān)授權(quán)碼。對(duì)象相關(guān)保護(hù)方式是一種不基于系統(tǒng)用戶身份的訪問控制技術(shù),對(duì)于所有受保護(hù)的對(duì)象,網(wǎng)站防護(hù)系統(tǒng)在操作系統(tǒng)內(nèi)核對(duì)其加以保護(hù),在不知道對(duì)象相關(guān)授權(quán)碼的情況下,即使是系統(tǒng)管理員,系統(tǒng)也禁止其對(duì)于受保護(hù)對(duì)象(比如主頁)的任何特定操作,比如修改內(nèi)容、刪除、重命名等。通過對(duì)象相關(guān)保護(hù)方式。即使攻擊者拿到系統(tǒng)管理員的權(quán)限,由于不知道受控對(duì)象的授權(quán)碼,因而也無法對(duì)其進(jìn)行修改。從而可以有效阻止溢出類攻擊對(duì)系統(tǒng)靜態(tài)網(wǎng)頁的篡改。
3防SQL注入功能
隨著B/s模式應(yīng)用開發(fā)的發(fā)展,使用這種模式編寫應(yīng)用程序的程序員也越來越多。但是由于這個(gè)行業(yè)的入門門檻不高,程序員的水平及經(jīng)驗(yàn)也參差不齊,相當(dāng)大一部分程序員在編寫代碼的時(shí)候,沒有對(duì)用戶輸入數(shù)據(jù)的合法性進(jìn)行判斷,使應(yīng)用程序存在安全隱患。用戶可以提交一段數(shù)據(jù)庫查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想得知的數(shù)據(jù),這就是所謂的SQL注入。網(wǎng)站防護(hù)系統(tǒng)可以通過高效的URL過濾技術(shù),把sQL注入的關(guān)鍵字過濾掉。從而有效的避免網(wǎng)站服務(wù)器受到SQL注入攻擊。
4雙機(jī)熱備功能
網(wǎng)站防護(hù)系統(tǒng)支持雙機(jī)熱備功能,從而提高系統(tǒng)的穩(wěn)定性和可靠性。兩臺(tái)網(wǎng)站防護(hù)系統(tǒng)分為主機(jī)和從機(jī),在主機(jī)工作的同時(shí),從機(jī)處于實(shí)時(shí)監(jiān)控主機(jī)的工作狀態(tài),這時(shí)所有對(duì)內(nèi)部網(wǎng)絡(luò)的保護(hù)工作由主機(jī)完成。
5抗網(wǎng)絡(luò)攻擊能力
作為一種網(wǎng)絡(luò)安全防護(hù)設(shè)備,網(wǎng)站防護(hù)系統(tǒng)在網(wǎng)絡(luò)中自然成為眾多攻擊者的首要目標(biāo),所以抗攻擊能力也是網(wǎng)站防護(hù)系統(tǒng)的必備功能。該系統(tǒng)采取多種安全措施,可以防范Internet環(huán)境中的攻擊,如:抗網(wǎng)絡(luò)安全性分析DDOS攻擊等。