專利名稱::用于防止網(wǎng)頁攻擊的方法與裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明公開關(guān)于計(jì)算機(jī)安全防護(hù)科技,尤其涉及一種用于防止網(wǎng)頁攻擊的方法與裝置。
背景技術(shù):
:所謂的「惡意軟件(malware)」被設(shè)計(jì)用于在不需要使用者同意的情況下滲透或傷害一用戶端計(jì)算機(jī)的一軟件或程序。惡意軟件包含有計(jì)算機(jī)病毒(vims)、電子蠕蟲(worm)、特洛伊木馬病毒(trojanhorses)、間諜軟件(spyware)、詐欺的廣告軟件(dishonestadware)以及其他具有惡意的或不想要的軟件,一般而言,惡意軟件會(huì)利用霸占該用戶端計(jì)算機(jī)的資源來中斷該用戶端計(jì)算機(jī)的運(yùn)作,并且經(jīng)常使得該用戶端計(jì)算機(jī)無法使用。無論如何,即使在該用戶端計(jì)算機(jī)安裝防毒軟件或各種操作系統(tǒng)安全修正程序之后,該用戶端計(jì)算機(jī)仍然會(huì)容易受到另一種形式的攻擊,一般像是網(wǎng)頁攻擊或程序代碼植入等。更具體地來說,某些具有惡意的代碼被嵌入在該用戶端計(jì)算機(jī)經(jīng)由一網(wǎng)絡(luò)所存取的一網(wǎng)頁中,該網(wǎng)頁并不限定于一不友善的網(wǎng)站上的一頁面,例如一網(wǎng)絡(luò)怪客(cracker)與序號(hào)網(wǎng)站、一色情網(wǎng)站、以及特別設(shè)計(jì)用來惡意攻擊的一網(wǎng)站,也可以是一經(jīng)常拜訪的網(wǎng)站上的一頁面,例如廣為流傳的零售商的一網(wǎng)站、一互耳關(guān)網(wǎng)入口(Internetportal)、一互聯(lián)網(wǎng)博克(Internetblog)以及廣為流傳的下載網(wǎng)站等。圖1所繪示的是為舉例說明一用戶端計(jì)算機(jī)的安全被該用戶端計(jì)算機(jī)的一未察覺使用者經(jīng)由瀏覽網(wǎng)絡(luò)危害的一情況。一般而言,一網(wǎng)站上的網(wǎng)頁被存儲(chǔ)于一網(wǎng)絡(luò)服務(wù)器中,例如圖1所示的網(wǎng)絡(luò)服務(wù)器106,當(dāng)一用戶端計(jì)算機(jī)102的一使用者瀏覽互聯(lián)網(wǎng)并且存取此網(wǎng)站時(shí),用戶端計(jì)算機(jī)102就會(huì)傳送對(duì)于來自網(wǎng)絡(luò)服務(wù)器106中的一網(wǎng)頁104的一請(qǐng)求指令。所請(qǐng)求的該網(wǎng)頁可能會(huì)被修改成為包含有具有惡意的代碼的一修改過的網(wǎng)頁108,所以在此情況中,為了回應(yīng)所請(qǐng)求的網(wǎng)頁104,網(wǎng)絡(luò)服務(wù)器106就會(huì)將修改過的網(wǎng)頁108傳送回給用戶端計(jì)算機(jī)102,而一旦用戶端計(jì)算機(jī)102接收到修改過的網(wǎng)頁108,修改過的網(wǎng)頁108中具有惡意的代碼就可以對(duì)用戶端計(jì)算機(jī)102造成損害。用戶端計(jì)算機(jī)102的使用者大部分通常都不會(huì)知道這種安全危害,因?yàn)槟切┚哂袗阂獾拇a所產(chǎn)生的效果可能不會(huì)馬上被察覺到。圖2所繪示的是為舉例說明一用戶端計(jì)算機(jī)的安全被該用戶端計(jì)算機(jī)的一未察覺的使用者經(jīng)由瀏覽網(wǎng)絡(luò)危害的另一情況。類似于圖1所示的情況,當(dāng)一用戶端計(jì)算機(jī)202傳送對(duì)于來自網(wǎng)絡(luò)服務(wù)器206中的一網(wǎng)頁204的一請(qǐng)求指令時(shí),一網(wǎng)絡(luò)服務(wù)器206就會(huì)將修改過的網(wǎng)頁208傳送回給用戶端計(jì)算機(jī)202,然而,修改過的網(wǎng)頁208包含有一嵌入式連結(jié),而非具有惡意的代碼,該嵌入式連結(jié)會(huì)在使用者不知情的狀態(tài)下將來自一僵尸網(wǎng)站212的一網(wǎng)頁或一不友善的程序載入到用戶端計(jì)算機(jī)202上,接著,來自該僵尸網(wǎng)站或甚至其他的僵尸網(wǎng)站的一具有惡意的程序或腳本程序(script)214會(huì)對(duì)用戶端計(jì)算機(jī)202造成感染或傷害。關(guān)于上述兩種不同的安全危害所造成的結(jié)果,在一些例子中,用戶端計(jì)算機(jī)202可能會(huì)遭受到無法回復(fù)的系統(tǒng)故障以及系統(tǒng)當(dāng)機(jī)。傳統(tǒng)的桌上型防毒軟件無法有效的預(yù)防上述的網(wǎng)絡(luò)侵入發(fā)生,因?yàn)閭鹘y(tǒng)的桌上型防毒軟件一般都是處理已經(jīng)存在于一用戶端計(jì)算機(jī)中的數(shù)據(jù),更具體地來說,傳統(tǒng)的桌上型防毒軟件是將存儲(chǔ)在該用戶端計(jì)算機(jī)中的存儲(chǔ)器(例如其隨機(jī)存取存儲(chǔ)器(RandomAccessMemory,RAM)以及開機(jī)區(qū)段)中的嘗試錯(cuò)誤的內(nèi)容(heuristics)以及存儲(chǔ)在固定或可移除的磁盤(例如硬盤以及軟盤)中的文件與一已知病毒特征的數(shù)據(jù)庫進(jìn)行比較。然而,利用這種方式,用戶端計(jì)算機(jī)仍然沒有辦法事先知道其所請(qǐng)求的網(wǎng)頁是否已經(jīng)被修改過了,因此也沒有辦法避免接受這種被修改過的網(wǎng)頁,取而代之則是,傳統(tǒng)的桌上型防毒軟件在開始一掃描之前,必須等到在該網(wǎng)頁攻擊發(fā)生之后,而該傳統(tǒng)的桌上型防毒軟件可能可以或沒有辦法確認(rèn)以及對(duì)付該網(wǎng)頁攻擊造成的安全危害。如上所述,傳統(tǒng)的方法沒有辦法避免網(wǎng)頁攻擊或代碼植入,因此目前非常需要一種有效的方法與系統(tǒng)來在一用戶端計(jì)算機(jī)接收到其所請(qǐng)求的網(wǎng)頁之前檢測(cè)以及對(duì)付這種非法侵入。
發(fā)明內(nèi)容本發(fā)明公開一種用于防止網(wǎng)頁攻擊的方法與裝置。其中,本發(fā)明的一實(shí)施例公開了一種方法,該方法包含有在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。本發(fā)明的方法與裝置的一優(yōu)勢(shì)在于可以防止包含具有惡意的代碼的一網(wǎng)頁接觸一用戶端計(jì)算機(jī),以使得該用戶端計(jì)算機(jī)在接收該網(wǎng)頁之后不用困擾于辨別以及移除這些具有惡意的代碼。圖1所繪示的是為舉例說明一用戶端計(jì)算機(jī)的安全被該用戶端計(jì)算機(jī)的一未察覺使用者經(jīng)由瀏覽網(wǎng)絡(luò)危害的一情況。圖2所繪示的是為舉例說明一用戶端計(jì)算機(jī)的安全被該用戶端計(jì)算機(jī)的一未察覺使用者經(jīng)由瀏覽網(wǎng)絡(luò)危害的另一情況。圖3所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明一系統(tǒng)設(shè)定。圖4所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明一網(wǎng)頁分析器。圖5依據(jù)本發(fā)明的一實(shí)施例繪示一流程圖來舉例說明網(wǎng)頁分析器的一處理過程。圖6是舉例說明該網(wǎng)頁W的原始代碼中的一些對(duì)象的一快照示意圖。圖7是舉例說明該已知的特征數(shù)據(jù)庫的一范例。圖8所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明具有一網(wǎng)頁分析器的一網(wǎng)絡(luò)裝置。圖9所繪示的是為依據(jù)本發(fā)明的另一實(shí)施例舉例說明具有一網(wǎng)頁分析器的另一網(wǎng)絡(luò)裝置。主要元件符號(hào)說明102用戶端計(jì)算機(jī)104網(wǎng)頁106網(wǎng)絡(luò)服務(wù)器108修改過的網(wǎng)頁202用戶端計(jì)算機(jī)204網(wǎng)頁206:網(wǎng)絡(luò)服務(wù)器208:修改過的網(wǎng)頁212:僵尸網(wǎng)站214:腳本程序300:系統(tǒng)302:網(wǎng)絡(luò)服務(wù)器304:所請(qǐng)求的網(wǎng)頁306:網(wǎng)關(guān)器308:網(wǎng)頁分析器310:處理過的網(wǎng)頁312:用戶端計(jì)算機(jī)402:網(wǎng)頁分析器404:以特征為根據(jù)的引擎406:啟發(fā)式引擎408:已知的特征數(shù)據(jù)庫802:超文本標(biāo)記語言提取器804:網(wǎng)頁分析器806:路由方塊808:橋接方塊810:網(wǎng)絡(luò)地址轉(zhuǎn)換器812:網(wǎng)絡(luò)驅(qū)動(dòng)器814:網(wǎng)全各卯2:超文本傳輸協(xié)議代理服務(wù)器904:網(wǎng)頁分析器906:傳輸控制協(xié)議/網(wǎng)絡(luò)協(xié)議層908:網(wǎng)絡(luò)驅(qū)動(dòng)器910:網(wǎng)絡(luò)具體實(shí)施例方式在本說明書中有許多與互聯(lián)網(wǎng)以及網(wǎng)絡(luò)領(lǐng)域科技相關(guān)的各種名詞,例如超文本標(biāo)記語言(HyperTextMarkupLanguage,HTML)、超文本傳輸協(xié)議(HyperTextTransferProtocol,HTTP)、統(tǒng)一資源定位器(UniformResourceLocator,URL)、傳輸控制協(xié)議/網(wǎng)絡(luò)協(xié)議(TransmissionControlProtocol/InternetProtocol,TCP/IP)以及網(wǎng)絡(luò)地址轉(zhuǎn)換(networkaddresstranslation,NAT)等。本發(fā)明的一實(shí)施例以用于一網(wǎng)絡(luò)裝置的一程序產(chǎn)品來實(shí)現(xiàn),該程序產(chǎn)品的程序定義一些實(shí)施例(包含有這里所描述的一些方法)的功能,并且可以被包含在各種的計(jì)算機(jī)可讀介質(zhì)(machine-readablestoragemedia)上。關(guān)于這里所4吏用的r計(jì)算;f幾可讀介質(zhì)」包含有但不限定于(i)存儲(chǔ)有只讀信息的不可寫入的存儲(chǔ)介質(zhì)(例如一CD-ROM光碟機(jī)可以讀取的一CD-ROM光盤、一DVD光碟機(jī)可以讀取的一DVD光盤、或在一網(wǎng)絡(luò)裝置中的只讀存儲(chǔ)器裝置,例如只讀存儲(chǔ)器芯片或任何種類的固態(tài)非易失性半導(dǎo)體存儲(chǔ)器);(ii)存儲(chǔ)有可修改信息的可寫入的存儲(chǔ)介質(zhì)(例如快閃存儲(chǔ)器或任何種類的固態(tài)隨^L存取半導(dǎo)體存儲(chǔ)器)。當(dāng)這樣的計(jì)算機(jī)可讀介質(zhì)具有用于指示本發(fā)明的功能的計(jì)算機(jī)可讀的指令時(shí),是屬于本發(fā)明的實(shí)施例。其他的媒體包含有經(jīng)由一網(wǎng)絡(luò)裝置傳送信息的通信媒體,例如經(jīng)由一計(jì)算機(jī)、電話網(wǎng)絡(luò)或無線通信網(wǎng)絡(luò)傳送信息的通信媒體。后者的實(shí)施例具體地包含有傳輸信息到互聯(lián)網(wǎng)以及其他網(wǎng)絡(luò)或從互聯(lián)網(wǎng)以及其他網(wǎng)絡(luò)傳輸信息。當(dāng)這樣的通信媒體具有用于指示本發(fā)明的功能的計(jì)算機(jī)可讀的指令時(shí),是屬于本發(fā)明的實(shí)施例。圖3所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明一系統(tǒng)設(shè)定,其中一修改過的網(wǎng)頁在到達(dá)一用戶端計(jì)算機(jī)前被攔截,如圖3所示,一系統(tǒng)300包含有一網(wǎng)絡(luò)服務(wù)器302、一網(wǎng)關(guān)器306以及一用戶端計(jì)算機(jī)312。在此當(dāng)網(wǎng)絡(luò)服務(wù)器302將一所請(qǐng)求的網(wǎng)頁304傳送給用戶端計(jì)算機(jī)312時(shí),該網(wǎng)頁可能已經(jīng)被修改成包含有具有惡意的代碼,然而,在此所請(qǐng)求的網(wǎng)頁304到達(dá)用戶端計(jì)算機(jī)312之前,網(wǎng)關(guān)器306作為一防護(hù)罩來攔截該網(wǎng)頁。更具體地來說,在一實(shí)施例的裝置中,網(wǎng)關(guān)器306包含有一網(wǎng)頁分析器308,用于對(duì)所請(qǐng)求的網(wǎng)頁304進(jìn)行一即時(shí)安全掃描,在一實(shí)施例的設(shè)定中,該即時(shí)安全掃描檢驗(yàn)所請(qǐng)求的網(wǎng)頁304的原始代碼,如果在所請(qǐng)求的網(wǎng)頁304中發(fā)現(xiàn)有一些具有惡意的代碼,網(wǎng)頁分析器308就會(huì)移除或者隔離這些具有惡意的代碼并且傳送一處理過的網(wǎng)頁310到用戶端計(jì)算機(jī)312。在另一實(shí)施例的設(shè)定中,網(wǎng)頁分析器308也可以作為一主機(jī)過濾器來避免用戶端計(jì)算機(jī)312存取之前被列為黑名單的網(wǎng)頁,例如一僵尸網(wǎng)站。在又另一實(shí)施例的設(shè)定中,網(wǎng)頁分析器308檢查即將要被下載到用戶端計(jì)算機(jī)312作為惡意軟件的內(nèi)容,在后續(xù)的段落將會(huì)進(jìn)一步詳細(xì)說明網(wǎng)頁分析器308。圖4所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明一網(wǎng)頁分析器402,網(wǎng)頁分析器402包含有一以特征為根據(jù)的引擎(signaturebasedengine)404、一啟發(fā)式引擎(heuristicengine)406以及一已知的特征數(shù)據(jù)庫408。當(dāng)網(wǎng)頁分析器402接收一所請(qǐng)求的網(wǎng)頁時(shí),以特征為根據(jù)的引擎404檢驗(yàn)該所請(qǐng)求的網(wǎng)頁的原始代碼,該原始代碼可能包含有多個(gè)對(duì)象,其中每一個(gè)對(duì)象具有某些對(duì)象屬性。在一實(shí)施例的設(shè)定中,以特征為根據(jù)的引擎404系分析來自該原始代碼的這些對(duì)象,并且將這些對(duì)象的某些對(duì)象屬性與存儲(chǔ)在已知的特征數(shù)據(jù)庫408中的已知攻擊特征進(jìn)行比較。因此,如果在已知的特征數(shù)據(jù)庫408中有找到一符合條件,那么該所請(qǐng)求的網(wǎng)頁就會(huì)被視為包含有具有惡意的代碼;另一方面,如果沒有找到任何符合條件,那么該所請(qǐng)求的網(wǎng)頁就會(huì)進(jìn)一步由啟發(fā)式引擎406來處理,在后續(xù)的段落將會(huì)提供關(guān)于在一網(wǎng)頁中的對(duì)象以及對(duì)象屬性的一些范例。啟發(fā)式引擎406—方面是用于檢測(cè)以及評(píng)估在該所請(qǐng)求的網(wǎng)頁中的異常狀態(tài),其中,在此所謂的一異常狀態(tài)泛指偏離正常的對(duì)象屬性的屬性的一對(duì)象屬性,在一實(shí)施例的設(shè)定中,啟發(fā)式引擎406系利用一評(píng)分系統(tǒng),其中每一對(duì)象屬性被指派一數(shù)值分?jǐn)?shù),而該數(shù)值分?jǐn)?shù)代表該對(duì)象屬性的風(fēng)險(xiǎn)程度,所以啟發(fā)式引擎406會(huì)指派一較高的數(shù)值分?jǐn)?shù)給具有一潛在性惡意的異常狀態(tài)的一對(duì)象屬性,一稍微低的數(shù)值分?jǐn)?shù)給具有一潛在性無害的異常狀態(tài)的一對(duì)象屬性,以及一比較更低的數(shù)值分?jǐn)?shù)給不具有任何異常狀態(tài)的一對(duì)象屬性。以下的一覽表是舉例說明啟發(fā)式引擎406所可以檢測(cè)并且指派分?jǐn)?shù)的異常狀態(tài)<table>tableseeoriginaldocumentpage12</column></row><table><table>tableseeoriginaldocumentpage13</column></row><table>在一實(shí)施例的設(shè)定中,啟發(fā)式引擎406是用于合計(jì)每一網(wǎng)頁的這些對(duì)象屬性的分?jǐn)?shù)來表示該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度,在此請(qǐng)注意啟發(fā)式引擎406可以對(duì)每一個(gè)分?jǐn)?shù)進(jìn)行不同程度的加權(quán)計(jì)算并且將變動(dòng)的加權(quán)數(shù)應(yīng)用在合計(jì)分?jǐn)?shù)的過程中,接著,啟發(fā)式引擎406會(huì)對(duì)于每一個(gè)網(wǎng)頁來將該合計(jì)的分?jǐn)?shù)與一可調(diào)整的臨界值進(jìn)行比較。如果該合計(jì)的分?jǐn)?shù)超過該可調(diào)整的臨界值,則該網(wǎng)頁會(huì)被認(rèn)為是具有惡意的,并且會(huì)結(jié)束對(duì)該網(wǎng)頁的原始代碼的掃描。此外,在超過該可調(diào)整的臨界值之后,目前所處理的該網(wǎng)頁的地址會(huì)在已知的特征數(shù)據(jù)庫408中被列入黑名單中。另外可行的方法是將造成該合計(jì)的分?jǐn)?shù)的該異常狀態(tài)或這些異常狀態(tài)的組合列入黑名單中,在此請(qǐng)注意該評(píng)分系統(tǒng)以及該可調(diào)整的臨界值可以適應(yīng)于變動(dòng)的環(huán)境,舉例來說,假設(shè)某一類型的一異常狀態(tài)被認(rèn)定為具有高風(fēng)險(xiǎn)性,則其一開始就會(huì)被指派一高的分?jǐn)?shù),然而,經(jīng)過實(shí)地測(cè)試時(shí),^_設(shè)之后發(fā)現(xiàn)該異常狀態(tài)是無害的或?qū)τ谄渌惓顟B(tài)而言具有較低風(fēng)險(xiǎn)性時(shí),那么原本被指派的分?jǐn)?shù)可以被調(diào)整來反應(yīng)這個(gè)改變后的環(huán)境。同樣地,如果啟發(fā)式引擎406錯(cuò)誤地將過多的網(wǎng)頁標(biāo)示為具有惡意的話,則該臨界值也可以是可調(diào)整的。如上所述,已知的特征數(shù)據(jù)庫408會(huì)存儲(chǔ)已知的攻擊的特征,在一實(shí)施例的設(shè)定中,與每一種特征相關(guān)的特性會(huì)在已知的特征數(shù)據(jù)庫408中被分門別類,在后續(xù)的段落將會(huì)提供一些范例。已知的特征數(shù)據(jù)庫408可以經(jīng)由網(wǎng)頁分析器402的開發(fā)者或一些其他第三方來產(chǎn)生以及維護(hù),并且已知的特征數(shù)據(jù)庫408的一種設(shè)置方式是放在網(wǎng)頁分析器402中(未顯示于圖4),另外可行的設(shè)置方式是將已知的特征數(shù)據(jù)庫408設(shè)置在一網(wǎng)絡(luò)服務(wù)器中,并且由網(wǎng)頁分析器402來維護(hù)一連結(jié)。圖5依據(jù)本發(fā)明的一實(shí)施例繪示一流程圖來舉例說明網(wǎng)頁分析器402的一處理過程。假設(shè)一用戶端計(jì)算機(jī)C請(qǐng)求一網(wǎng)頁W,并且網(wǎng)頁分析器402接收了一網(wǎng)頁W,連同圖4來看,在步驟502中,以特征為根據(jù)的引擎404分析來自該網(wǎng)頁W的原始代碼的對(duì)象,并且追蹤哪一個(gè)對(duì)象已經(jīng)被檢驗(yàn)過了。如果在步驟504中指示與該網(wǎng)頁W相關(guān)的每一個(gè)對(duì)象都已經(jīng)被檢驗(yàn)過了,那么該掃描流程會(huì)在步驟530結(jié)束,另一方面,如果還有一些剩下的對(duì)象需要被檢查,那么在步驟510中,以特征為根據(jù)的引擎404就會(huì)取得這些剩下的對(duì)象其中之一的一些對(duì)象屬性,并且將這些對(duì)象屬性與已知的特征數(shù)據(jù)庫408中被列入黑名單中的特征來進(jìn)行比較。如果在步驟512中,以特征為根據(jù)的引擎404找到一相符合的條件,那么就會(huì)在步驟28中將該結(jié)果回報(bào)給網(wǎng)頁分析器402。在一實(shí)施例中,關(guān)于接收到該報(bào)告的反應(yīng)如下,網(wǎng)頁分析器402會(huì)開始一清除程序來在該網(wǎng)頁W到達(dá)該用戶端計(jì)算機(jī)C之前將具有惡意的代碼移除掉。如果在步驟512中指示沒有任何符合條件被找到,那么以特征為根據(jù)的引擎404就會(huì)將該對(duì)象以及所取得的對(duì)象屬性傳送給啟發(fā)式引擎406。啟發(fā)式引擎406會(huì)在步驟516中檢查該對(duì)象以及與其相關(guān)的一些對(duì)象屬性,如上所述,啟發(fā)式引擎406會(huì)指派一些數(shù)值分?jǐn)?shù)給這些對(duì)象屬性,并且也會(huì)對(duì)該網(wǎng)頁W追蹤一合計(jì)的分?jǐn)?shù),接著,啟發(fā)式引擎406會(huì)在步驟518中將該合計(jì)的分?jǐn)?shù)與一可調(diào)整的臨界值進(jìn)行比較。如果該分?jǐn)?shù)太高,亦即超過該可調(diào)整的臨界值時(shí),啟發(fā)式引擎406就會(huì)用目前所處理的網(wǎng)頁的地址來更新已知的特征數(shù)據(jù)庫408,另外可行的方式是由啟發(fā)式引擎406來將造成該合計(jì)的分?jǐn)?shù)的該異常狀態(tài)或這些異常狀態(tài)的組合存儲(chǔ)在已知的特征數(shù)據(jù)庫408中;反之,在步驟524中,已知的特征數(shù)據(jù)庫408會(huì)通過對(duì)最近取得的對(duì)象屬性來合計(jì)分?jǐn)?shù)以更新已知的特征數(shù)據(jù)庫408。請(qǐng)?jiān)俅巫⒁膺@些對(duì)象屬性的分?jǐn)?shù)在合計(jì)之前可以經(jīng)過不同程度的加權(quán)。接著,在步驟504中,以特征為根據(jù)的引擎404會(huì)繼續(xù)處理沒有檢查過的對(duì)象。為了繼續(xù)上述所討論的范例,圖6舉例說明該網(wǎng)頁W的原始代碼中的一些對(duì)象的一快照示意圖。假設(shè)該網(wǎng)頁W是由超文本標(biāo)記語言(HyperTextMarkupLanguage,HTML)所編寫,對(duì)象600、602以及604在圖6中被突出顯示、粗體化以及標(biāo)示底線。對(duì)于對(duì)象604而言,<IFRAMESRC=http://www.foo.bar>,IFRAME以及SRC是該對(duì)象的對(duì)象屬性,其中IFRAME是一超文本標(biāo)記語言對(duì)象,它可以使另一個(gè)超文本標(biāo)記語言文件嵌入到該主文件中,而要被嵌入的該超文本標(biāo)記語言文件的統(tǒng)一資源定位器(UniformResourceLocator,URL),http:〃www.foo.bar,由SRC所指定。圖7是舉例說明該已知的特征數(shù)據(jù)庫的一范例,圖7所示的每一行文字代表具有不同對(duì)象屬性的一已知攻擊特征,這些被列入黑名單中的特征會(huì)進(jìn)一步被個(gè)別分類到不同的類別中,在此范例中,這些特征中的一些特征會(huì)被利用「Type」信息來加以分類,并且所舉例說明的特征中有許多包涵有兩種或更多的對(duì)象特性,也就是IFRAME以及SRC。在此,這些被列入黑名單中的特征中有一組屬于IFRAME形式的類別,以及有另一組屬于SCRIPT形式的類別。這些被列入黑名單中的特征中的另一組包含有一些異常狀態(tài)的組合,例如特征702、704、706以及708。本領(lǐng)域技術(shù)人員在閱讀以包含有不同對(duì)象特性的各種組合,而不一定需要像圖7所示的那些對(duì)象特性的組合。如上所述,并且連同圖4以及圖5來看,以特征為^f艮據(jù)的引擎404會(huì)從網(wǎng)頁W的原始代碼中4是取出對(duì)象600、602以及604,如圖6所示,并且將這些提取出的對(duì)象與圖7所示的已知的特征數(shù)據(jù)庫408進(jìn)行比較。在此,以特征為根據(jù)的引擎404系確認(rèn)一相符特征700,因?yàn)閷?duì)象604的對(duì)象特性相符于相符特征700的「Type」信息(亦即IFRAME)以及SRC信息(亦即http:〃www.foo.bar)。然而,假設(shè)該網(wǎng)頁W并不包含有與任何在已知的特.征數(shù)據(jù)庫408中被列入黑名單中的特征相符的任何對(duì)象,那么啟發(fā)式引擎406就會(huì)檢驗(yàn)這些對(duì)象以及它們的對(duì)象特性是否有異常狀態(tài),并且持續(xù)追蹤該網(wǎng)頁W的一合計(jì)分?jǐn)?shù)。如上所述,如果該合計(jì)的分?jǐn)?shù)超過一臨界值,則該網(wǎng)頁W會(huì)被認(rèn)為是具有惡意的,目前所處理的該網(wǎng)頁的地址或造成合計(jì)的分?jǐn)?shù)的該異常狀態(tài)或者一些異常狀態(tài)的一組合會(huì)被更新到已知的特征數(shù)據(jù)庫408中。圖8所繪示的是為依據(jù)本發(fā)明的一實(shí)施例舉例說明具有一網(wǎng)頁分析器804的一網(wǎng)絡(luò)裝置800。網(wǎng)絡(luò)裝置800包含有一超文本標(biāo)記語言提取器802、一網(wǎng)頁分析器804、一路由方塊806、一橋接方塊808、一網(wǎng)絡(luò)地址轉(zhuǎn)換(networkaddresstranslation,NAT)方塊810以及一網(wǎng)絡(luò)驅(qū)動(dòng)器812。超文本標(biāo)記語言提取器802用于負(fù)責(zé)從應(yīng)用方面的使用者以及網(wǎng)絡(luò)服務(wù)所使用的網(wǎng)絡(luò)協(xié)iU是取超文本標(biāo)記語言文件,以及將所提取的超文本標(biāo)記語言文件傳送到網(wǎng)頁分析器804,其中網(wǎng)頁分析器804所支持的全部功能與圖4所示的網(wǎng)頁分析器402完全相同,并且這些功能已經(jīng)在前面詳細(xì)地描述過了。網(wǎng)絡(luò)裝置800設(shè)置為耦接于一網(wǎng)絡(luò)814以及一或多個(gè)用戶端計(jì)算機(jī),因此,在這些用戶端計(jì)算機(jī)以及網(wǎng)絡(luò)814之間所有的網(wǎng)^^專輸都會(huì)經(jīng)過網(wǎng)絡(luò)裝置800。圖9所繪示的是為依據(jù)本發(fā)明的另一實(shí)施例舉例說明具有一網(wǎng)頁分析器904的另一網(wǎng)絡(luò)裝置卯0。網(wǎng)絡(luò)裝置卯0包含有一超文本傳輸協(xié)議(HyperTextTransferProtocol,HTTP)代理服務(wù)器(proxy)902、一網(wǎng)頁分析器904、一傳輸4空制十辦i義/網(wǎng)纟各十辦i義(TransmissionControlProtocol/InternetProtocol,TCP/IP)層元件906以及一網(wǎng)絡(luò)驅(qū)動(dòng)器908。超文本標(biāo)記語言代理服務(wù)器卯2用于經(jīng)由與在一網(wǎng)絡(luò)910上的其他服務(wù)器互動(dòng)來處理用戶端計(jì)算機(jī)關(guān)于超文本傳輸協(xié)議的請(qǐng)求與回應(yīng),以及將超文本標(biāo)記語言文件傳送到網(wǎng)頁分析器904,其中網(wǎng)頁分析器904與圖4所示的網(wǎng)頁分析器402相同。此外,網(wǎng)頁分析器904也可以用來將被列入黑名單的某些統(tǒng)一資源定位器(UniformResourceLocator,URL)過濾出來。類似于網(wǎng)絡(luò)裝置800,在這些用戶端計(jì)算機(jī)以及網(wǎng)絡(luò)910之間所有的網(wǎng)絡(luò)傳輸同樣也都會(huì)經(jīng)過網(wǎng)絡(luò)裝置900,而另外一種可行的方式則是可以讓網(wǎng)絡(luò)裝置900處理部分的網(wǎng)絡(luò)傳輸,例如超文本傳輸協(xié)議的網(wǎng)絡(luò)傳輸。在一實(shí)施例的設(shè)定中,網(wǎng)絡(luò)裝置800以及網(wǎng)絡(luò)裝置900兩者中的全部方塊都可以是軟件元件,而這些軟件元件由這些網(wǎng)絡(luò)裝置中的一或多個(gè)處理單元所執(zhí)行,而另外一種可行的方式則是這些方塊的一些功能,例如由網(wǎng)頁分析器804以及網(wǎng)頁分析器卯4所支持的功能,可以利用一或多個(gè)專用的半導(dǎo)體裝置來實(shí)現(xiàn)。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,凡依本發(fā)明權(quán)利要求書所做的均等變化與修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。權(quán)利要求1.一種用于防止網(wǎng)頁攻擊的方法,該方法包含有:在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。2.如權(quán)利要求l所述的方法,還包含有對(duì)該網(wǎng)頁中的每一個(gè)對(duì)象屬性指派一數(shù)值分?jǐn)?shù),其中該數(shù)值分?jǐn)?shù)反映與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁相關(guān)的一個(gè)別風(fēng)險(xiǎn)程度。3.如權(quán)利要求2所述的方法,其中該檢驗(yàn)步驟還包含有辨識(shí)來自該網(wǎng)頁的原始代碼的一未檢查過的對(duì)象;以及從該未檢查過的對(duì)象取得該對(duì)象屬性。4.如權(quán)利要求3所述的方法,其中該存取步驟還包含有將該未檢查過的對(duì)象的該對(duì)象屬性與一已知的特征數(shù)據(jù)庫進(jìn)行比較。5.如權(quán)利要求3所述的方法,其中該存取步驟還包含有確認(rèn)是否有與該網(wǎng)頁相關(guān)的一異常狀態(tài);以及判斷與該異常狀態(tài)相關(guān)的該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。6.如權(quán)利要求5所述的方法,其中該判斷步驟還包含有在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用與異常狀態(tài)相關(guān)的該對(duì)象屬性來更新該已知的特征數(shù)據(jù)庫。7.如權(quán)利要求5所述的方法,其中該判斷步驟還包含有在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用該網(wǎng)頁的一位置來更新該已知的特征數(shù)據(jù)庫。8.如權(quán)利要求l所述的方法,其中該動(dòng)作包含有回報(bào)結(jié)果關(guān)于存取該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。9.如權(quán)利要求l所述的方法,其中該動(dòng)作包含有開始進(jìn)行一程序來清除該網(wǎng)頁。10.—種設(shè)定用于防止網(wǎng)頁攻擊的網(wǎng)絡(luò)裝置,該網(wǎng)絡(luò)裝置包含有一存儲(chǔ)器系統(tǒng);以及一處理單元,其中該處理單元系設(shè)定用于在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。11.如權(quán)利要求10所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于對(duì)該網(wǎng)頁中的每一個(gè)對(duì)象屬性指派一數(shù)值分?jǐn)?shù),其中該數(shù)值分?jǐn)?shù)反映與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁相關(guān)的一個(gè)別風(fēng)險(xiǎn)程度。12.如權(quán)利要求11所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于辨識(shí)來自該網(wǎng)頁的原始代碼的一未檢查過的對(duì)象;以及從該未檢查過的對(duì)象取得該對(duì)象屬性。13.如權(quán)利要求12所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于將該未檢查過的對(duì)象的該對(duì)象屬性與存儲(chǔ)在該存儲(chǔ)器系統(tǒng)的一已知的特征數(shù)據(jù)庫進(jìn)行比較。14.如權(quán)利要求12所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于將該未檢查過的對(duì)象的該對(duì)象屬性與由該網(wǎng)絡(luò)裝置外部的一裝置所維持的一已知的特征數(shù)據(jù)庫進(jìn)行比較。15.如權(quán)利要求12所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于確認(rèn)是否有與該網(wǎng)頁相關(guān)的一異常狀態(tài);以及判斷與該異常狀態(tài)相關(guān)的該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。16.如權(quán)利要求15所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用與異常狀態(tài)相關(guān)的該對(duì)象屬性來更新該已知的特征^:據(jù)庫。17.如權(quán)利要求15所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用該網(wǎng)頁的一位置來更新該已知的特征數(shù)據(jù)庫。18.如權(quán)利要求10所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于回報(bào)結(jié)果關(guān)于存取該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。19.如權(quán)利要求10所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于開始進(jìn)行一程序來清除該網(wǎng)頁。20.—種計(jì)算機(jī)可讀介質(zhì),其包含有用于一網(wǎng)頁分析器的一指令序列,當(dāng)該指令序列被一網(wǎng)絡(luò)裝置中的一處理單元所執(zhí)行時(shí),會(huì)使該處理單元運(yùn)在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。21.如權(quán)利要求20所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一啟發(fā)式引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元運(yùn)行如下對(duì)該網(wǎng)頁中的每一個(gè)對(duì)象屬性指派一數(shù)值分?jǐn)?shù),其中該數(shù)值分?jǐn)?shù)反映與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁相關(guān)的一個(gè)別風(fēng)險(xiǎn)程度。22.如權(quán)利要求21所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一以特征為根據(jù)的引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元運(yùn)行如下辨識(shí)來自該網(wǎng)頁的原始代碼的一未檢查過的對(duì)象;以及從該未檢查過的對(duì)象取得該對(duì)象屬性。23.如權(quán)利要求22所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一以特征為根據(jù)的引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元運(yùn)行如下將該未檢查過的對(duì)象的該對(duì)象屬性與一已知的特征數(shù)據(jù)庫進(jìn)行比較。24.如權(quán)利要求22所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一啟發(fā)式引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元確認(rèn)是否有與該網(wǎng)頁相關(guān)的一異常狀態(tài);以及判斷與該異常狀態(tài)相關(guān)的該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。25.如權(quán)利要求24所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一啟發(fā)式引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元運(yùn)行如下在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用與異常狀態(tài)相關(guān)的該對(duì)象屬性來更新該已知的特征數(shù)據(jù)庫。26.如權(quán)利要求24所述的計(jì)算機(jī)可讀介質(zhì),還包含有用于一啟發(fā)式引擎的一指令序列,當(dāng)該指令序列被該處理單元所執(zhí)行時(shí),會(huì)使該處理單元在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用該網(wǎng)頁的一位置來更新該已知的特征數(shù)據(jù)庫。27.如權(quán)利要求20所述的計(jì)算機(jī)可讀介質(zhì),其中該動(dòng)作包含有回報(bào)結(jié)果關(guān)于存取該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。28.如權(quán)利要求20所述的計(jì)算機(jī)可讀介質(zhì),其中該動(dòng)作包含有開始進(jìn)行一程序來清除該網(wǎng)頁。29.—種設(shè)定用于防止網(wǎng)頁攻擊的處理單元,該處理單元系設(shè)定用于在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。30.如權(quán)利要求29所述的網(wǎng)絡(luò)裝置,其中該處理單元還設(shè)定用于對(duì)該網(wǎng)頁中的每一個(gè)對(duì)象屬性指派一數(shù)值分?jǐn)?shù),其中該數(shù)值分?jǐn)?shù)系反映與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁相關(guān)的一個(gè)別風(fēng)險(xiǎn)程度。31.如權(quán)利要求30所述的處理單元,其中該處理單元還設(shè)定用于辨識(shí)來自該網(wǎng)頁的原始代碼的一未;^查過的對(duì)象;以及從該未檢查過的對(duì)象取得該對(duì)象屬性。32.如權(quán)利要求31所述的處理單元,其中該處理單元還設(shè)定用于將該未檢查過的對(duì)象的該對(duì)象屬性與存儲(chǔ)在該存儲(chǔ)器系統(tǒng)的一已知的特征數(shù)據(jù)庫進(jìn)行比較。33.如權(quán)利要求31所述的處理單元,其中該處理單元還設(shè)定用于確認(rèn)是否有與該網(wǎng)頁相關(guān)的一異常狀態(tài);以及判斷與該異常狀態(tài)相關(guān)的該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。34.如權(quán)利要求33所述的處理單元,其中該處理單元還設(shè)定用于在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用與異常狀態(tài)相關(guān)的該對(duì)象屬性來更新該已知的特征數(shù)據(jù)庫。35.如權(quán)利要求33所述的處理單元,其中該處理單元還設(shè)定用于在每一次反復(fù)進(jìn)行該存取步驟時(shí)追蹤該數(shù)值分?jǐn)?shù);將該數(shù)值分?jǐn)?shù)與該臨界值進(jìn)行比較;以及如果該數(shù)值分?jǐn)?shù)超過該臨界值時(shí),利用該網(wǎng)頁的一位置來更新該已知的特征數(shù)據(jù)庫。36.如權(quán)利要求29所述的處理單元,其中該處理單元還設(shè)定用于回報(bào)結(jié)果關(guān)于存取該集體風(fēng)險(xiǎn)程度是否達(dá)到一臨界值。37.如權(quán)利要求29所述的處理單元,其中該處理單元還設(shè)定用于開始進(jìn)行一程序來清除該網(wǎng)頁。全文摘要本發(fā)明公開一種用于防止網(wǎng)頁攻擊的方法與裝置。具體而言,本發(fā)明的一實(shí)施例公開了一種方法,該方法包含有在一用戶端計(jì)算機(jī)接收一網(wǎng)頁前,即時(shí)檢驗(yàn)由該用戶端計(jì)算機(jī)所請(qǐng)求的該網(wǎng)頁的一對(duì)象(object)屬性;依據(jù)檢驗(yàn)該對(duì)象屬性的結(jié)果來存取與對(duì)該用戶端計(jì)算機(jī)造成傷害的該網(wǎng)頁的一集體風(fēng)險(xiǎn)程度;以及依據(jù)該集體風(fēng)險(xiǎn)程度來對(duì)該網(wǎng)頁進(jìn)行一動(dòng)作。文檔編號(hào)G06F21/00GK101382979SQ200810212828公開日2009年3月11日申請(qǐng)日期2008年9月5日優(yōu)先權(quán)日2007年9月5日發(fā)明者簡(jiǎn)士偉申請(qǐng)人:鴻璟科技股份有限公司