国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

監(jiān)督學習主導下惡意代碼行為分析與特征碼提取的研究

2018-10-17 01:37黃杰鋒龍華秋容振邦
關(guān)鍵詞:字符串數(shù)字簽名權(quán)重

◆黃杰鋒 龍華秋 容振邦

?

監(jiān)督學習主導下惡意代碼行為分析與特征碼提取的研究

◆黃杰鋒 龍華秋 容振邦

(五邑大學智能制造學部 廣東 529020)

鑒于近些年來計算機病毒有越來越猖狂的態(tài)勢,并且很多殺毒軟件存在較高的誤報或漏報的情況。因此本項目本著降低誤報率與漏報率的初衷,設(shè)計了一個惡意代碼檢測系統(tǒng)。本系統(tǒng)包括檢測模塊和評分模塊兩個主要功能。根據(jù)日常病毒樣本的分析邏輯以及平時病毒分析的經(jīng)驗,設(shè)計了最優(yōu)的檢測評分邏輯以及自定義了規(guī)則庫與規(guī)則權(quán)重分配。系統(tǒng)分析的結(jié)果結(jié)合了用戶的意見以決定是否提取病毒的惡意代碼特征碼。

監(jiān)督學習;病毒;惡意代碼;特征碼

0 引言

信息技術(shù)日漸發(fā)達,給人們帶來了許多便利的同時也帶來了相應(yīng)的個人利益問題,最主要的莫過于信息安全威脅。因此電腦用戶多數(shù)都選擇了安裝殺毒軟件,但是殺毒軟件有利也有弊,最突出的地方在于內(nèi)存資源占用較高,而且存在相當高的誤報率,漏報率。特別是人工智能、云查殺一類,如果白名單做的不夠全面,就容易誤報。根據(jù)賽門鐵克在全球范圍監(jiān)測的統(tǒng)計數(shù)據(jù),單從2014年的統(tǒng)計數(shù)據(jù)來看,全年就新增惡意代碼3.17億個,惡意代碼總數(shù)已達17億[1-2]。由于殼對抗的存在,現(xiàn)階段的病毒已經(jīng)完全可以“工廠化”制造,速度大大提高,對黑客的技術(shù)門檻大大降低,也使得病毒數(shù)量持續(xù)增長、感染持續(xù)擴散[3]。因此特征碼的質(zhì)量決定了查殺的質(zhì)量。

1 系統(tǒng)設(shè)計

現(xiàn)實場景中,惡意代碼可以藏匿在任何地方,常見的是以可執(zhí)行文件的形式,比如可以單文件完成一系列持久性惡意操作;也可以以白加黑形式,欺騙用戶點擊,悄然威脅著用戶電腦的安全。還有其他形式的存在,比如宏病毒,漏洞利用等,惡意代碼現(xiàn)在已經(jīng)成為混合體的形式,其界限已經(jīng)不是非常明確[4-5]。

本項目對常見病毒,也就是可執(zhí)行文件,展開分析。因此分析流程是,先判斷是否為自解壓包或者安裝包類程序,如果是的話,則需要進行解包操作,然后對每個子程序進行檢測。如果程序被加殼過,則需要進行脫殼操作。在檢測子程序時,如果發(fā)現(xiàn)資源節(jié)區(qū)大于0x20000 字節(jié)則提取資源,進一步匹配特征。

功能模塊主要分為兩個,第一個是檢測模塊,第二個是評分模塊。由于特征碼掃描法被認為是用來檢測已知計算機病毒的最簡單、最常用的方法,并且基于特征的檢測方法,具有效率高、誤報率低等優(yōu)點[5-7]。因此檢測模塊會首先被執(zhí)行,用于檢測特征,目的是為了檢查此前由評分模塊判斷為惡意并入庫的惡意特征庫。如果檢測模塊能命中此前的特征記錄,則不會再進行重新評分,可以用于迅速反饋結(jié)果。評分模塊是核心模塊,如圖 1所示,入口方法是 checkSubPE 方法,可以被遞歸調(diào)用,以循環(huán)檢查待分析程序的資源或者釋放出來的子 PE 文件。評分由 scanByClamav方法、checkAuth 方法、uploadVT 方法、getDynamicScore 方法來決定主要的分數(shù)。scanByClamav 方法用于調(diào)用 clamav 離線病毒庫來掃描程序,病毒庫可以進行更新。checkAuth 方法用于檢測 PE 文件中的數(shù)字簽名是否是正常的。uploadVT 方法用于將待分析程序的哈希作為搜索條件,在 VirusTotal 網(wǎng)站上查詢結(jié)果,而不是上傳文件。getDynamicScore 方法用于將待分析程序的哈希作為搜索條件,在 Hybrid-analysis 網(wǎng)站上查詢動態(tài)行為分析結(jié)果,而不是上傳文件。extractRes方法與 selfExtract 方法用于判斷待分析程序是否可以被提取,如果可以被提取則遞歸分析子 PE 程序。

