姜延凱
摘 要:本文就網(wǎng)站安全保護(hù)技術(shù)進(jìn)行相關(guān)探討,并利用現(xiàn)有的防篡改技術(shù)構(gòu)建了多層次網(wǎng)站防篡改系統(tǒng),實(shí)驗(yàn)證明,該系統(tǒng)對(duì)網(wǎng)站的保護(hù)功能得到了大幅度提升。
關(guān)鍵詞:多層次防篡改;網(wǎng)站安全;事件觸發(fā)技術(shù);核心內(nèi)嵌技術(shù)
1 概述
根據(jù)國(guó)家互聯(lián)網(wǎng)應(yīng)急中心(CNCERT/CC)的中國(guó)互聯(lián)網(wǎng)網(wǎng)絡(luò)安全態(tài)勢(shì)報(bào)告可知,我國(guó)網(wǎng)站被篡改的數(shù)量達(dá)到36000多個(gè),其中涉及政府網(wǎng)站高達(dá)2800多個(gè),除政府網(wǎng)站外,銀行、工業(yè)控制系統(tǒng)的安全性同樣也受到威脅,而部分個(gè)人的信息網(wǎng)站更是黑客攻擊的主體。
2 網(wǎng)站防篡改技術(shù)發(fā)展階段
第一,人工對(duì)比檢測(cè)。派專人負(fù)責(zé)監(jiān)控、管理網(wǎng)站,發(fā)現(xiàn)異常,以人工方式將其復(fù)原。這種方法花費(fèi)精力較大,且實(shí)時(shí)性極差。第二,外掛輪詢技術(shù)。該技術(shù)實(shí)現(xiàn)了自動(dòng)化檢測(cè),利用網(wǎng)頁(yè)檢測(cè)程序?qū)W(wǎng)站實(shí)施保護(hù),將網(wǎng)站與備份進(jìn)行對(duì)比,查看其完整性,當(dāng)網(wǎng)站被篡改后可發(fā)生報(bào)警,并對(duì)其進(jìn)行自動(dòng)回復(fù)。該技術(shù)實(shí)時(shí)性仍存在較大局限性,且Web服務(wù)器負(fù)載過(guò)大,無(wú)法對(duì)動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行有效保護(hù)。第三,核心內(nèi)嵌技術(shù)。相對(duì)于外掛輪詢技術(shù),在安全性方面有了提高,這種內(nèi)嵌技術(shù)在網(wǎng)頁(yè)最終交付給用戶前進(jìn)行截查和檢測(cè),保證網(wǎng)頁(yè)不被篡改。該技術(shù)穩(wěn)定性高,處理效果好,但對(duì)服務(wù)器形成的負(fù)擔(dān)過(guò)重。第四,事件觸發(fā)技術(shù)。將篡改檢測(cè)的核心技術(shù)植入到Web服務(wù)器中,當(dāng)被保護(hù)的網(wǎng)站發(fā)生添加、刪除或修改操作時(shí),根據(jù)預(yù)先設(shè)定的規(guī)則對(duì)篡改操作的合法性進(jìn)行判斷,若為非法操作,監(jiān)測(cè)程序發(fā)出警告,并對(duì)網(wǎng)頁(yè)進(jìn)行恢復(fù)。該技術(shù)實(shí)時(shí)性較高,反應(yīng)快,減少了內(nèi)存和CPU的占有率。
各類技術(shù)的性能可參見(jiàn)表1。
表1 防篡改技術(shù)特性對(duì)比
3 多層次防篡改系統(tǒng)構(gòu)建
3.1 技術(shù)選擇 由表1中各項(xiàng)技術(shù)的性能對(duì)比可知,外掛輪詢技術(shù)的服務(wù)器負(fù)載較高、響應(yīng)時(shí)間短、安全性能較差,無(wú)法滿足現(xiàn)代防篡改系統(tǒng)的技術(shù)要求;而其他兩種技術(shù)在各個(gè)方面各具特色,互有優(yōu)勢(shì),因此可將兩種技術(shù)相結(jié)合,開(kāi)發(fā)具有多層次、高性能的防篡改安全系統(tǒng)。
3.2 系統(tǒng)功能需求分析 多層次防篡改系統(tǒng)可實(shí)現(xiàn)的功能有:監(jiān)控受保護(hù)網(wǎng)站下的文件,防止SQL注入和XSS攻擊功能、篡改后及時(shí)恢復(fù)功能、網(wǎng)站文件備份功能、遭篡改后的實(shí)時(shí)報(bào)警功能、日志與審計(jì)功能、分布式監(jiān)控和集中式管理的功能。
3.3 多層次防篡改系統(tǒng)結(jié)構(gòu) 根據(jù)邏輯部署位置和功能的不同,多層次網(wǎng)站防篡改系統(tǒng)可分為監(jiān)控端(Agent)和管理端(Sercer)兩部分。各部分模塊劃分及結(jié)構(gòu)之間的關(guān)系,可參見(jiàn)圖1。
根據(jù)圖1可知,多層次防篡改系統(tǒng)改變了以往單個(gè)系統(tǒng)分別部署防御的模式,改為由Server管理端集中管理。
而Agent端則主要起到保護(hù)、監(jiān)控、備份與恢復(fù)的功能。其中事件出發(fā)模塊對(duì)網(wǎng)站文件的改變進(jìn)行監(jiān)控,對(duì)不同的行為進(jìn)行判斷,然后采取相應(yīng)的恢復(fù)措施,是保護(hù)網(wǎng)站的重要手段;核心內(nèi)嵌模塊對(duì)流出服務(wù)器的網(wǎng)頁(yè)進(jìn)行過(guò)濾,檢查網(wǎng)頁(yè)的完整性,是事件觸發(fā)模塊不可獲取的補(bǔ)充;而防注入模塊、黑白名單模塊等均從不同的角度為網(wǎng)站提供全方位的保護(hù)措施。
Agent端的幾個(gè)模塊構(gòu)成了事前預(yù)防、事中監(jiān)控、事后攔截的三層防御系統(tǒng)。當(dāng)含有注入攻擊的請(qǐng)求到達(dá)服務(wù)器時(shí),首先由注入模塊對(duì)其進(jìn)行檢測(cè),若檢測(cè)證實(shí)請(qǐng)求為惡意請(qǐng)求時(shí),對(duì)其進(jìn)行有效攔截;如果黑客使用其他技術(shù)或繞過(guò)防注入模塊的監(jiān)控時(shí),事件觸發(fā)模塊仍可對(duì)其惡意請(qǐng)求進(jìn)行監(jiān)控,一經(jīng)發(fā)現(xiàn)惡意篡改,即可做出恢復(fù)網(wǎng)頁(yè)的反應(yīng)(當(dāng)前的反應(yīng)速度已經(jīng)提升至毫秒級(jí))。若侵入者繞過(guò)事件觸發(fā)模塊的監(jiān)測(cè),核心內(nèi)嵌模塊則會(huì)繼續(xù)發(fā)揮其保護(hù)功能,避免受損害的網(wǎng)頁(yè)被用戶訪問(wèn)。
3.4 功能測(cè)試 對(duì)防注入模塊、事件觸發(fā)模塊以及核心內(nèi)嵌模塊的安全保護(hù)功能進(jìn)行測(cè)試,以防注入功能測(cè)試為例進(jìn)行詳細(xì)說(shuō)明,具體測(cè)試方法如下:從網(wǎng)站前臺(tái)的64處交互輸入框中,選擇其中的47處,分別在關(guān)閉防注入功能和開(kāi)啟防注入功能中輸入正確數(shù)據(jù)和帶有SOL注入攻擊(或XSS攻擊)的數(shù)據(jù)。結(jié)果如表2所示:
表2 防注入功能測(cè)試結(jié)果
4 多層次防篡改系統(tǒng)評(píng)價(jià)
多層次防篡改系統(tǒng)的分布式部署和集中式管理,可大大簡(jiǎn)化工作人員的工作強(qiáng)度,采用的多種技術(shù)可對(duì)網(wǎng)站進(jìn)行事前、事中和事后三層防御;系統(tǒng)通過(guò)Filter技術(shù),對(duì)網(wǎng)站服務(wù)器遇到的請(qǐng)求進(jìn)行檢測(cè),過(guò)濾其中的非法注入和攻擊,以事件基礎(chǔ)技術(shù)為基礎(chǔ),對(duì)網(wǎng)站內(nèi)所有的文件進(jìn)行監(jiān)控;而核心內(nèi)嵌技術(shù)則是整個(gè)系統(tǒng)的最后一層安全保障,從而最終阻止遭篡改的文件流出服務(wù)器。該系統(tǒng)的利用,使網(wǎng)站安全得到了有效保障,但其在具體的實(shí)施過(guò)程中,仍存在一系列問(wèn)題,需要進(jìn)一步改進(jìn)和優(yōu)化。
基金項(xiàng)目:本文系河北省科技計(jì)劃項(xiàng)目重點(diǎn)課題“基于J2EE面向服務(wù)(SOA)的食品防偽及安全追溯預(yù)警系統(tǒng)”的研究成果之一。