專利名稱::基于網(wǎng)頁(yè)解析的安全掃描方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)
技術(shù)領(lǐng)域:
,尤其涉及一種基于網(wǎng)頁(yè)解析的安全掃描方法及系統(tǒng)。
背景技術(shù):
:隨著互聯(lián)網(wǎng)的高速發(fā)展,圍繞其而產(chǎn)生的各種網(wǎng)頁(yè)技術(shù)也層出不窮,但是很多網(wǎng)頁(yè)技術(shù)中不可避免的遇到了需要抓存網(wǎng)頁(yè)以及網(wǎng)頁(yè)內(nèi)嵌的一些資源的問(wèn)題,如安全掃描技術(shù),這便用到了網(wǎng)頁(yè)解析技術(shù)。目前,網(wǎng)頁(yè)解析技術(shù)主要有以下兩種:第一種是DOM樹(shù)方法:將待解析網(wǎng)頁(yè)解析為DOM(DocumentObjectModel,文檔對(duì)象模型)樹(shù)。從DOM樹(shù)的根結(jié)點(diǎn)開(kāi)始遍歷,識(shí)別DOM樹(shù)中的正文結(jié)點(diǎn)和垃圾詞結(jié)點(diǎn),對(duì)識(shí)別出的正文結(jié)點(diǎn)按網(wǎng)頁(yè)的樓層進(jìn)行劃分。第二種是哈希法比對(duì)模板庫(kù)方法:為待解析網(wǎng)頁(yè)的目錄生成哈希值,根據(jù)生成的哈希值在網(wǎng)頁(yè)模板庫(kù)中的模板哈希表中查找是否存在該值;若存在,按照該值對(duì)應(yīng)的模板對(duì)待解析網(wǎng)頁(yè)進(jìn)行解析;若不存在,查找待解析網(wǎng)頁(yè)的同類型網(wǎng)頁(yè),利用所有查找到的同類型網(wǎng)頁(yè)生成與待解析網(wǎng)頁(yè)對(duì)應(yīng)的模板,最后利用該模板解析待解析網(wǎng)頁(yè)。上述兩種網(wǎng)頁(yè)解析方法雖然可實(shí)現(xiàn)對(duì)網(wǎng)頁(yè)內(nèi)容的解析,但都有一定局限性。第一種方法只能解析出網(wǎng)頁(yè)的正文內(nèi)容,其余內(nèi)容均被丟棄;第二種方法則需要利用模版,這必然會(huì)增加一些限制,并且會(huì)降低網(wǎng)頁(yè)解析的效率。而現(xiàn)有安全掃描技術(shù),如敏感詞掃描、掛馬掃描等,一般通過(guò)數(shù)據(jù)訪問(wèn)接口獲取全部的網(wǎng)頁(yè)源碼,根據(jù)檢測(cè)規(guī)則對(duì)全部的網(wǎng)頁(yè)源碼做匹配檢測(cè)。實(shí)際上,在做敏感詞掃描時(shí),一般只對(duì)網(wǎng)頁(yè)中需要顯示出來(lái)的內(nèi)容感興趣,而對(duì)源碼中其他數(shù)據(jù),如一些不被顯示的標(biāo)簽數(shù)據(jù)不感興趣;在做掛馬掃描時(shí),源碼中并非所有的標(biāo)簽都存在掛馬的風(fēng)險(xiǎn),而只對(duì)存在掛馬風(fēng)險(xiǎn)的內(nèi)容感興趣,其余內(nèi)容是完全可忽視的。若按現(xiàn)有技術(shù)進(jìn)行安全檢測(cè),則需要處理很多無(wú)意義的數(shù)據(jù),這會(huì)大大減低安全掃描的效率。綜上可知,現(xiàn)有基于網(wǎng)頁(yè)解析的安全掃描技術(shù),在實(shí)際使用上顯然存在不便與缺陷,所以有必要加以改進(jìn)。
發(fā)明內(nèi)容針對(duì)上述的缺陷,本發(fā)明的目的在于提供一種基于網(wǎng)頁(yè)解析的安全掃描方法及系統(tǒng),其將網(wǎng)頁(yè)源碼分解為不同類別的解析結(jié)果,然后針對(duì)性地分別對(duì)這些不同類別的解析結(jié)果進(jìn)行存儲(chǔ)和安全掃描,最大程度上避免了處理無(wú)意義的數(shù)據(jù)的問(wèn)題,從而大大提高了安全掃描的效率。為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于網(wǎng)頁(yè)解析的安全掃描方法,包括步驟有:解析步驟,通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;存儲(chǔ)步驟,分別存儲(chǔ)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽;安全掃描步驟,分別對(duì)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。根據(jù)本發(fā)明所述的安全掃描方法,所述解析步驟包括:通過(guò)所述第一正則表達(dá)式將所述網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)步驟包括:將所述網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ);將所述第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描步驟包括:對(duì)所述網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索;對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。根據(jù)本發(fā)明所述的安全掃描方法,所述安全掃描步驟之前還包括:統(tǒng)計(jì)所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)的步驟包括:判斷當(dāng)前所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè);若不相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。根據(jù)本發(fā)明所述的安全掃描方法,所述解析步驟還包括:通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)步驟還包括:將所述第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描步驟還包括:對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。根據(jù)本發(fā)明所述的安全掃描方法,所述安全掃描步驟之前還包括:統(tǒng)計(jì)所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)的步驟包括:判斷當(dāng)前所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若不相同,則對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。本發(fā)明還提供一種基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng),包括有:解析模塊,用于通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;存儲(chǔ)模塊,用于分別存儲(chǔ)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽;安全掃描模塊,用于分別對(duì)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。根據(jù)本發(fā)明所述的安全掃描系統(tǒng),所述解析模塊包括:第一解析子模塊,用于通過(guò)所述第一正則表達(dá)式將所述網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;第二解析子模塊,用于通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)模塊包括:第一存儲(chǔ)子模塊,用于將所述網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ);第二存儲(chǔ)子模塊,用于將所述第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描模塊包括:第一安全掃描子模塊,用于對(duì)所述網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索;第二安全掃描子模塊,用于對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。根據(jù)本發(fā)明所述的安全掃描系統(tǒng),還包括:第一統(tǒng)計(jì)模塊,用于在所述安全掃描模塊進(jìn)行安全掃描處理之前統(tǒng)計(jì)所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述第二安全掃描子模塊還用于判斷當(dāng)前所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè);若不相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。根據(jù)本發(fā)明所述的安全掃描系統(tǒng),所述解析模塊還包括:第三解析子模塊,用于通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)模塊還包括:第三存儲(chǔ)子模塊,用于將所述第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描模塊還包括:第三安全掃描子模塊,用于對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。根據(jù)本發(fā)明所述的安全掃描系統(tǒng),還包括:第二統(tǒng)計(jì)模塊,用于在所述安全掃描模塊進(jìn)行安全掃描處理之前統(tǒng)計(jì)所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述第三安全掃描子模塊還用于判斷當(dāng)前所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若不相同,則對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。本發(fā)明采用分解思想構(gòu)造特定的網(wǎng)頁(yè)解析規(guī)則,然后將其應(yīng)用于安全掃描中。具體是通過(guò)第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽并分別進(jìn)行存儲(chǔ),然后分別對(duì)所述網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。更好的是,通過(guò)預(yù)定的第二正則表達(dá)式和/或第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽和/或與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽,然后對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)和/或?qū)Φ诙W(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。借此,本發(fā)明將網(wǎng)頁(yè)源碼分解為不同類別的解析結(jié)果,然后針對(duì)性地分別對(duì)這些不同類別的解析結(jié)果進(jìn)行存儲(chǔ)和安全掃描,最大程度上避免了處理無(wú)意義的數(shù)據(jù)的問(wèn)題,從而大大提高了安全掃描的效率。圖1是本發(fā)明基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的結(jié)構(gòu)示意圖;圖2是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的結(jié)構(gòu)示意圖3是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的工作原理圖4是本發(fā)明基于網(wǎng)頁(yè)解析的安全掃描方法的流程圖;以及圖5是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描方法的流程圖。具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。圖1是本發(fā)明基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的結(jié)構(gòu)示意圖,所述安全掃描系統(tǒng)100包括有解析模塊10、存儲(chǔ)模塊20以及安全掃描模塊30,其中:所述解析模塊10,用于通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽。首先可通過(guò)HTTP(HyperTextTransferProtocol,超文件傳輸協(xié)議)、Socket(套接字)等請(qǐng)求獲取一個(gè)URL(UniformResoureLocator:統(tǒng)一資源定位符)網(wǎng)頁(yè)全部的網(wǎng)頁(yè)源碼,然后通過(guò)第一正則表達(dá)式對(duì)網(wǎng)頁(yè)源碼進(jìn)行解析。優(yōu)選的是,按網(wǎng)頁(yè)正文的規(guī)則設(shè)置第一正則表達(dá)式,通過(guò)第一正則表達(dá)式從完整的網(wǎng)頁(yè)源碼中解析出網(wǎng)頁(yè)正文,所述網(wǎng)頁(yè)源碼的其他內(nèi)容即為網(wǎng)頁(yè)標(biāo)簽。所述網(wǎng)頁(yè)正文為網(wǎng)頁(yè)中會(huì)顯示的內(nèi)容部分,所述網(wǎng)頁(yè)標(biāo)簽則是網(wǎng)頁(yè)中不會(huì)顯示的內(nèi)容部分,所述網(wǎng)頁(yè)標(biāo)簽包括標(biāo)題標(biāo)簽(TitleTag)、描述標(biāo)簽(DescriptionTag)、關(guān)鍵詞標(biāo)簽(KeywordsTag)等。所述存儲(chǔ)模塊20,用于分別存儲(chǔ)網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽,以分別保存為兩個(gè)解析結(jié)果O所述安全掃描模塊30,用于分別對(duì)網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。優(yōu)選的是,對(duì)網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索等,對(duì)網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)或布局檢測(cè)等。所述基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)100可以是內(nèi)置于信息處理終端的軟件單元,硬件單元或軟硬件結(jié)合單元。所述信息處理終端可以是電腦、手機(jī)、PDA(PersonalDigitalAssistant,個(gè)人數(shù)字助理)、平板電腦等。圖2是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的結(jié)構(gòu)示意圖,所述安全掃描系統(tǒng)100包括有解析模塊10、存儲(chǔ)模塊20以及安全掃描模塊30,其中:所述解析模塊10進(jìn)一步包括:第一解析子模塊11,用于通過(guò)第一正則表達(dá)式將網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽。優(yōu)選的是,按網(wǎng)頁(yè)正文的規(guī)則設(shè)置第一正則表達(dá)式,通過(guò)第一正則表達(dá)式從完整的網(wǎng)頁(yè)源碼中解析出網(wǎng)頁(yè)正文,所述網(wǎng)頁(yè)源碼的其他內(nèi)容即為網(wǎng)頁(yè)標(biāo)簽。所述網(wǎng)頁(yè)正文為網(wǎng)頁(yè)中會(huì)顯示的內(nèi)容部分,所述網(wǎng)頁(yè)標(biāo)簽則是網(wǎng)頁(yè)中不會(huì)顯示的內(nèi)容部分。第二解析子模塊12,用于通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中進(jìn)一步解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽(如<iframesrc=、〈ahref=等)。優(yōu)選的是,按照掛馬相關(guān)標(biāo)簽的規(guī)則構(gòu)造第二正則表達(dá)式。第三解析子模塊13,用于通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中進(jìn)一步解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽(如table、tr、td等)。優(yōu)選的是,按照布局相關(guān)標(biāo)簽的規(guī)則設(shè)置第三正則表達(dá)式。所述存儲(chǔ)模塊20進(jìn)一步包括:第一存儲(chǔ)子模塊21,用于將網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ),以保存為第一解析結(jié)果。第二存儲(chǔ)子模塊22,用于將第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ),以保存為第二解析結(jié)果。第三存儲(chǔ)子模塊23,用于將第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ),以保存為第三解析結(jié)果。所述安全掃描模塊30進(jìn)一步包括:第一安全掃描子模塊31,用于對(duì)網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索。第二安全掃描子模塊32,用于對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。優(yōu)選的是,通過(guò)掛馬的特征校驗(yàn)信息與第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行比對(duì)檢測(cè),判斷第一網(wǎng)頁(yè)標(biāo)簽中是否存在掛馬信息。第三安全掃描子模塊33,用于對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。優(yōu)選的是,所述安全掃描系統(tǒng)100還包括:第一統(tǒng)計(jì)模塊40,用于在安全掃描模塊30進(jìn)行安全掃描處理之前統(tǒng)計(jì)第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量。所述第二安全掃描子模塊32還用于判斷當(dāng)前第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同。若相同,則對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè)。若不相同,則對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。對(duì)于掛馬檢測(cè)部分,若發(fā)現(xiàn)標(biāo)簽數(shù)量發(fā)生變化,則會(huì)重點(diǎn)檢測(cè)該頁(yè)面,可提高掛馬檢測(cè)的準(zhǔn)確性。更好的是,所述安全掃描系統(tǒng)100還包括:第二統(tǒng)計(jì)模塊50,用于在安全掃描模塊30進(jìn)行安全掃描處理之前統(tǒng)計(jì)第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量。所述第三安全掃描子模塊33還用于判斷當(dāng)前第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同。若不相同,則對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè),否則不進(jìn)行布局檢測(cè)。在進(jìn)行布局檢測(cè)之前只需用當(dāng)前標(biāo)簽數(shù)量對(duì)比前一次掃描信息確定是否網(wǎng)頁(yè)變更,如果標(biāo)簽數(shù)量不對(duì)等,則頁(yè)面被修改。這樣就可省去匹配操作,從而在很大程度上提高掃描效率。為了更快更好的解決安全掃描中網(wǎng)頁(yè)信息的解析問(wèn)題,本發(fā)明采用分解思想,構(gòu)造特定的解析規(guī)則,利用正則匹配方法,將一個(gè)龐大的整體內(nèi)容,分解成不同的小模塊,逐一進(jìn)行分析處理,并且分解出的每一個(gè)小模塊都可單獨(dú)使用,從而大大提高了安全掃描的執(zhí)行效率。圖3是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng)的工作原理圖,首先通過(guò)Http,Socket等請(qǐng)求獲取一個(gè)URL網(wǎng)頁(yè)全部網(wǎng)頁(yè)源碼,利用正則匹配的方式,對(duì)整個(gè)網(wǎng)頁(yè)源碼進(jìn)行解析,根據(jù)不同的需求分解出不同的解析結(jié)果,并分類別進(jìn)行儲(chǔ)存和安全掃描,優(yōu)選用到的幾種解析實(shí)現(xiàn)方案如下:先寫(xiě)一個(gè)剝離解析網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽的第一正則表達(dá)式,將網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽分割開(kāi),將網(wǎng)頁(yè)正文信息采用物理或其它方式進(jìn)行存儲(chǔ),此為第一解析結(jié)果部分。然后對(duì)網(wǎng)頁(yè)標(biāo)簽進(jìn)行剝離處理,寫(xiě)一個(gè)可獲取與網(wǎng)頁(yè)掛馬內(nèi)容相關(guān)標(biāo)簽的第二正則表達(dá)式,只獲取具有掛馬風(fēng)險(xiǎn)的第一網(wǎng)頁(yè)標(biāo)簽的內(nèi)容信息(如〈iframesrc=、〈ahref=等)進(jìn)行存儲(chǔ),此為第二解析結(jié)果部分。再寫(xiě)一個(gè)可獲取網(wǎng)頁(yè)布局相關(guān)標(biāo)簽的第三正則表達(dá)式,在剝離的網(wǎng)頁(yè)標(biāo)簽中提取出和網(wǎng)頁(yè)布局相關(guān)的第二標(biāo)簽的內(nèi)容信息(如table、tr、td等)進(jìn)行存儲(chǔ),此為第三解析結(jié)果部分。所述第一解析結(jié)果部分,網(wǎng)頁(yè)正文信息,可進(jìn)行對(duì)敏感詞的查找和信息的篩選做預(yù)前處理,解析的思路和方式很多,敏感詞查找和信息檢索可利用中文分詞技術(shù)實(shí)現(xiàn)。所述第二解析結(jié)果部分,可進(jìn)行掛馬的特征校驗(yàn)信息可和第二部分獲取的標(biāo)簽內(nèi)容進(jìn)行比對(duì)檢測(cè)。所述第三解析結(jié)果部分,可對(duì)判斷網(wǎng)頁(yè)布局的變化打下基礎(chǔ)。上述第一解析結(jié)果部分和第二解析結(jié)果部分中在某種程度上存在著重疊現(xiàn)象,但它們分別存儲(chǔ),因此對(duì)用戶的需求判斷不存在沖突問(wèn)題。以上解析結(jié)果部分可同時(shí)存在,滿足用戶的多方面需求,也可只拿出某一個(gè)解析結(jié)果部分作為一個(gè)功能點(diǎn),滿足用戶的單方面需求。除此之外,根據(jù)不同的需求還可重新構(gòu)造匹配規(guī)則,再次細(xì)分各個(gè)解析模塊,滿足其他的功能。更好的是,對(duì)于第二解析結(jié)果部分和第三解析結(jié)果部分,還將統(tǒng)計(jì)解析出的標(biāo)簽數(shù)量。在進(jìn)行布局檢測(cè)之前只需用當(dāng)前標(biāo)簽數(shù)量對(duì)比前一次掃描信息確定是否網(wǎng)頁(yè)變更,如果標(biāo)簽數(shù)量不對(duì)等,則頁(yè)面被修改。這樣就可省去匹配操作,很大程度提高掃描效率。而掛馬檢測(cè)部分,若發(fā)現(xiàn)標(biāo)簽數(shù)量發(fā)生變化,則會(huì)重點(diǎn)檢測(cè)該頁(yè)面,可提高掛馬檢測(cè)的準(zhǔn)確性。圖4是本發(fā)明基于網(wǎng)頁(yè)解析的安全掃描方法的流程圖,其可以通過(guò)如圖1或圖2所示的安全掃描系統(tǒng)100實(shí)現(xiàn),包括步驟有:步驟S401,解析步驟,通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽。首先可通過(guò)HTTP、Socket等請(qǐng)求獲取一個(gè)URL網(wǎng)頁(yè)全部的網(wǎng)頁(yè)源碼,然后通過(guò)第一正則表達(dá)式對(duì)網(wǎng)頁(yè)源碼進(jìn)行解析。優(yōu)選的是,按網(wǎng)頁(yè)正文的規(guī)則設(shè)置第一正則表達(dá)式,通過(guò)第一正則表達(dá)式從完整的網(wǎng)頁(yè)源碼中解析出網(wǎng)頁(yè)正文,所述網(wǎng)頁(yè)源碼的其他內(nèi)容即為網(wǎng)頁(yè)標(biāo)簽。所述網(wǎng)頁(yè)正文為網(wǎng)頁(yè)中會(huì)顯示的內(nèi)容部分,所述網(wǎng)頁(yè)標(biāo)簽則是網(wǎng)頁(yè)中不會(huì)顯示的內(nèi)容部分,所述網(wǎng)頁(yè)標(biāo)簽包括標(biāo)題標(biāo)簽、描述標(biāo)簽、關(guān)鍵詞標(biāo)簽等。步驟S402,存儲(chǔ)步驟,分別存儲(chǔ)網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽,以分別保存為兩個(gè)解析結(jié)果O步驟S403,安全掃描步驟,分別對(duì)網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。優(yōu)選的是,對(duì)網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索等,對(duì)網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)或布局檢測(cè)坐寸ο本發(fā)明涉及網(wǎng)頁(yè)解析方法及其在安全掃描中的應(yīng)用,采用分模塊的解析處理思想,將大化小,各盡其責(zé),在每個(gè)小的模塊中比對(duì)檢索和檢測(cè)所需信息,大大的提高了解析效率和比對(duì)的差錯(cuò)率。根據(jù)這種將大化小的思想,擴(kuò)展思維還可在頁(yè)面解析中分出其它的小功能點(diǎn)出來(lái),滿足用戶的其它需求。圖5是本發(fā)明優(yōu)選基于網(wǎng)頁(yè)解析的安全掃描方法的流程圖,其可以通過(guò)如圖2所示的安全掃描系統(tǒng)100實(shí)現(xiàn),包括步驟有:步驟S501,對(duì)網(wǎng)頁(yè)源碼進(jìn)行解析。具體的是,通過(guò)第一正則表達(dá)式將網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽。步驟S502,通過(guò)第一正則表達(dá)式將網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文。步驟S503,將網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ),以保存為第一解析結(jié)果。步驟S504,對(duì)網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索。步驟S505,通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中進(jìn)一步解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽(如〈iframesrc=、〈ahref=等)。優(yōu)選的是,按掛馬相關(guān)標(biāo)簽的規(guī)則構(gòu)造第二正則表達(dá)式。步驟S506,將第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ),以保存為第二解析結(jié)果。步驟S507,對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。優(yōu)選的是,通過(guò)掛馬的特征校驗(yàn)信息與第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行比對(duì)檢測(cè),判斷第一網(wǎng)頁(yè)標(biāo)簽中是否存在掛馬信息。所述步驟S507步驟之前還可包括:統(tǒng)計(jì)第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量。所述步驟S507優(yōu)選為判斷當(dāng)前第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若相同,則對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè);若不相同,則對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。步驟S508,通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中進(jìn)一步解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽(如table、tr、td等)。優(yōu)選的是,按照布局相關(guān)標(biāo)簽的規(guī)則設(shè)置第三正則表達(dá)式。步驟S509,將第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ),以保存為第三解析結(jié)果。步驟S510,對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。所述步驟S510之前還可包括:統(tǒng)計(jì)第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量。所述步驟S510優(yōu)選為判斷當(dāng)前第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若不相同,則對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè),否則不對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。綜上所述,本發(fā)明采用分解思想構(gòu)造特定的網(wǎng)頁(yè)解析規(guī)則,然后將其應(yīng)用于安全掃描中。具體是通過(guò)第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽并分別進(jìn)行存儲(chǔ),然后分別對(duì)所述網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。更好的是,通過(guò)預(yù)定的第二正則表達(dá)式和/或第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽和/或與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽,然后對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)和/或?qū)Φ诙W(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。借此,本發(fā)明將網(wǎng)頁(yè)源碼分解為不同類別的解析結(jié)果,然后針對(duì)性地分別對(duì)這些不同類別的解析結(jié)果進(jìn)行存儲(chǔ)和安全掃描,最大程度上避免了處理無(wú)意義的數(shù)據(jù)的問(wèn)題,從而大大提高了安全掃描的效率。當(dāng)然,本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。權(quán)利要求1.一種基于網(wǎng)頁(yè)解析的安全掃描方法,其特征在于,包括步驟有:解析步驟,通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;存儲(chǔ)步驟,分別存儲(chǔ)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽;安全掃描步驟,分別對(duì)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。2.根據(jù)權(quán)利要求1所述的安全掃描方法,其特征在于,所述解析步驟包括:通過(guò)所述第一正則表達(dá)式將所述網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)步驟包括:將所述網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ);將所述第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描步驟包括:對(duì)所述網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索;對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。3.根據(jù)權(quán)利要求2所述的安全掃描方法,其特征在于,所述安全掃描步驟之前還包括:統(tǒng)計(jì)所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述對(duì)第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)的步驟包括:判斷當(dāng)前所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè);若不相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。4.根據(jù)權(quán)利要求f3任一項(xiàng)所述的安全掃描方法,其特征在于,所述解析步驟還包括:通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)步驟還包括:將所述第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描步驟還包括:對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。5.根據(jù)權(quán)利要求4所述的安全掃描方法,其特征在于,所述安全掃描步驟之前還包括:統(tǒng)計(jì)所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述對(duì)第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)的步驟包括:判斷當(dāng)前所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若不相同,則對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。6.一種基于網(wǎng)頁(yè)解析的安全掃描系統(tǒng),其特征在于,包括有:解析模塊,用于通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;存儲(chǔ)模塊,用于分別存儲(chǔ)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽;安全掃描模塊,用于分別對(duì)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。7.根據(jù)權(quán)利要求6所述的安全掃描系統(tǒng),其特征在于,所述解析模塊包括:第一解析子模塊,用于通過(guò)所述第一正則表達(dá)式將所述網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;第二解析子模塊,用于通過(guò)預(yù)定的第二正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與掛馬風(fēng)險(xiǎn)相關(guān)的第一網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)模塊包括:第一存儲(chǔ)子模塊,用于將所述網(wǎng)頁(yè)正文單獨(dú)進(jìn)行存儲(chǔ);第二存儲(chǔ)子模塊,用于將所述第一網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描模塊包括:第一安全掃描子模塊,用于對(duì)所述網(wǎng)頁(yè)正文進(jìn)行敏感詞查找和/或信息檢索;第二安全掃描子模塊,用于對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行掛馬檢測(cè)。8.根據(jù)權(quán)利要求7所述的安全掃描系統(tǒng),其特征在于,還包括:第一統(tǒng)計(jì)模塊,用于在所述安全掃描模塊進(jìn)行安全掃描處理之前統(tǒng)計(jì)所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述第二安全掃描子模塊還用于判斷當(dāng)前所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第一網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行正常掛馬檢測(cè);若不相同,則對(duì)所述第一網(wǎng)頁(yè)標(biāo)簽進(jìn)行重點(diǎn)掛馬檢測(cè)。9.根據(jù)權(quán)利要求61任一項(xiàng)所述的安全掃描系統(tǒng),其特征在于,所述解析模塊還包括:第三解析子模塊,用于通過(guò)預(yù)定的第三正則表達(dá)式,從所述網(wǎng)頁(yè)標(biāo)簽中解析出與網(wǎng)頁(yè)布局相關(guān)的第二網(wǎng)頁(yè)標(biāo)簽;所述存儲(chǔ)模塊還包括:第三存儲(chǔ)子模塊,用于將所述第二網(wǎng)頁(yè)標(biāo)簽單獨(dú)進(jìn)行存儲(chǔ);所述安全掃描模塊還包括:第三安全掃描子模塊,用于對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。10.根據(jù)權(quán)利要求9所述的安全掃描系統(tǒng),其特征在于,還包括:第二統(tǒng)計(jì)模塊,用于在所述安全掃描模塊進(jìn)行安全掃描處理之前統(tǒng)計(jì)所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量;所述第三安全掃描子模塊還用于判斷當(dāng)前所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量與上一次安全掃描時(shí)的所述第二網(wǎng)頁(yè)標(biāo)簽的數(shù)量是否相同;若不相同,則對(duì)所述第二網(wǎng)頁(yè)標(biāo)簽進(jìn)行布局檢測(cè)。全文摘要本發(fā)明適用于計(jì)算機(jī)網(wǎng)絡(luò)
技術(shù)領(lǐng)域:
,提供了一種基于網(wǎng)頁(yè)解析的安全掃描方法及系統(tǒng),所述包括步驟有解析步驟,通過(guò)預(yù)定的第一正則表達(dá)式將網(wǎng)頁(yè)的網(wǎng)頁(yè)源碼解析為網(wǎng)頁(yè)正文和網(wǎng)頁(yè)標(biāo)簽;存儲(chǔ)步驟,分別存儲(chǔ)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽;安全掃描步驟,分別對(duì)所述網(wǎng)頁(yè)正文和所述網(wǎng)頁(yè)標(biāo)簽進(jìn)行安全掃描處理。借此,本發(fā)明將網(wǎng)頁(yè)源碼分解為不同類別的解析結(jié)果,然后針對(duì)性地分別對(duì)這些不同類別的解析結(jié)果進(jìn)行存儲(chǔ)和安全掃描,最大程度上避免了處理無(wú)意義的數(shù)據(jù)的問(wèn)題,從而大大提高了安全掃描的效率。文檔編號(hào)H04L29/06GK103118028SQ20131004928公開(kāi)日2013年5月22日申請(qǐng)日期2013年2月7日優(yōu)先權(quán)日2013年2月7日發(fā)明者曾洪偉申請(qǐng)人:上海上訊信息技術(shù)有限公司