2 具體實現(xiàn)

如流程圖所示,待分析的程序需要先被權(quán)重較大的函數(shù)進行評分,之后才提取字符串特征。整個項目擬定的一個惡意分數(shù)分界線是 70 分,該分數(shù)是綜合本項目的規(guī)則庫以及權(quán)重分配以及測試之后得出的適合數(shù)值。

圖1 功能模塊流程圖

2.1 評分方法

以下對評分流程所涉及的主要方法進行講解:

(1)首先經(jīng)過 scanByClamav 方法進行掃描,clamav 的規(guī)則庫可以由 python 腳本在線更新,但是由于這個更新流程與本項目評分機制無關(guān),因此不贅述。由于 clamav 的誤報率較高,因此這里給定的一個分數(shù)是 10 分。

(2)然后經(jīng)過 checkAuth 方法進行檢查,這個方法對待分析程序的數(shù)字簽名進行校驗,如果程序具有正常的數(shù)字簽名,則惡意評分-20 分,因為 CA 機構(gòu)在對公司及其程序頒發(fā)數(shù)字簽名時都會對其進行安全性檢測,通過了才會對其頒發(fā)數(shù)字簽名。很多殺毒軟件廠商很依賴數(shù)字簽名白名單,假如對數(shù)字簽名的校驗機制不完善,就很有可能被繞過欺騙,因此,很多病毒都會給自己偽造數(shù)字簽名。

(3)通過 uploadVT 方法,在 virustotal 網(wǎng)站,查詢待分析程序的sha256,然后對返回的 json 數(shù)據(jù)進行解析,根據(jù)平時病毒分析的工作經(jīng)驗,自定義了一些病毒類型名的權(quán)重列表,提高相應(yīng)的權(quán)重;在 virustotal 上,眾多的殺毒軟件廠商中,公認的權(quán)威較高的是 Microsoft,ESET-NOD32,Kaspersky,但這些都是外國廠商,對于一些國內(nèi)的自制特色化病毒并不能檢出,因此,還需要借鑒 Tencent,Qihoo-360 的查殺結(jié)果。但該兩廠商較依賴云查殺,誤報率較高,因此程序邏輯定為同時報毒才加分。

(4)通過getDynamicScore 方法,獲取并提取 hybrid-analysis 在線沙盒的分析結(jié)果,與自定義的一套字符串與動態(tài)行為規(guī)則進行匹配,返回特征字符串以及分值數(shù)據(jù)。

(5)通過 writeBlackDB 方法,定義了寫入規(guī)則庫的格式:[其他殼標志位,模糊哈希,特征串使用標志位,靜態(tài)字符串列表,動態(tài)字符串列表]。

(6)通過 parse_flow 方法,檢測待分析程序的是否被加殼以及是否是安裝包,如果僅是被 upx 加殼的,或者僅是被 dotnet 混淆殼混淆的,則靜態(tài)脫殼后提取靜態(tài)字符串;如果是自解壓包或者安裝包的,則需要提取子程序之后再依次檢測子程序;如果是其他殼,則僅是動態(tài)分析并嘗試提取動態(tài)字符串。

(7)通過 selfExtract 方法,檢測是否為 NSIS 安裝包、或是否為 WinRAR Installer 自解壓包、或是否為 Zip 自解壓包、或是否為 sfx 自解壓包、或是否為 MSI 安裝包,如果是,則用 7z 嘗試解壓縮。

(8)通過 useStatic 方法,提取靜態(tài)字符串,分析待分析程序的 api 序列。

(9)通過 extractRes 方法,提取并檢測資源節(jié)區(qū)大于 0x20000 字節(jié),資源節(jié)區(qū)中的pe 程序。

2.2 規(guī)則庫以及對應(yīng)權(quán)重分配

Yara的字符串規(guī)則有19類,包括了敏感注冊表路徑、一般木馬所特有的字符串、主頁鎖定、比特幣地址正則表達式、系統(tǒng)安全工具類名稱、反病毒反虛擬機相關(guān)、混淆加密相關(guān)等,如圖2所示。

