米 淳 李 翔 付為民 梅 彬
(中國人民公安大學(xué) 網(wǎng)絡(luò)安全保衛(wèi)學(xué)院,北京 102623)
隨著網(wǎng)絡(luò)突飛猛進(jìn)的發(fā)展,網(wǎng)絡(luò)媒體已發(fā)展為繼報紙、廣播、電視之后的“第四媒體”,08年初中國網(wǎng)民數(shù)量更是超過了美國成為世界第一。如此驚人的發(fā)展速度使得網(wǎng)絡(luò)已經(jīng)成為信息的主要載體,每天都會有大量良莠不齊的信息產(chǎn)生于網(wǎng)絡(luò)并廣泛傳播,網(wǎng)絡(luò)也成為一些不法分子用來實施犯罪行為或者傳播違法信息的重要工具。在此背景下,公安部門對于網(wǎng)絡(luò)信息的掌握顯得尤為重要。隨著公安部門“實施科技強(qiáng)警戰(zhàn)略、建立公安情報信息系統(tǒng)”的目標(biāo)提出,公安網(wǎng)絡(luò)信息分析系統(tǒng)的建設(shè)需求空前迫切。本文在分析公安部門對網(wǎng)絡(luò)信息分析系統(tǒng)需求和相關(guān)技術(shù)的基礎(chǔ)上,結(jié)合公安部門已有的“公安情報信息綜合平臺”探討研究了網(wǎng)頁信息分析系統(tǒng)的設(shè)計與實現(xiàn)。
1.2.1 本文的研究方向:本文以互聯(lián)網(wǎng)信息過濾與定位系統(tǒng)的設(shè)計和實現(xiàn)為目標(biāo),深入分析了一個高效的互聯(lián)網(wǎng)敏感信息審查系統(tǒng)的系統(tǒng)架構(gòu)和基本工作流程等方面的問題。本文的主要工作如下:(1)結(jié)合國內(nèi)外有關(guān)搜索與模式匹配的技術(shù),設(shè)計了互聯(lián)網(wǎng)信息審查系統(tǒng)的整體架構(gòu);(2)介紹并分析了系統(tǒng)中三個重要的系統(tǒng)子模塊:信息收集模塊,信息預(yù)處理模塊和關(guān)鍵詞發(fā)現(xiàn)模塊的設(shè)計實現(xiàn);(3)通過實驗證明了該設(shè)計中系統(tǒng)架構(gòu)的可行性及高效性。
1.2.2 本論文的創(chuàng)新點(diǎn):(1)采用KMP快速匹配算法對網(wǎng)頁內(nèi)容進(jìn)行定位,效率相對于其他一般模式匹配算法大幅提高;(2)運(yùn)用爬蟲思想及算法從網(wǎng)絡(luò)獲取信息源,較人工查找方式實現(xiàn)了工作自動化及高效化。
根據(jù)《計算機(jī)信息網(wǎng)絡(luò)國際聯(lián)網(wǎng)安全保護(hù)管理辦法》中的第五條規(guī)定:任何單位和個人不得利用國際聯(lián)網(wǎng)制作、復(fù)制、查閱和傳播下列信息:煽動抗拒、破壞憲法和法律、行政法規(guī)實施的;煽動顛覆國家政權(quán),推翻社會主義制度的;煽動分裂國家、破壞國家統(tǒng)一的;煽動民族仇恨、民族歧視,破壞民族團(tuán)結(jié)的;捏造或者歪曲事實,散布謠言,擾亂社會秩序的;宣揚(yáng)封建迷信、淫穢、色情、賭博、暴力、兇殺、恐怖,教唆犯罪的;公然侮辱他人或者捏造事實誹謗他人的;損害國家機(jī)關(guān)信譽(yù)的;其他違反憲法和法律、行政法規(guī)的。
因此,開發(fā)敏感信息過濾系統(tǒng)旨在實現(xiàn)網(wǎng)絡(luò)安全監(jiān)察人員在虛擬復(fù)雜的網(wǎng)絡(luò)世界中及時有效地發(fā)現(xiàn)有關(guān)情報信息與違法犯罪信息,為打擊網(wǎng)絡(luò)違法犯罪及時提供有力的依據(jù)和線索,推動監(jiān)控網(wǎng)絡(luò)違法犯罪的信息化與自動化。
該敏感信息過濾系統(tǒng)主要實現(xiàn)以下功能。
(1)多級網(wǎng)頁鏈接獲取
一個網(wǎng)站一般包含了多級目錄,即擁有多個超鏈接,呈樹形結(jié)構(gòu)。而本系統(tǒng)中網(wǎng)頁鏈接獲取子系統(tǒng)針對該結(jié)構(gòu),采用“網(wǎng)絡(luò)爬蟲”?!熬W(wǎng)絡(luò)爬蟲”是一個自動提取網(wǎng)頁的程序,是搜索引擎的重要組成。本系統(tǒng)中,網(wǎng)頁鏈接獲取子系統(tǒng),根據(jù)一定的網(wǎng)頁分析算法過濾并保留指定類型的鏈接,并將其放入等待抓取的URL隊列。然后,它將根據(jù)廣度優(yōu)先的搜索策略,從隊列中的上級站點(diǎn)頁面逐級往該站點(diǎn)的下級頁面抓取網(wǎng)頁URL,并可根據(jù)用戶的需求重復(fù)上述過程,直到達(dá)到系統(tǒng)中設(shè)定的某一條件時停止。
(2)網(wǎng)頁內(nèi)容分析
1)網(wǎng)頁編碼格式分析
在當(dāng)今網(wǎng)頁設(shè)計中,包含中文的編碼格式主要有四種,其分別是:GB2312、BIG5、GBK以及UTF-8格式。其中GB2312是簡體中文編碼,其一個漢字占用2字節(jié),是大陸的主要編碼方式。但當(dāng)網(wǎng)頁中包含繁體中文、日文、韓文等等時,這些內(nèi)容可能無法被正確編碼;
很多國內(nèi)網(wǎng)頁指定的編碼都是GB2312的,它是對ASCII的一種擴(kuò)展,而ASCII—GB2312—GBK之間是向下兼容的,但Unicode中的 UTF-8與 ASCII、GB2312、GBK之間并不兼容,如果用UTF-8處理其他格式或者其他格式處理UTF-8的中文字符均會出現(xiàn)亂碼。因此,對頁面關(guān)鍵字分析之前需要對網(wǎng)頁編碼格式進(jìn)行檢測與轉(zhuǎn)換。
在UTF-8格式的頁面中,一般包含如下標(biāo)記:
其中HTTP-EQUIV類似于HTTP的頭部協(xié)議,它回應(yīng)給瀏覽器一些有用的信息,以幫助正確和精確地顯示網(wǎng)頁內(nèi)容。該標(biāo)記即在發(fā)送文檔前通知瀏覽器該網(wǎng)頁采用UTF-8格式的編碼,提前進(jìn)行編碼以實現(xiàn)正常的瀏覽。該網(wǎng)頁內(nèi)容分析子系統(tǒng)通過分析如上標(biāo)記中的編碼格式,并提前通過WideCharToMultiByt()函數(shù)進(jìn)行轉(zhuǎn)換,以達(dá)到關(guān)鍵詞準(zhǔn)確搜索的目的。
2)基于KMP算法的敏感信息關(guān)鍵詞分析
關(guān)鍵詞的搜索操作,即字符串的模式匹配,是各種串處理系統(tǒng)中最重要的操作之一。其定位函數(shù)為Index(S,T,pos),其中S為目標(biāo)串,T為模式串,pos表示第N個字符開始匹配。KMP算法是一種改進(jìn)的字符串匹配算法,其關(guān)鍵是根據(jù)給定的模式串定義一個next函數(shù),next函數(shù)包含了模式串局部匹配的信息。此算法可以在O(m+n)的時間數(shù)量級上完成串的模式匹配操作,其改進(jìn)在于:每當(dāng)一趟匹配過程中出現(xiàn)的字符比較不相等時,不需要回溯i指針,而是利用已經(jīng)得到的“部分匹配”的結(jié)果將模式串向右“滑動”盡可能遠(yuǎn)的一段距離后,繼續(xù)進(jìn)行比較,極大的縮短的對復(fù)雜網(wǎng)頁的搜索時間。KMP算法的匹配過程如下:
軟件在VC++6.0集成開發(fā)環(huán)境中編寫實現(xiàn)。其主要由用戶界面進(jìn)程以及負(fù)責(zé)下載與分析的工作者線程組成。其包含了以下子系統(tǒng):
(1)網(wǎng)頁獲取子系統(tǒng):其對指定URL的緩存文件進(jìn)行讀取分析,由于一般的HTML網(wǎng)頁中,標(biāo)簽的href屬性用于指定超鏈接目標(biāo)的 URL,因此,獲取
(2)網(wǎng)頁格式轉(zhuǎn)換子系統(tǒng):其首先判斷網(wǎng)頁編碼格式,即讀入網(wǎng)頁源代碼的1個字節(jié),檢測如下內(nèi)容:“
(3)基于KMP算法的網(wǎng)頁內(nèi)容搜索子系統(tǒng):該系統(tǒng)首先對用戶輸入的關(guān)鍵詞進(jìn)行分析或拆分操作,獲取NEXT[J]列表。隨后根據(jù)NEXT[J]列表對網(wǎng)頁內(nèi)容進(jìn)行關(guān)鍵詞的模式匹配操作。其實現(xiàn)的關(guān)鍵代碼如下:
本文在充分考慮基層網(wǎng)監(jiān)民警業(yè)務(wù)需求的基礎(chǔ)上,針對網(wǎng)頁敏感信息隱藏難以發(fā)現(xiàn)的問題,開發(fā)了一種基于KMP模式匹配算法的網(wǎng)頁敏感信息檢索及URL提取應(yīng)用軟件。使用本軟件能夠高速地對網(wǎng)頁敏感信息進(jìn)行精確或者模糊檢索,使民警在進(jìn)行網(wǎng)絡(luò)監(jiān)察時,面對海量網(wǎng)頁信息是不再 “束手無策”,對敏感信息“一覽無余”。
[1]孫鑫.VC++深入詳解[M].北京:電子工業(yè)出版社,2012
[2]吳偉民,嚴(yán)蔚敏[M].北京:清華大學(xué)出版社,2009
[3]《計算機(jī)信息網(wǎng)絡(luò)國際聯(lián)網(wǎng)安全保護(hù)管理辦法》,1997年12月