符運(yùn)輝
摘要:現(xiàn)階段絕大多數(shù)違法犯罪活動(dòng)依托境外網(wǎng)站實(shí)施,因此國際出入口具有大量違法網(wǎng)站相關(guān)數(shù)據(jù),為了提高有關(guān)部門網(wǎng)絡(luò)安全監(jiān)測力度,針對國際口HTTP POST報(bào)文數(shù)據(jù)進(jìn)行監(jiān)測,通過自動(dòng)數(shù)據(jù)訓(xùn)練、學(xué)習(xí),提取違法網(wǎng)站的行為特征,實(shí)現(xiàn)報(bào)文數(shù)據(jù)的自動(dòng)分類識(shí)別,積累違法網(wǎng)站行為庫;同時(shí),結(jié)合搜索引擎報(bào)送的定制化分類結(jié)果數(shù)據(jù)、網(wǎng)馬識(shí)別信息,進(jìn)行綜合分析、深度挖掘,實(shí)現(xiàn)情報(bào)線索由人工挖掘向系統(tǒng)自動(dòng)產(chǎn)生的轉(zhuǎn)變,為構(gòu)建主動(dòng)發(fā)現(xiàn)、主動(dòng)出擊的情報(bào)導(dǎo)偵工作體系提供技術(shù)支撐。
關(guān)鍵詞:HTTP POST報(bào)文數(shù)據(jù)分析;自動(dòng)分類識(shí)別;違法網(wǎng)站行為庫;自定義關(guān)鍵詞庫;
中圖分類號:TP393? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? 文章編號:1009-3044(2019)03-0003-03
進(jìn)入21世紀(jì)后,隨著計(jì)算機(jī)和網(wǎng)絡(luò)的普及,網(wǎng)絡(luò)犯罪呈現(xiàn)井噴之勢。據(jù)統(tǒng)計(jì),近年來,利用計(jì)算機(jī)和網(wǎng)絡(luò)的犯罪以每年30%的速度遞增,每年給我國帶來的直接經(jīng)濟(jì)損失過億,有近2/3的網(wǎng)絡(luò)用戶曾成為網(wǎng)絡(luò)犯罪的犧牲品。網(wǎng)絡(luò)犯罪給人民正常生活帶來巨大危害,為國家造成了巨大損失,嚴(yán)重影響社會(huì)安定團(tuán)結(jié)。
計(jì)算機(jī)網(wǎng)絡(luò)犯罪具有隱蔽性、技術(shù)性、復(fù)雜性、跨國性、對象廣泛等特點(diǎn),各類技術(shù)手段獲得多種數(shù)據(jù)來源,將海量數(shù)據(jù)中的有價(jià)值數(shù)據(jù)進(jìn)行分類識(shí)別所需要的技術(shù)條件、硬件要求都比較高,耗費(fèi)人力物力極大。目前相關(guān)部門掌握了海量報(bào)文數(shù)據(jù),但由于情報(bào)挖掘的自動(dòng)化方式的缺失,從中自動(dòng)產(chǎn)生有價(jià)值的情報(bào)信息較為困難。
針對有關(guān)部門獲取的HTTP POST數(shù)據(jù)進(jìn)行訓(xùn)練、分類、識(shí)別,自動(dòng)分類篩選出網(wǎng)絡(luò)攻擊、淫穢色情、網(wǎng)絡(luò)賭博等違法犯罪相關(guān)數(shù)據(jù),結(jié)合搜索引擎報(bào)送的違法網(wǎng)頁數(shù)據(jù)、網(wǎng)馬識(shí)別信息等,經(jīng)過線索分析預(yù)警,進(jìn)一步關(guān)聯(lián)碰撞、統(tǒng)計(jì)分析,自動(dòng)整理發(fā)現(xiàn)違法犯罪情報(bào)線索,從而實(shí)現(xiàn)從數(shù)據(jù)到線索的轉(zhuǎn)變,提高主動(dòng)偵察、主動(dòng)打擊的能力。
本文所研究的專用腳本發(fā)現(xiàn)算法,根據(jù)已有的報(bào)文,分析出報(bào)文中的關(guān)鍵參數(shù)與報(bào)文專用非專用類型信息的關(guān)聯(lián),提取出專用腳本關(guān)鍵詞庫(已有自定義的關(guān)鍵詞庫),使用詞庫實(shí)現(xiàn)相關(guān)算法對報(bào)文是否專用進(jìn)行判斷,并給出判斷的把握程度,實(shí)現(xiàn)數(shù)據(jù)自動(dòng)歸類。
1 HTTP POST報(bào)文預(yù)處理
1)原始輸入為post報(bào)文與標(biāo)簽,標(biāo)簽為post報(bào)文所屬域名的類型,post報(bào)文內(nèi)容如下:
使用消息摘要算法輸出作為該報(bào)文的唯一標(biāo)識(shí)。根據(jù)報(bào)文的標(biāo)識(shí)可統(tǒng)計(jì)報(bào)文在不同網(wǎng)站的使用情況判斷報(bào)文是否為專用報(bào)文。若報(bào)文2.1在已搜集的數(shù)據(jù)中,標(biāo)簽值為1的網(wǎng)站中使用了400次,標(biāo)簽值為2的網(wǎng)站中使用了100次,由于400/500>70%(在本項(xiàng)目中,一個(gè)報(bào)文若穩(wěn)定的出現(xiàn)在某一類型網(wǎng)站中超過70%比例,則該腳本將被為該類型專用報(bào)文),該報(bào)文為類型1的專用報(bào)文。
3)根據(jù)以上所敘述內(nèi)容,可以報(bào)文為輸入,得到以下結(jié)構(gòu)的數(shù)據(jù):
表2中第一列為報(bào)文的標(biāo)識(shí),第二列為報(bào)文的關(guān)鍵字集合,第三列為專用標(biāo)簽,1表示該報(bào)文為專用報(bào)文,0表示非專用報(bào)文。根據(jù)專用報(bào)文信息提取專用腳本常用詞庫,首先統(tǒng)計(jì)所有腳本中的關(guān)鍵字出現(xiàn)次數(shù)按從大到小提取前6000個(gè)關(guān)鍵字,而后根據(jù)專用腳本中出現(xiàn)次數(shù)排序取前4000個(gè)關(guān)鍵字,4000個(gè)關(guān)鍵字作為專用報(bào)文字典。
根據(jù)專用報(bào)文字典,將每一條報(bào)文映射成一個(gè)向量。假設(shè)字典為:
某一條報(bào)文的關(guān)鍵字集合為as ks heart,那么該條報(bào)文映射成的向量為:
向量中的每一列都對應(yīng)著字典中的一個(gè)字,報(bào)文中存在該關(guān)鍵字則填1,否則填0。將表格2專用信息中所有報(bào)文轉(zhuǎn)換為向量后,即可用于學(xué)習(xí)算法訓(xùn)練模型。表6 圖片開運(yùn)算效果
2 學(xué)習(xí)算法
每個(gè)報(bào)文的向量維度在本項(xiàng)目中均為4000維,即專用腳本詞庫中常用詞的數(shù)目,第三列中1表示專用,0表示非專用。得到該數(shù)據(jù)后即可用以訓(xùn)練機(jī)器學(xué)習(xí)模型并用以預(yù)測。在本項(xiàng)目中使用了30000報(bào)文用以訓(xùn)練,專用腳本和非專用腳本比例為1:1,10000報(bào)文用以測試分類模型的效果。專用腳本與非專用腳本比例為3:2。表現(xiàn)較好的模型為邏輯回歸模型、支持向量機(jī)模型、隨機(jī)森林模型,以下為其具體評價(jià)指標(biāo)。
3 項(xiàng)目文件說明
1)在specialScriptDetection文件夾下,有extractKeyWord.py和main.py兩個(gè)文件。extractKeyWord.py主要任務(wù)為根據(jù)表2專用報(bào)文信息生成表3學(xué)習(xí)算法的輸入,文件中包含兩個(gè)函數(shù)get_wordbag、script2vec。Get_wordbag以表2為輸入,生成專用腳本關(guān)鍵詞庫,以下為該函數(shù)輸入輸出的形式。
2)script2vec函數(shù)的輸入是get_wordbag函數(shù)輸出的專用腳本關(guān)鍵詞庫與表格2.2中所提的關(guān)鍵字集合列。關(guān)鍵詞庫與關(guān)鍵字集合均以字符串列表的形式傳入。輸出表格3.1中所提的報(bào)文向量。Main.py文件包含了書寫的學(xué)習(xí)模型類mlclf,該類初始化使用報(bào)文向量和標(biāo)簽,并將數(shù)據(jù)分割為3:1作為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù),成員函數(shù)包含調(diào)用第三部分所提模型的代碼,一經(jīng)調(diào)用會(huì)使用75%的數(shù)據(jù)用以訓(xùn)練,25%的數(shù)據(jù)用以測試模型的效果,并將效果打印在命令行中。若需要獲取一個(gè)報(bào)文預(yù)測結(jié)果的把握程度,可以使用model.predict_proba(script_vector)獲取相應(yīng)的把握信息,model是各種模型的代指,在本項(xiàng)目中model為{lr,svc,rf}中的元素。
4 總結(jié)與展望
本文通過對邏輯回歸、支持向量機(jī)和隨機(jī)森林三種模型測試,依次對捕獲的http post報(bào)文進(jìn)行了預(yù)處理,其準(zhǔn)確率達(dá)到83%-85,召回率達(dá)到了87%-88%。進(jìn)一步提高了機(jī)器學(xué)習(xí)的準(zhǔn)確,減少了大量人工對數(shù)據(jù)的一一分析處理。實(shí)現(xiàn)情報(bào)線索由人工挖掘向系統(tǒng)自動(dòng)產(chǎn)生的轉(zhuǎn)變,為構(gòu)建主動(dòng)發(fā)現(xiàn)、主動(dòng)出擊的情報(bào)導(dǎo)偵工作體系提供技術(shù)支撐。
參考文獻(xiàn):
[1] 呂國英,任瑞征.算法設(shè)計(jì)與分析[M].清華大學(xué)出版社,2009.
[2] 成洪靜,陳立潮,張英俊,等.基于SVM的多分類器構(gòu)造算法的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008.
[3] [沙特]M.H Alsuwaiyel.算法設(shè)計(jì)與分析[M].方世昌,譯.電子工業(yè)出版社,2005.
[4] 嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)[M].清華大學(xué)出版社,1997.
[5] 楊啟帆,方道元.數(shù)學(xué)建模[M].杭州:浙江大學(xué)出版社,1999.
[6] 趙靜,但琦.數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)[M].北京:高等教育出版社,2010.
[7] 孫強(qiáng). 基于ASP.NET 的專題網(wǎng)站的研究與設(shè)計(jì)[D]. 東北師范大學(xué),2006.
[8] 周佩德.數(shù)據(jù)庫原理及應(yīng)用[M].北京:電子工業(yè)出版社,2004.
【通聯(lián)編輯:唐一東】