圖2 規(guī)則清單

自定義的字符串規(guī)則權(quán)重如圖3所示,展示方式是按權(quán)重從大到小順序,也就是從30分到5分依次排列。

3 功能測試

3.1 運行程序

程序運行后,標簽控件顯示“please select file by click button”,提示用戶點擊“FileOpen”按鈕以便開始分析文件,如圖4所示。

圖3 規(guī)則權(quán)重

圖4 主界面顯示

3.2 展示分析結(jié)果

點擊“File Open”按鈕后,選擇要分析的文件后,獲得如下分析結(jié)果,如圖5所示。展示的結(jié)果項有四項,依次分別為:文件名,分析結(jié)果,評分分值,每個子分數(shù)的評分緣由。

界面的底部三個按鈕:左下角的按鈕用于監(jiān)督學習,由于這里的分析結(jié)果是該程序是惡意程序,因此顯示是“mark as white”,如果是非惡意程序,則顯示“mark as black”,讓用戶對其進行訓練,如果點擊該按鈕,則會調(diào)節(jié)相關(guān)可疑特征字符串的權(quán)重,以后的評分將會根據(jù)這個權(quán)重進行自動化分析;“confirm”按鈕用于讓用戶確認該結(jié)果,然后退出該界面,以便進行后續(xù)子程序的分析;“saveLog”按鈕用于保存該評分結(jié)果。點擊“mark as white” 按鈕后,會對該程序所包含的特征字符串權(quán)重修改,然后保存在“db/learn.db”下,“l(fā)earn.db”的內(nèi)容如圖6所示,與圖3中的字符串規(guī)則權(quán)重相對應(yīng)。

圖5 分析結(jié)果

圖6 learn.db的內(nèi)容

4 結(jié)束語

本項目通過對病毒樣本的惡意行為進行分析,根據(jù)平時病毒分析經(jīng)驗總結(jié)出來的自定義的規(guī)則庫,對其進行評分,然后結(jié)合用戶的意見修改特征權(quán)重,最后自動化提取其特征碼。由于在自動化分析提取的實現(xiàn)方面,字符串特征碼的提取較為理想,而且查殺效果好[8],因此選擇字符串特征碼。提取特征碼的目的是為了實現(xiàn)查殺該類病毒。從最初的手動分析病毒到最后的自動分析系統(tǒng)的實現(xiàn),提高了工作效率;并且從動靜態(tài)結(jié)合再加上病毒分析經(jīng)驗,降低了誤報率、漏報率,以及提高了用戶友好度。

[1]毛蔚軒,蔡忠閩,童力.一種基于主動學習的惡意代碼檢測方法.軟件學報,2017.

[2]Symantec.Internet security threat report.Vol.20,2015. https: //www4.symantec.com/mktginfo/whitepape-r/ ISTR/21347932_G A-internet-security-threat-report-volume-20-2015-social_v2.pdf.

[3]韓奕.基于行為分析的惡意代碼檢測與評估研究.北京交通大學碩士論文,2014.

[4]潘劍鋒.主機惡意代碼檢測系統(tǒng)的設(shè)計與實現(xiàn).中國科學技術(shù)大學博士論文,2009.

[5]Matt Bishop. Introduction to Computer Security.First printing.Addison-Wesley,2004.

[6]王蕊,馮登國,楊軼.基于語義的惡意代碼行為特征提取及檢測方法.軟件學報,2012.

[7]吳俊軍,方明偉,張新訪.基于啟發(fā)式行為監(jiān)測的手機病毒防治研究.計算機工程與科學,2010.

[8]莫櫻.基于病毒行為分析的特征碼的提取與檢測.電子科技大學工程碩士論文,2011.

2017年校級高等學校大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目。

猜你喜歡
字符串數(shù)字簽名權(quán)重
基于文本挖掘的語詞典研究
權(quán)重常思“浮名輕”
淺析計算機安全防護中數(shù)字簽名技術(shù)的應(yīng)用
為黨督政勤履職 代民行權(quán)重擔當
基于數(shù)字簽名的QR碼水印認證系統(tǒng)
數(shù)字簽名簡述
基于局部權(quán)重k-近質(zhì)心近鄰算法
最簡單的排序算法(續(xù))
掌握方法用好數(shù)字簽名
一種新的基于對稱性的字符串相似性處理算法