李亞超 郁凱旋 渠慎明 李 紅 任一墨 張東生
(1.河南大學(xué) 開封 475000)(2.中國(guó)科學(xué)院大學(xué) 北京 100049)
隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,互聯(lián)網(wǎng)設(shè)備在網(wǎng)絡(luò)空間中占據(jù)了越來(lái)越重要的地位,并且已經(jīng)融入到人們的生活當(dāng)中,例如網(wǎng)絡(luò)攝像頭、網(wǎng)絡(luò)打印機(jī)、路由器等。為了管理和適應(yīng)公共網(wǎng)絡(luò)設(shè)備數(shù)量的快速增長(zhǎng),獲取網(wǎng)絡(luò)設(shè)備的特性也顯得非常必要。就很多公共網(wǎng)絡(luò)設(shè)備而言,人們并不知道它們的詳細(xì)信息,例如誰(shuí)才是這些設(shè)備真正的擁有者。
設(shè)備的單位歸屬信息在網(wǎng)絡(luò)中具有廣泛且重要的應(yīng)用??梢栽谕挥脩舻牟煌O(shè)備間建立所有權(quán)對(duì)象關(guān)系[1]。對(duì)于特定用戶使用的特定物聯(lián)網(wǎng)設(shè)備進(jìn)行分類[2]。
域名系統(tǒng)(Domain Name System,DNS)作為互聯(lián)網(wǎng)的一種公共資源,提供域名和IP地址之間的相互轉(zhuǎn)換的服務(wù),域名對(duì)網(wǎng)絡(luò)安全的重要性是毋庸置疑的。根據(jù)國(guó)家互聯(lián)網(wǎng)應(yīng)急中心(National Internet Emergency Center,CNCERT)2021年第17期《網(wǎng)絡(luò)安全信息與動(dòng)態(tài)周報(bào)》顯示[3],在該周內(nèi),我國(guó)境內(nèi)感染計(jì)算機(jī)惡意程序的主機(jī)數(shù)量約為96.2萬(wàn)個(gè),發(fā)現(xiàn)境內(nèi)被篡改網(wǎng)站數(shù)量1003個(gè);被植入后門的網(wǎng)站數(shù)量為1185個(gè);針對(duì)境內(nèi)網(wǎng)站的仿冒頁(yè)面數(shù)量為824個(gè)。Yu B等[4]指出,黑客通過(guò)域名產(chǎn)生算法(Domain Generation Algorithm,DGA)產(chǎn)生DGA惡意域名,竊取用戶主機(jī)上的信息和機(jī)密,導(dǎo)致用戶的個(gè)人隱私泄露、財(cái)產(chǎn)遭受損失。例如,從愛(ài)企查和企查查網(wǎng)站中查詢到的信息:(連云港贛榆和安湖國(guó)際大酒店有限公司,www.heanhu-hotel.com),通過(guò)手工驗(yàn)證,www.heanhu-hotel.com是一個(gè)充值游戲網(wǎng)站,這很有可能會(huì)造成用戶隱私泄露,威脅用戶財(cái)產(chǎn)安全。由此可以看出,對(duì)域名的單位歸屬問(wèn)題需要引起人們更多的關(guān)注。
一種傳統(tǒng)且直接的方法是查詢現(xiàn)有的數(shù)據(jù)庫(kù)來(lái)確定域名的所屬單位,例如DNS和WHOIS,用這種方式獲取到的信息包含有域名的諸多屬性,其中包括組織、注冊(cè)者、電子郵件和修改日期等。許多研究[5~7]通過(guò)查詢WHOIS來(lái)獲取設(shè)備的注冊(cè)信息,為其研究提供數(shù)據(jù)。但是通過(guò)這種方式獲得的域名所屬單位只是域名注冊(cè)時(shí)注冊(cè)者提供的單位信息,并不一定是域名真正的使用單位[8]。
目前針對(duì)域名的單位歸屬問(wèn)題,仍缺乏準(zhǔn)確、全面的解決方法。眾所周知,網(wǎng)站鏈接通常主要由HTTP協(xié)議名、網(wǎng)站域名和網(wǎng)頁(yè)所在位置三部分組成[9]。本文根據(jù)域名與網(wǎng)站對(duì)應(yīng)關(guān)系,基于多模態(tài)融合,設(shè)計(jì)了一個(gè)確定域名單位歸屬的方法。與傳統(tǒng)的方法相比,它提高了準(zhǔn)確性和實(shí)時(shí)性。本文的主要貢獻(xiàn)有:
1)設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)完整的識(shí)別域名單位歸屬的框架。
2)使用多模態(tài)融合的方法,引入了文本信息和圖像信息,對(duì)信息進(jìn)行交叉,提高對(duì)域名單位歸屬識(shí)別的準(zhǔn)確性。
3)在構(gòu)建的真實(shí)的域名數(shù)據(jù)集上,本文提出的方法能夠?qū)崿F(xiàn)識(shí)別域名單位歸屬,準(zhǔn)確率為84%。
本文從域名對(duì)應(yīng)的網(wǎng)站中獲取網(wǎng)站首頁(yè)的文字信息和圖像,再對(duì)收集到的圖像和文本信息進(jìn)行識(shí)別、處理、分析,從而得到域名所屬的單位。文中介紹的方法主要包括四個(gè)步驟:數(shù)據(jù)收集;對(duì)圖像做OCR(Optical Character Recognition,OCR)識(shí)別;對(duì)文本信息做NER(Named Entity Recognition)識(shí)別;對(duì)多源數(shù)據(jù)融合,進(jìn)而得到單位。具體方法流程見(jiàn)圖1。
圖1 設(shè)備單位歸屬的識(shí)別框架
1)數(shù)據(jù)收集:第一步:人工收集少量單位名稱,以這些單位名稱為基礎(chǔ),采用樹形結(jié)構(gòu)在企業(yè)查詢網(wǎng)站中爬取需要的信息;第二步:在各單位網(wǎng)站中爬取圖像和文字信息。
2)圖像處理:將從各網(wǎng)站中抓取的可能含有單位名稱等信息的圖像進(jìn)行OCR識(shí)別,提取文字信息。
3)文本信息處理:對(duì)從單位網(wǎng)站中抓取的文字信息,通過(guò)使用NER技術(shù),提取出其中包含的單位名稱。
4)多源數(shù)據(jù)融合:對(duì)獲取到的多源信息,做文本相似度匹配,從而確定域名所屬單位。
數(shù)據(jù)收集分為兩個(gè)部分:第一部分:在免費(fèi)在線查詢網(wǎng)站中抓取單位和單位對(duì)應(yīng)的網(wǎng)站,獲取域名;第二部分:根據(jù)網(wǎng)站鏈接抓取網(wǎng)站中首頁(yè)的文字和圖像。
由于在企業(yè)查詢網(wǎng)站中搜索不到政府機(jī)構(gòu)的網(wǎng)站信息,我們采用人工的方式在搜索引擎中收集政府機(jī)構(gòu)和事業(yè)單位的名稱和對(duì)應(yīng)網(wǎng)站,并以此作為第一層級(jí)爬取列表。
我們采用樹形結(jié)構(gòu),以第一層級(jí)單位為基礎(chǔ),以網(wǎng)絡(luò)爬蟲的方式在企業(yè)查詢網(wǎng)站中搜索第一層級(jí)單位。默認(rèn)搜索結(jié)果中的第一個(gè)就是該單位或相關(guān)度最高的單位,抓取該單位名稱和對(duì)應(yīng)的網(wǎng)站,同時(shí)抓取該單位對(duì)應(yīng)的對(duì)外投資企業(yè)和控股企業(yè),作為第二層級(jí)單位目錄,以此類推,共獲取有網(wǎng)站的單位1.8萬(wàn)個(gè)。數(shù)據(jù)的結(jié)構(gòu)類型為(單位,URL),例如:(魯醫(yī)控股有限公司,http://www.sfluyi.com/)。當(dāng)然,抓取的網(wǎng)站鏈接也有錯(cuò)誤的情況,例如:(國(guó)家海洋局極地考察辦公室,www.chinare.gov.cn/caa/),其真實(shí)的鏈接應(yīng)該是:(國(guó)家海洋局極地考察辦公室,http://chinare.mnr.gov.cn/),這是因?yàn)槠髽I(yè)查詢網(wǎng)站在采集數(shù)據(jù)時(shí)出現(xiàn)錯(cuò)誤。對(duì)于抓取到的網(wǎng)站鏈接的有效性,我們會(huì)在爬取網(wǎng)站信息時(shí)做了進(jìn)一步驗(yàn)證。隨后,我們根據(jù)單位的網(wǎng)站提取出對(duì)應(yīng)域名,例如:(魯醫(yī)控股有限公司,sfluyi.com)。
網(wǎng)站通常以文字和圖像相結(jié)合的方式給用戶傳遞信息,所有我們以首頁(yè)的文字信息和圖像作為確定域名單位歸屬的數(shù)據(jù)基礎(chǔ)。
由于網(wǎng)站服務(wù)器中不同的目錄路徑或端口對(duì)應(yīng)不同的網(wǎng)頁(yè),甚至是同一個(gè)單位下的不同部門,例如:(機(jī)關(guān)服務(wù)局,http://www.nhc.gov.cn/jgfwzx/new_index.shtml),(宣傳司,http://www.nhc.gov.cn/xcs/new_index.shtml),這兩個(gè)部門都屬于國(guó)家衛(wèi)生健康委員會(huì),所以如果直接使用企業(yè)查詢網(wǎng)站中查詢到的網(wǎng)站鏈接,很可能無(wú)法確定域名的單位歸屬。在這里,我們對(duì)獲取的原鏈接的目錄路徑進(jìn)行處理,只保留其根目錄。
我們使用網(wǎng)絡(luò)爬蟲抓取網(wǎng)站中的文字和圖像。為了獲取信息更加全面,在抓取網(wǎng)站首頁(yè)信息的同時(shí),對(duì)網(wǎng)頁(yè)頭部自動(dòng)截圖并保存,截圖的尺寸大小為1024*256像素。
網(wǎng)站中的部分圖像包含文字信息,這些文字信息中可能包含了單位理念、宣傳信息、單位名稱等信息。我們使用開源工具,從抓取到的圖像中識(shí)別出文字信息。
OCR技術(shù)流程大致包含三個(gè)階段,圖像預(yù)處理、文字檢測(cè)和文字識(shí)別。其中,文字檢測(cè)和文字識(shí)別是OCR識(shí)別中最重要的部分。本文使用基于ICDAR2015數(shù)據(jù)集訓(xùn)練的開源模型對(duì)抓取到的圖像進(jìn)行文字識(shí)別,該模型使用DB(Differentiable Binarization)+CRNN(Convolutional Recurrent Neural Network)的網(wǎng)絡(luò)結(jié)構(gòu)。
與傳統(tǒng)文本檢測(cè)方法相比,基于分割的文本檢測(cè)算法可以更準(zhǔn)確地檢測(cè)出形狀不規(guī)則的文字。常規(guī)的二值化操作通過(guò)設(shè)定固定的閾值,難以適應(yīng)復(fù)雜多變的文本檢測(cè)場(chǎng)景[10]。DB算法最核心的一點(diǎn)是使用了可微的二值化后處理操作,將二值化操作融合于分割網(wǎng)絡(luò)中,更準(zhǔn)確地定位文字的邊界框。如式(1)表示出了概率圖P和閾值圖T與二值化圖之間的關(guān)系,這使得二值化可微,其中k表示放大因子。
CRNN,即卷積遞歸神經(jīng)網(wǎng)絡(luò),是一種基于CNN、CTC、BiLSTM方法組合在一起的文字識(shí)別算法[11],對(duì)特定場(chǎng)景圖像中的文字有較好的識(shí)別效果。圖2展示了檢測(cè)和識(shí)別的過(guò)程。
圖2 OCR的輸入、輸出過(guò)程
網(wǎng)站首頁(yè)的文字中可能包含有公司名稱、產(chǎn)品介紹、位置等信息,因此,我們構(gòu)造了一個(gè)提取工具,用于從網(wǎng)站首頁(yè)的文字中提取出單位名稱。
命名體識(shí)別(NER)一般用于從自然語(yǔ)言中提取關(guān)鍵信息,例如人物、位置、組織、日期等。目前,NER技術(shù)已經(jīng)得到廣泛的使用。韓春燕等[12]將NER技術(shù)應(yīng)用于微博,進(jìn)行信息提取,可以消除微博中語(yǔ)言表達(dá)不規(guī)范造成的干擾。Y Wu[13]將NER技術(shù)應(yīng)用于臨床醫(yī)學(xué)中的電子健康記錄,可快速抽取醫(yī)療保健信息。
BiLSTM-CRF是一個(gè)經(jīng)典的NER算法,我們通過(guò)建立一個(gè)BiLSTM-CRF模型來(lái)提取網(wǎng)站文本中的單位名稱。圖3顯示了BiLSTM-CRF模型的典型結(jié)構(gòu)。我們基于Wikipedia[14]對(duì)BiLSTM-CRF進(jìn)行了預(yù)訓(xùn)練,從網(wǎng)站首頁(yè)的文本中提取單位名稱。如果字符是單位的開始字符,則句子中的首個(gè)字將被標(biāo)記為“B-ORG”,單位名稱非首字標(biāo)記為“I-ORG”,如果字符不是單位名稱中的字符,則將其標(biāo)記為“O”。例如,“中科院作出回應(yīng)”將被標(biāo)記為“B-ORG I-ORG I-ORG O O O O”,這意味著“中科院”是單位名稱,其中B-ORG表示該字符是單位名稱的開始字符,I-ORG表示該字符在單位名稱中,O表示字符不是單位名稱的一部分。
圖3 BiLSTM-CRF的典型結(jié)構(gòu)
在這里,我們將從圖像中提取的文字信息稱為圖像文字信息,將從文本中提取到的單位稱為文本單位信息。從圖像和文本中獲取到的信息可能包含有域名所屬的單位名稱,也可能是與之無(wú)關(guān)的單位名稱和大量的冗余信息。
使用單一數(shù)據(jù)源確定域名的歸屬單位。我們通過(guò)統(tǒng)計(jì)頻率的方式,分別從圖像文字信息和文本單位信息中篩選出最高頻次的字符串,將該字符串視為域名的歸屬單位。我們隨機(jī)測(cè)試了4000個(gè)域名,通過(guò)單一數(shù)據(jù)源的方式確定其單位。但是由于單一數(shù)據(jù)源很有可能缺失部分單位歸屬信息,由此可見(jiàn),統(tǒng)計(jì)頻次的方法不能滿足實(shí)際需要。
余弦相似度[15],是用向量空間中兩個(gè)向量夾角的余弦值作為衡量?jī)蓚€(gè)個(gè)體間差異的大小的度量,余弦值越接近1,兩個(gè)向量也就越相似。式(2)是計(jì)算兩個(gè)向量相似度的公式,其中a和b均為n維向量,xi和yi表示兩個(gè)向量各自維度對(duì)上的取值。在計(jì)算兩個(gè)字符串相識(shí)度時(shí),每一個(gè)字符被賦予一個(gè)維度,維度上的取值為該字符在字符串中出現(xiàn)的頻次。例如,A:“中國(guó)科學(xué)院”,B:“中國(guó)科學(xué)院大學(xué)”,A字符串的向量表示為(1,1,1,1,1,0,0),B字符串的向量表示為(1,1,1,1,1,1,1)。通過(guò)式(2)可計(jì)算出二者的相識(shí)度約為0.85。
我們采用余弦相似度對(duì)圖像文字信息和文本單位信息進(jìn)行兩兩語(yǔ)義交叉匹配,即用各個(gè)圖像文字信息對(duì)文本單位信息進(jìn)行逐一匹配。我們?nèi)〕鱿嗨贫茸罡叩囊粚?duì)文本作為域名歸屬候選單位,這一對(duì)文本中包含兩個(gè)單位名稱,一個(gè)取自圖像文本信息,另一個(gè)取自文本單位信息,如:聯(lián)泓新科,聯(lián)泓新材料科技股份有限公司。
本文使用網(wǎng)絡(luò)爬蟲從公開企業(yè)查詢網(wǎng)站中收集單位的網(wǎng)站鏈接,經(jīng)過(guò)域名提取、網(wǎng)站信息采集,數(shù)據(jù)處理與融合,實(shí)現(xiàn)域名歸屬單位的自動(dòng)查找。
根據(jù)3.1所述方法,共采集單位數(shù)約1.8萬(wàn)個(gè),由于采集單位數(shù)量較多,為減少工作量,我們根據(jù)收集數(shù)據(jù)時(shí)獲取到的單位的性質(zhì)標(biāo)簽將單位簡(jiǎn)單分為三類,并在各類別單位中隨機(jī)抽取部分單位作為實(shí)驗(yàn)數(shù)據(jù)。圖4為實(shí)驗(yàn)中用到的各類別單位的數(shù)量。
圖4 各類別單位的數(shù)量
本文設(shè)計(jì)的框架中,識(shí)別域名單位歸屬的準(zhǔn)確率主要受以下因素影響:圖像中文字的識(shí)別,文字中單位名稱的提取。我們使用準(zhǔn)確率和查全率[16]來(lái)評(píng)估每一步的性能,定義如式(3)和(4)。其中TP表示真正例,F(xiàn)P表示假正例,F(xiàn)N表示假反例。在我們收集的數(shù)據(jù)集中對(duì)模型進(jìn)行評(píng)估,DB+CRNN模型的準(zhǔn)確率為86%,查全率為79%,BiLSTM-CRF模型的準(zhǔn)確度為88%,查全率為81%。
在本文中,我們對(duì)不同類別單位的4000個(gè)域名進(jìn)行實(shí)驗(yàn),經(jīng)過(guò)與原單位標(biāo)簽對(duì)比和人工驗(yàn)證,在圖5我們給出了測(cè)試時(shí)所用域名對(duì)應(yīng)的單位類別的數(shù)量和識(shí)別成功的數(shù)量。實(shí)驗(yàn)結(jié)果表明:我們?cè)O(shè)計(jì)的框架其準(zhǔn)確率約為84%。圖6給出了本框架與單一數(shù)據(jù)源在識(shí)別域名單位歸屬結(jié)果上的對(duì)比。
圖5 查詢數(shù)和識(shí)別成功數(shù)
圖6 單一數(shù)據(jù)源與本方法比較
隨著互聯(lián)網(wǎng)的發(fā)展,域名的單位歸屬識(shí)別,監(jiān)管域名信息,了解域名用途,保證域名的使用安全等各個(gè)方面,對(duì)互聯(lián)網(wǎng)的安全與管理有著非常重要的作用。本文提出融合多模態(tài)信息的方法,在構(gòu)建的真實(shí)數(shù)據(jù)集上,對(duì)域名的單位歸屬識(shí)別準(zhǔn)確率達(dá)到了84%,驗(yàn)證了本文提出的方法具有一定的可行性。
目前,本文所提出的方法還存在一定的可拓展性,例如:可以根據(jù)圖像大小,篩選出包含目標(biāo)單位名稱的圖像,減少冗余的單位信息。下一步,我們將繼續(xù)完善此方法,并將其擴(kuò)展到其它網(wǎng)絡(luò)設(shè)備的歸屬方面。