一、Web應(yīng)用系統(tǒng)的工作原理
現(xiàn)代的信息系統(tǒng),無論是建立信息發(fā)布和數(shù)據(jù)交換平臺(tái),還是建立外部商業(yè)和內(nèi)部業(yè)務(wù)應(yīng)用系統(tǒng),都離不開Web應(yīng)用系統(tǒng)。
Web應(yīng)用是由動(dòng)態(tài)腳本語言(如ASP、JSP和PHP等)和編譯過的代碼等組合而成,它通常架設(shè)在Web服務(wù)器上。用戶在Web瀏覽器上發(fā)送請(qǐng)求,這些請(qǐng)求使用HTTP協(xié)議,經(jīng)過互聯(lián)網(wǎng)或內(nèi)部網(wǎng)絡(luò)與服務(wù)者的Web應(yīng)用交互,由Web應(yīng)用與企業(yè)后臺(tái)的數(shù)據(jù)庫及其他動(dòng)態(tài)內(nèi)容通信。
盡管Web應(yīng)用有著許多簡(jiǎn)化或復(fù)雜搭建方式,但一個(gè)典型的 Web 應(yīng)用通常是標(biāo)準(zhǔn)的三層架構(gòu)模型:
在這種最常見的模型中,客戶端是第一層;使用動(dòng)態(tài)Web技術(shù)的部分屬于中間層;數(shù)據(jù)庫是第三層。用戶通過Web瀏覽器發(fā)送請(qǐng)求給中間層,由中間層將用戶的請(qǐng)求轉(zhuǎn)換為對(duì)后臺(tái)數(shù)據(jù)的查詢或是更新,并將最終的結(jié)果在瀏覽器上展示給用戶。
二、Web應(yīng)用系統(tǒng)的安全漏洞
Web應(yīng)用系統(tǒng)有著其固有的開發(fā)特點(diǎn):開發(fā)人員素質(zhì)一般、需求快速變更導(dǎo)致缺乏嚴(yán)謹(jǐn)?shù)脑O(shè)計(jì)和代碼編寫、系統(tǒng)沒有經(jīng)過嚴(yán)格的測(cè)試等,這些特點(diǎn)加上HTTP協(xié)議本身的無狀態(tài)和匿名性,導(dǎo)致Web應(yīng)用出現(xiàn)了很多的漏洞,如SQL注入漏洞、跨站腳本漏洞等等。
另外,管理員對(duì)Web系統(tǒng)的現(xiàn)成軟件(包括操作系統(tǒng)、Web服務(wù)器軟件、中間件、第三方平臺(tái)、數(shù)據(jù)庫)的配置不當(dāng)也會(huì)造成很多漏洞,最常見的就是網(wǎng)頁被篡改。
作為Web應(yīng)用運(yùn)行的基礎(chǔ)平臺(tái),Web服務(wù)器(軟件)本身只提供對(duì)HTTP協(xié)議的處理,并不會(huì)對(duì)協(xié)議數(shù)據(jù)的來源和內(nèi)容進(jìn)行安全檢查和安全加固,如下圖所示:
正是基于Web服務(wù)器這樣的工作原理,黑客就可以利用Web應(yīng)用程序自身的漏洞和管理員配置不當(dāng)造成的漏洞而對(duì)Web應(yīng)用進(jìn)行攻擊和破壞。
三、天存Web應(yīng)用安全解決方案
為了從源頭上杜絕攻擊的發(fā)生,天存通過核心內(nèi)嵌技術(shù)給WEB服務(wù)器軟件打上安全補(bǔ)丁,在WEB服務(wù)器尚未對(duì)請(qǐng)求進(jìn)行內(nèi)部(業(yè)務(wù))處理之前,對(duì)請(qǐng)求中包含的各項(xiàng)數(shù)據(jù)進(jìn)行過濾,確保只將安全的請(qǐng)求交給Web服務(wù)器進(jìn)行處理;在Web服務(wù)器合成響應(yīng)之前對(duì)文件的完整性進(jìn)行檢查,確保響應(yīng)內(nèi)容的正確性。如下圖所示:
方案優(yōu)勢(shì)
- 1.通過對(duì)請(qǐng)求和響應(yīng)的雙向檢測(cè),一方面確保黑客利用Web應(yīng)用程序自身漏洞發(fā)起的各種應(yīng)用層攻擊都能夠被實(shí)時(shí)阻斷;另一方面杜絕篡改后的網(wǎng)頁/腳本文件被訪問的可能性,使黑客利用管理員配置不當(dāng)?shù)嚷┒创鄹木W(wǎng)頁的企圖完全落空。
- 2.不存在獨(dú)立的安全模塊運(yùn)行進(jìn)程,工作過程完全與Web服務(wù)的運(yùn)行進(jìn)程融合,在精準(zhǔn)理解和分析Web服務(wù)請(qǐng)求數(shù)據(jù)的同時(shí),確保入侵者無法干擾安全檢測(cè)的運(yùn)行。
- 3.與操作系統(tǒng)及硬件無關(guān),與應(yīng)用系統(tǒng)使用的腳本語言無關(guān),無需改變網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),對(duì)Web應(yīng)用的正常運(yùn)行沒有任何影響。