本發(fā)明涉及惡意軟件分析系統(tǒng)、惡意軟件分析方法及惡意軟件分析程序。
背景技術(shù):
近年來,導(dǎo)致信息泄漏、非法訪問等的威脅的非法程序(以下,稱為“惡意軟件”)來勢兇猛。被惡意軟件感染的手段逐年被復(fù)雜化、巧妙化,完全地防止感染是比較困難的。因此,不僅需要感染防止對策,而且還需要將感染后的損失抑制為最小限的對策。
為了將感染后的損失抑制為最小限,優(yōu)選為早期地發(fā)現(xiàn)感染終端并進(jìn)行無害化。作為對策手法的一例,可列舉對從終端發(fā)出的通信進(jìn)行監(jiān)視的手法(網(wǎng)絡(luò)監(jiān)視)。網(wǎng)絡(luò)監(jiān)視通過對與在感染后發(fā)生的攻擊者服務(wù)器的通信進(jìn)行檢測,從而檢測感染終端。另外,基于從惡意軟件發(fā)生的通信的檢測在通過惡意軟件而不會導(dǎo)致對策自身被無效化的點(diǎn)上也是有用的。
作為具體的手法,采取如下手法:通過一邊執(zhí)行惡意軟件一邊進(jìn)行分析的手法(以下,記載為“動態(tài)分析”),收集惡意軟件的通信目的地信息,并進(jìn)行黑名單化。在網(wǎng)絡(luò)監(jiān)視中,該黑名單的規(guī)模及新鮮度決定對策的效果。如果黑名單的規(guī)模小則發(fā)生看漏,另外,如果信息舊則無法期待對策的效果。因此,重要的是分析更多的惡意軟件,收集表示生存的攻擊者服務(wù)器的通信目的地的ip地址、fqdn(fullyqualifieddomainname:完全限定域名)、url(uniformresourcelocator:統(tǒng)一資源定位器)等。即,為了以感染后的對策為目的來生成黑名單,優(yōu)選為,在將收集到的檢體均連接于網(wǎng)絡(luò)的狀態(tài)下在一定期間進(jìn)行動態(tài)分析。
但是,每天新發(fā)現(xiàn)的惡意軟件非常地龐大,并且用于分析的計(jì)算資源也是有限的,因此對全部的惡意軟件進(jìn)行分析是困難的。因此,需要從收集到的檢體(惡意軟件)中有效地選定作為分析對象的檢體的手法。例如,公知有通過計(jì)算惡意軟件的程序代碼之間的相似性來避免重復(fù)的分析的技術(shù)(例如,非專利文獻(xiàn)1)。另外,公知有為了選定適合黑名單的生成的檢體而從靜態(tài)分析的結(jié)果預(yù)測動態(tài)分析的結(jié)果的技術(shù)(例如,非專利文獻(xiàn)2)。
現(xiàn)有技術(shù)文獻(xiàn)
非專利文獻(xiàn)
非專利文獻(xiàn)1:gregoirejacob,paolomilanicomparetti,matthiasneugschwandtner,christopherkruegel,giovannivigna,“astatic,packer-agnosticfiltertodetectsimilarmalwaresamples”,dimva2012
非專利文獻(xiàn)2:matthiasneugschwandtner,paolomilanicomparetti,gregoirejacob,christopherkruegel,“forecast:skimmingoffthemalwarecream”,acsac2011
技術(shù)實(shí)現(xiàn)要素:
發(fā)明要解決的課題
但是,在上述的以往技術(shù)中,有效地選定要分析的惡意軟件是困難的。具體地,有時即使通過靜態(tài)分析而計(jì)算出程序代碼相似,也會看漏從程序代碼的相似性不會被抽取的通信目的地的差異。另外,在從靜態(tài)分析的結(jié)果預(yù)測動態(tài)分析的動作的情況下,在出現(xiàn)新的種類的惡意軟件的情況下、惡意軟件實(shí)施了使程序代碼難讀化的處理的情況下,無法進(jìn)行特征的抽取,看漏進(jìn)行通信的檢體的可能性變高。
本發(fā)明是鑒于上述問題而研發(fā)的,本發(fā)明的目的在于提供一種能夠有效地選定要分析的惡意軟件的惡意軟件分析系統(tǒng)、惡意軟件分析方法及惡意軟件分析程序。
解決課題的手段
為了解決上述課題并達(dá)成目的,惡意軟件分析系統(tǒng)的特征在于,其具備:預(yù)備分析部,其通過執(zhí)行作為分析對象的候選而取得的惡意軟件,取得與從該惡意軟件發(fā)生的通信相關(guān)的信息;判定部,其根據(jù)通過上述預(yù)備分析部取得的信息,判定是否將上述惡意軟件作為分析對象;及指定部,其根據(jù)通過上述預(yù)備分析部取得的信息,對通過上述判定部判定為分析對象的惡意軟件指定分析的次序。
發(fā)明效果
根據(jù)本申請公開的實(shí)施方式的一例,能夠有效地選定分析的惡意軟件。
附圖說明
圖1是表示通過實(shí)施方式的惡意軟件分析系統(tǒng)而進(jìn)行的分析處理的一例的圖。
圖2是表示實(shí)施方式的惡意軟件db的一例的圖。
圖3是表示實(shí)施方式的預(yù)備分析裝置的結(jié)構(gòu)的一例的圖。
圖4是表示實(shí)施方式的封閉環(huán)境執(zhí)行日志表的一例的圖。
圖5是表示實(shí)施方式的開放環(huán)境執(zhí)行日志表的一例的圖。
圖6是表示實(shí)施方式的分析對象db的一例的圖。
圖7是表示實(shí)施方式的預(yù)備分析處理過程的流程圖。
圖8是表示實(shí)施方式的封閉環(huán)境中的判定處理過程的流程圖。
圖9是表示實(shí)施方式的開放環(huán)境中的判定處理過程的流程圖。
圖10是表示實(shí)施方式的指定處理過程的流程圖。
圖11是表示執(zhí)行惡意軟件分析程序的計(jì)算機(jī)的圖。
具體實(shí)施方式
下面,根據(jù)附圖,對本申請的惡意軟件分析系統(tǒng)、惡意軟件分析方法及惡意軟件分析程序的實(shí)施方式進(jìn)行詳細(xì)說明。另外,本申請的惡意軟件分析系統(tǒng)、惡意軟件分析方法及惡意軟件分析程序并非限定于該實(shí)施方式。
[分析處理的一例]
首先,利用圖1,對通過實(shí)施方式的惡意軟件分析系統(tǒng)1而進(jìn)行的分析處理的一例進(jìn)行說明。圖1是表示通過實(shí)施方式的惡意軟件分析系統(tǒng)1而進(jìn)行的分析處理的一例的圖。如圖1所示,惡意軟件分析系統(tǒng)1包括惡意軟件db(database)20、預(yù)備分析裝置100、分析對象db30、及本分析裝置200。
惡意軟件db20是規(guī)定的存儲服務(wù)器所具備的數(shù)據(jù)庫,存儲有通過惡意軟件收集系統(tǒng)10而收集的惡意軟件。另外,惡意軟件收集系統(tǒng)10由經(jīng)由通信網(wǎng)絡(luò)(例如,因特網(wǎng))而收集作為檢體的惡意軟件的服務(wù)器裝置等而構(gòu)成。惡意軟件收集系統(tǒng)10例如收集存在于因特網(wǎng)上的登記到惡意軟件共享站點(diǎn)的惡意軟件。并且,惡意軟件收集系統(tǒng)10將所收集到的惡意軟件主體和附屬于惡意軟件的信息保存到惡意軟件db20。另外,附屬于惡意軟件的信息是指,例如,惡意軟件初次登記到惡意軟件共享站點(diǎn)的登記日期時間等。
預(yù)備分析裝置100是為了選定要分析的惡意軟件而執(zhí)行對惡意軟件的預(yù)備分析的服務(wù)器裝置。預(yù)備分析裝置100通過對與保存于惡意軟件db20的惡意軟件相關(guān)的信息進(jìn)行預(yù)備分析,從而選定本分析裝置200應(yīng)分析的惡意軟件。
分析對象db30是規(guī)定的存儲服務(wù)器所具備的數(shù)據(jù)庫,存儲有作為分析對象的惡意軟件。關(guān)于存儲于分析對象db30的惡意軟件,通過預(yù)備分析裝置100而指定由本分析裝置200執(zhí)行分析的優(yōu)先次序。
本分析裝置200是以存儲于分析對象db30的惡意軟件即通過預(yù)備分析裝置100而被指定在先的優(yōu)先次序的惡意軟件的順序執(zhí)行惡性判定等分析的服務(wù)器裝置。下面,按照流程,對包括上述各裝置的惡意軟件分析系統(tǒng)1所進(jìn)行的分析處理的一例進(jìn)行說明。另外,在下面的說明中,將與預(yù)備分析裝置100執(zhí)行的惡意軟件的選定處理相關(guān)的分析記載為“預(yù)備分析”,將與本分析裝置200執(zhí)行的惡意軟件的惡性度判定處理等相關(guān)的分析記載為“本分析”。另外,在以下的說明中,將成為分析處理的對象的惡意軟件記載為“檢體”。
首先,預(yù)備分析裝置100取得在存儲于惡意軟件db20的惡意軟件之中還未進(jìn)行預(yù)備分析的惡意軟件。并且,預(yù)備分析裝置100中的預(yù)備分析部131對所取得的惡意軟件執(zhí)行預(yù)備分析。通過預(yù)備分析部131而進(jìn)行的預(yù)備分析處理是通過使惡意軟件進(jìn)行動作,并測定從惡意軟件發(fā)生的通信數(shù)據(jù)的狀況等的動態(tài)分析處理而進(jìn)行的。另外,具體情況將后述,但通過預(yù)備分析部131而進(jìn)行的惡意軟件的預(yù)備分析處理是使用將惡意軟件與外部的通信網(wǎng)絡(luò)隔離的環(huán)境,即,使惡意軟件不與因特網(wǎng)連接的環(huán)境(以下,記載為“封閉環(huán)境”)和將惡意軟件與因特網(wǎng)可進(jìn)行連接的環(huán)境(以下,記載為“開放環(huán)境”)這兩種環(huán)境中的任一種環(huán)境或兩種環(huán)境并用而進(jìn)行的。在并用而進(jìn)行預(yù)備分析的情況下,優(yōu)先開放環(huán)境的結(jié)果。另外,通過預(yù)備分析部131而進(jìn)行的惡意軟件的預(yù)備分析處理是通過執(zhí)行惡意軟件的終端的os(operatingsystem:操作系統(tǒng))的版本、安裝在os上的應(yīng)用等各種執(zhí)行環(huán)境而執(zhí)行的。
并且,預(yù)備分析部131將執(zhí)行預(yù)備分析的結(jié)果即執(zhí)行日志保存到執(zhí)行日志db121。接著,判定部132根據(jù)保存于執(zhí)行日志db121的信息而進(jìn)行判斷進(jìn)行本分析的惡意軟件的處理。例如,判定部132將在預(yù)備分析處理中,惡意軟件是否經(jīng)由因特網(wǎng)而確立與外部服務(wù)器之間的通信等作為要素,判定是否應(yīng)對惡意軟件進(jìn)行本分析。
接著,指定部133對通過判定部132而成為本分析的對象的惡意軟件而進(jìn)行指定優(yōu)先次序的處理。優(yōu)先次序的指定是例如根據(jù)惡意軟件登記到惡意軟件共享站點(diǎn)等的日期時間、與由惡意軟件所產(chǎn)生的通信相關(guān)的通信目的地的件數(shù)而進(jìn)行的。并且,指定部133將指定的優(yōu)先次序和在預(yù)備分析時所使用的os(operatingsystem)的版本等執(zhí)行環(huán)境設(shè)定信息、惡意軟件主體對應(yīng)地保存到分析對象db30。
之后,本分析裝置200中的本分析部210按照由預(yù)備分析裝置100所指定的優(yōu)先順序而對保存到分析對象db30的惡意軟件執(zhí)行本分析處理。并且,本分析部210將惡意軟件的本分析處理的結(jié)果保存到分析日志db220。即,通過本分析部210而對引起惡性通信的惡意軟件的通信目的地即服務(wù)器的信息等進(jìn)行分析。從而,惡意軟件分析系統(tǒng)1能夠生成與惡意軟件相關(guān)的所謂黑名單。
這樣,惡意軟件分析系統(tǒng)1作為預(yù)備分析,執(zhí)行作為分析對象的候選而取得的惡意軟件,從而取得與從惡意軟件發(fā)起的通信相關(guān)的信息。并且,根據(jù)通過預(yù)備分析而取得的信息,判定是否將惡意軟件作為本分析的對象。并且,對于判定為分析的對象的惡意軟件,指定進(jìn)行本分析的次序。
即,惡意軟件分析系統(tǒng)1通過執(zhí)行如上述的預(yù)備分析,關(guān)于程序代碼與過去的惡意軟件相同但通信目的地不同的惡意軟件、新種類的惡意軟件、通過包裝而隱藏表面性特征的惡意軟件等,取得與規(guī)定的通信相關(guān)的信息。并且,惡意軟件分析系統(tǒng)1根據(jù)相關(guān)的預(yù)備分析的結(jié)果,抽取進(jìn)行惡性通信的可能性高的惡意軟件。換言之,惡意軟件分析系統(tǒng)1與因特網(wǎng)連接一定時間而能夠有效地選定與從惡意軟件發(fā)起的通信中所包含的通信目的地相關(guān)的信息即ip地址、fqdn、作為用于收集url的對象的惡意軟件。其結(jié)果,惡意軟件分析系統(tǒng)1能夠從龐大數(shù)量的惡意軟件當(dāng)中,對于應(yīng)該進(jìn)行黑名單化的惡意軟件有效地進(jìn)行分析處理。
[惡意軟件分析系統(tǒng)的結(jié)構(gòu)]
下面,使用附圖,對構(gòu)成上述的惡意軟件分析系統(tǒng)1的各個裝置進(jìn)行詳細(xì)說明。
(關(guān)于惡意軟件db20)
惡意軟件db20例如通過ram(randomaccessmemory:隨機(jī)存取存儲器)、閃存存儲器(flashmemory)等半導(dǎo)體存儲器元件或硬盤、光盤等存儲裝置而實(shí)現(xiàn)。
惡意軟件db20存儲與通過惡意軟件收集系統(tǒng)10而收集的惡意軟件相關(guān)的信息。在此,圖2表示實(shí)施方式的惡意軟件db20的一例。如圖2所示,惡意軟件db20具有“惡意軟件識別符”、“登記日期時間”這樣的項(xiàng)目。
“惡意軟件識別符”表示用于識別惡意軟件的識別信息?!暗怯浫掌跁r間”表示惡意軟件初次登記到惡意軟件共享站點(diǎn)等的日期時間。另外,在不經(jīng)由惡意軟件共享站點(diǎn)等,而是通過惡意軟件收集系統(tǒng)10而收集惡意軟件的情況下,關(guān)于登記日期時間,可存儲將惡意軟件保存到惡意軟件db20的日期時間。
即,在圖2中,作為存儲到惡意軟件db20的信息的一例,表示使用惡意軟件識別符“m001”識別的惡意軟件在“2014年12月28日22點(diǎn)25分14秒”被登記的一例。
另外,在下面的記載中,有時將存儲于“惡意軟件識別符”的項(xiàng)目的識別符作為參照符號而使用。例如,在下面的記載中,有時將通過惡意軟件識別符“m001”而識別的惡意軟件記載為“惡意軟件m001”。
(關(guān)于預(yù)備分析裝置100)
下面,使用圖3,對實(shí)施方式的預(yù)備分析裝置100進(jìn)行說明。圖3是表示實(shí)施方式的預(yù)備分析裝置的結(jié)構(gòu)的一例的圖。如圖3所例示,實(shí)施方式的預(yù)備分析裝置100具備if(interface:接口)部110、存儲部120、控制部130。
if部110例如為nic(networkinterfacecard:網(wǎng)絡(luò)接口卡)等,與外部裝置之間收發(fā)各種數(shù)據(jù)。例如,if部110與具備惡意軟件db20或分析對象db30的各個存儲服務(wù)器、本分析裝置200之間收發(fā)與惡意軟件相關(guān)的信息。
存儲部120例如由ram、閃存存儲器等半導(dǎo)體存儲器元件或硬盤、光盤等而實(shí)現(xiàn)。存儲部120具備執(zhí)行日志db121。執(zhí)行日志db121具備存儲通過封閉環(huán)境而進(jìn)行預(yù)備分析的結(jié)果的封閉環(huán)境執(zhí)行日志表122和存儲通過開放環(huán)境而進(jìn)行預(yù)備分析的結(jié)果的開放環(huán)境執(zhí)行日志表123。
(關(guān)于封閉環(huán)境執(zhí)行日志表122)
在此,圖4表示實(shí)施方式的封閉環(huán)境執(zhí)行日志表122的一例。如圖4所示,封閉環(huán)境執(zhí)行日志表122具備“惡意軟件識別符”、“取得日期時間”、“封閉環(huán)境預(yù)備分析信息”這樣的項(xiàng)目。另外,“封閉環(huán)境預(yù)備分析信息”具備“執(zhí)行環(huán)境信息”、“執(zhí)行結(jié)果”、“數(shù)據(jù)發(fā)送的發(fā)生有無”、“ip地址直接指定的有無”、“成功的名稱解決的有無”、“通信目的地件數(shù)”這樣的小項(xiàng)目。
“惡意軟件識別符”表示用于識別惡意軟件的識別信息?!叭〉萌掌跁r間”表示通過執(zhí)行預(yù)備分析而取得封閉環(huán)境預(yù)備分析信息的日期時間。另外,取得日期時間可存儲于后述的各個執(zhí)行環(huán)境信息中。
“封閉環(huán)境預(yù)備分析信息”表示在封閉環(huán)境下進(jìn)行預(yù)備分析時的結(jié)果。“執(zhí)行環(huán)境信息”表示為了預(yù)備分析而執(zhí)行惡意軟件時的環(huán)境信息。在圖4中,用“a001”這樣的概念來表示了執(zhí)行環(huán)境信息,但在實(shí)際上,存儲有由執(zhí)行惡意軟件時的os的版本、執(zhí)行惡意軟件的終端內(nèi)的運(yùn)行庫的有無、版本、應(yīng)用的安裝的有無、版本等各種信息的組合而構(gòu)成的執(zhí)行環(huán)境。
“執(zhí)行結(jié)果”表示在預(yù)備分析時的各個執(zhí)行環(huán)境信息中,惡意軟件是否實(shí)際地進(jìn)行動作。如果“執(zhí)行結(jié)果”的項(xiàng)目為“○”,則表示惡意軟件進(jìn)行了動作,如果執(zhí)行結(jié)果為“×”,則表示惡意軟件未進(jìn)行動作。另外,關(guān)于惡意軟件是否實(shí)際地進(jìn)行動作,例如可通過確認(rèn)流程生成的成功可否、執(zhí)行時錯誤的發(fā)生有無而進(jìn)行判定。具體地,在流程生成獲得成功的情況下、執(zhí)行時未發(fā)生錯誤的情況下,可判定為惡意軟件實(shí)際進(jìn)行了動作。
“數(shù)據(jù)發(fā)送的發(fā)生有無”表示在惡意軟件進(jìn)行了動作的情況下,是否觀測到數(shù)據(jù)發(fā)送的舉動。如果“數(shù)據(jù)發(fā)送的發(fā)生有無”的項(xiàng)目為“○”,則表示觀測到從惡意軟件發(fā)送數(shù)據(jù)的舉動,如果“數(shù)據(jù)發(fā)送的發(fā)生有無”的項(xiàng)目為“×”,則表示未觀測到從惡意軟件發(fā)送數(shù)據(jù)的舉動。另外,如果“執(zhí)行結(jié)果”的項(xiàng)目為“×”,則未觀測到從惡意軟件發(fā)送數(shù)據(jù)的舉動,因此在“數(shù)據(jù)發(fā)送的發(fā)生有無”以后的項(xiàng)目中存儲“‐”。
“ip地址直接指定的有無”表示在惡意軟件進(jìn)行動作的情況下,是否觀測到直接指定ip地址的數(shù)據(jù)發(fā)送。如果“ip地址直接指定的有無”的項(xiàng)目為“○”,則表示觀測到直接指定ip地址的數(shù)據(jù)發(fā)送,如果“ip地址直接指定的有無”的項(xiàng)目為“×”,則表示未觀測到直接指定ip地址的數(shù)據(jù)發(fā)送。
“成功的名稱解決的有無”表示能否通過惡意軟件的通信而分割通信目的地的服務(wù)器等的地址。如果“成功的名稱解決的有無”的項(xiàng)目為“○”,則表示名稱解決成功,如果“成功的名稱解決的有無”的項(xiàng)目為“×”,則表示名稱解決未成功。另外,在“成功的名稱解決的有無”的項(xiàng)目為“‐”的情況下,惡意軟件不進(jìn)行動作,因此表示原本就無法進(jìn)行名稱解決的情況或無需進(jìn)行名稱解決的情況。無需進(jìn)行名稱解決的情況是指,例如,從惡意軟件觀測到ip地址直接指定的通信,因此無需具體進(jìn)行名稱解決,可判斷出將相關(guān)的惡意軟件作為本分析的對象的情況等。在該情況下,即便在“數(shù)據(jù)發(fā)送的發(fā)生有無”的項(xiàng)目、“ip地址直接指定的有無”的項(xiàng)目為“○”的情況下,“成功的名稱解決的有無”的項(xiàng)目也有可能成為“-”。
“通信目的地件數(shù)”表示惡意軟件執(zhí)行進(jìn)行通信處理的舉動的對方目的地的件數(shù)。具體地,通信目的地件數(shù)表示惡意軟件的通信目的地即ip地址的數(shù)量。
即,在圖4中表示在“2015年1月15日9點(diǎn)15分35秒”取得向惡意軟件m011的封閉環(huán)境預(yù)備分析信息,其封閉環(huán)境預(yù)備分析信息中,在執(zhí)行環(huán)境信息為“a001”時,執(zhí)行結(jié)果為“×”,惡意軟件未進(jìn)行動作。另外,在其他的例子中,表示在執(zhí)行環(huán)境信息為“a002”時,惡意軟件進(jìn)行動作,觀測到數(shù)據(jù)發(fā)送的舉動,但未觀測到直接指定ip地址的通信。另外,在其他的例子中,表示在執(zhí)行環(huán)境信息為“a003”時,惡意軟件進(jìn)行動作,觀測到數(shù)據(jù)發(fā)送的舉動,并觀測到直接指定ip地址的通信,其通信目的地件數(shù)為“23”件。
(關(guān)于開放環(huán)境執(zhí)行日志表123)
接著,圖5表示實(shí)施方式的開放環(huán)境執(zhí)行日志表123的一例。如圖5所示,開放環(huán)境執(zhí)行日志表123具備“惡意軟件識別符”、“取得日期時間”、“開放環(huán)境預(yù)備分析信息”這樣的項(xiàng)目。另外,“開放環(huán)境預(yù)備分析信息”具備“執(zhí)行環(huán)境信息”、“執(zhí)行結(jié)果”、“通信發(fā)生的有無”、“無錯誤的通信的有無”、“獲得響應(yīng)的通信目的地件數(shù)”這樣的小項(xiàng)目。另外,關(guān)于與圖4相同的項(xiàng)目,省略說明。
“開放環(huán)境預(yù)備分析信息”表示在開放環(huán)境下進(jìn)行預(yù)備分析時的結(jié)果?!巴ㄐ虐l(fā)生的有無”的項(xiàng)目與圖4中的“數(shù)據(jù)發(fā)送的發(fā)生有無”對應(yīng)。在圖4中記載為“數(shù)據(jù)發(fā)送的發(fā)生有無”是因?yàn)樵诜忾]環(huán)境下無法觀測到通信,只能觀測到從惡意軟件單方向地發(fā)送數(shù)據(jù)的舉動。
“無錯誤的通信的有無”表示對于來自惡意軟件的通信,存在服務(wù)器等的對方目的地,是否觀測到至少一個無錯誤的通信。在此,通信的錯誤是針對各個協(xié)議而定義的。例如,在協(xié)議為http(hypertexttransferprotocol:超文本傳輸協(xié)議)的情況下,通信的錯誤相當(dāng)于第200個以外。另外,在使用惡意軟件的協(xié)議中,例如,還包括ftp(filetransferprotocol:文件傳輸協(xié)議)、smtp(simplemailtransferprotocol:簡單郵件傳輸協(xié)議)等。另外,在協(xié)議不清楚的情況下,因超時等而導(dǎo)致的連接失敗相當(dāng)于錯誤。
“獲得響應(yīng)的通信目的地件數(shù)”表示在惡意軟件的預(yù)備分析中的通信中,進(jìn)行無錯誤的通信的通信目的地的件數(shù)。另外,在規(guī)定的通信目的地中,即便在下層中向指定的目的地進(jìn)行了發(fā)生錯誤的通信的情況下,而如果向不同的目的地成立無錯誤的通信,則也可統(tǒng)計(jì)為“獲得響應(yīng)的通信目的地件數(shù)”。具體地,在http通信中,即便在“http://example.com/a.html”中如“404notfound(有錯誤)”這樣發(fā)生了錯誤,但如果在“http://example.com/b.html”中如“200o.k.(無錯誤)”這樣沒有發(fā)生錯誤的情況下,“http://example.com”被統(tǒng)計(jì)為進(jìn)行無錯誤的通信的通信目的地。
即,圖5中表示如下情況:在“2015年1月17日11點(diǎn)8分30秒”取得向惡意軟件m021的開放環(huán)境預(yù)備分析信息,其開放環(huán)境預(yù)備分析信息中,在執(zhí)行環(huán)境信息為“a001”時,執(zhí)行結(jié)果為“×”,惡意軟件未進(jìn)行動作。另外,在其他例子中,表示在執(zhí)行環(huán)境信息為“a002”時,惡意軟件進(jìn)行動作,觀測到發(fā)生了通信,但在所發(fā)生的通信中僅返回錯誤。另外,在其他的例子中,表示在執(zhí)行環(huán)境信息為“a003”時,惡意軟件進(jìn)行動作,發(fā)生通信,進(jìn)而進(jìn)行無錯誤的通信,其通信目的地件數(shù)為“17”件。
(關(guān)于控制部130)
控制部130例如由asic(applicationspecificintegratedcircuit:專用集成電路)、fpga(fieldprogrammablegatearray:現(xiàn)場可編程門陣列)等集成電路而實(shí)現(xiàn)。另外,控制部130例如通過cpu(centralprocessingunit:中央處理器)、mpu(microprocessingunit:微處理器)等,存儲在未圖示的存儲裝置的程序?qū)am作為作業(yè)區(qū)域而執(zhí)行來實(shí)現(xiàn)。另外,控制部130具備預(yù)備分析部131、判定部132、指定部133,執(zhí)行對惡意軟件的預(yù)備分析處理。下面,對各個處理部進(jìn)行說明。
(關(guān)于預(yù)備分析部131)
預(yù)備分析部131對構(gòu)成處理對象的惡意軟件(檢體)執(zhí)行預(yù)備分析。具體地,實(shí)施方式的預(yù)備分析部131作為預(yù)備分析,執(zhí)行作為分析對象的候選而取得的惡意軟件,從而取得與從惡意軟件發(fā)起的通信相關(guān)的信息。在該情況下,執(zhí)行惡意軟件是指,在規(guī)定的終端中使檢體作為程序而實(shí)際進(jìn)行動作。另外,預(yù)備分析部131從惡意軟件db20取得成為處理對象的檢體。在該情況下,預(yù)備分析部131首先取得保存在惡意軟件db20的惡意軟件的信息,在惡意軟件db20中存在未分析的檢體的情況下,取得相關(guān)的檢體。此時,預(yù)備分析部131在未分析的檢體之中,越是新登記的檢體,越優(yōu)先取得。另外,預(yù)備分析部131在從惡意軟件db20取得檢體時,也取得檢體的附屬信息。例如,預(yù)備分析部131取得與惡意軟件經(jīng)由通信網(wǎng)絡(luò)而初次登記到惡意軟件共享站點(diǎn)等、一元地貯存惡意軟件的規(guī)定的數(shù)據(jù)庫的日期時間相關(guān)的信息等。
并且,預(yù)備分析部131作為預(yù)備分析,將檢體動態(tài)分析而發(fā)生通信,并觀測到相關(guān)的通信的舉動,從而取得與從檢體發(fā)起的通信相關(guān)的信息。此時,預(yù)備分析部131將通過檢體的通信而發(fā)生的執(zhí)行日志存儲到執(zhí)行日志db121。
預(yù)備分析部131在進(jìn)行檢體的預(yù)備分析時,適當(dāng)變更執(zhí)行檢體的環(huán)境即執(zhí)行環(huán)境。例如,預(yù)備分析部31在執(zhí)行檢體的終端中,在將安裝在終端的os、庫或應(yīng)用任意組合的多個執(zhí)行環(huán)境中執(zhí)行動作,從而針對每個執(zhí)行環(huán)境取得與從惡意軟件發(fā)起的通信相關(guān)的信息。此時,在檢體執(zhí)行通信時發(fā)生錯誤的情況下,即在存在在該檢體的預(yù)備分析中未使用的執(zhí)行環(huán)境的情況下,預(yù)備分析部131變更執(zhí)行環(huán)境而再次進(jìn)行分析。從而,對于執(zhí)行僅在安裝有特定的庫的環(huán)境下進(jìn)行動作等的舉動的檢體,也能夠有效地進(jìn)行預(yù)備分析。
在執(zhí)行時未發(fā)生錯誤的情況下或在可採用的所有執(zhí)行環(huán)境下實(shí)施了分析的情況下,預(yù)備分析部131結(jié)束對該檢體的預(yù)備分析。并且,預(yù)備分析部131將分析結(jié)果和在分析中使用的執(zhí)行環(huán)境的信息登記到執(zhí)行日志db121。在登記與該檢體相關(guān)的信息之后,預(yù)備分析部131移動到下一個檢體的預(yù)備分析處理。另外,預(yù)備分析部131關(guān)于執(zhí)行環(huán)境,并不是針對每一個環(huán)境確認(rèn)執(zhí)行動作,而是在所有的執(zhí)行環(huán)境中同時進(jìn)行分析,并保存到執(zhí)行日志db121。
另外,預(yù)備分析部131在進(jìn)行檢體的預(yù)備分析時,既可以在有效地進(jìn)行擬似應(yīng)答的封閉環(huán)境中實(shí)施,也可以在與因特網(wǎng)連接的開放環(huán)境中實(shí)施。
下面,對預(yù)備分析部131在封閉環(huán)境下進(jìn)行預(yù)備分析的處理進(jìn)行說明。在封閉環(huán)境下實(shí)施預(yù)備分析的優(yōu)點(diǎn)在于,由于不發(fā)生與因特網(wǎng)上的服務(wù)器之間的通信,因此在不被攻擊者所知的情況下能夠分析惡意軟件的舉動。另外,由于惡意軟件實(shí)際上不與服務(wù)器進(jìn)行通信,因此存在無法掌握服務(wù)器側(cè)是否繼續(xù)進(jìn)行應(yīng)答的缺點(diǎn)。
在封閉環(huán)境下,預(yù)備分析部131通過預(yù)備分析而取得與從檢體發(fā)生的數(shù)據(jù)發(fā)送相關(guān)的信息。在該情況下,預(yù)備分析部131將執(zhí)行日志保存到執(zhí)行日志db121內(nèi)的封閉環(huán)境執(zhí)行日志表122內(nèi)。另外,如圖4所示,預(yù)備分析部131取得在所發(fā)生的數(shù)據(jù)發(fā)送中是否存在與發(fā)送目的地即ip地址相關(guān)的直接指定,或通過檢體而進(jìn)行的名稱解決是否成功,換言之,對于dns(domainnamesystem:域名系統(tǒng))詢問是否發(fā)生錯誤等信息。另外,關(guān)于封閉環(huán)境下的名稱解決的成功的有無,也可以在預(yù)備分析結(jié)束之后,通過另外確認(rèn)在可與因特網(wǎng)連接的環(huán)境下能否進(jìn)行名稱解決而進(jìn)行。另外,關(guān)于dns詢問,可通過向外部前進(jìn),從而確認(rèn)在本分析時可否進(jìn)行名稱解決。
接著,對開放環(huán)境下的預(yù)備分析進(jìn)行說明。在開放環(huán)境下實(shí)施預(yù)備分析的優(yōu)點(diǎn)在于實(shí)際上能夠從因特網(wǎng)上的服務(wù)器接收數(shù)據(jù)的同時分析惡意軟件。
因此,預(yù)備分析部131在預(yù)備分析中還能夠取得來自服務(wù)器的響應(yīng)的有無、響應(yīng)的內(nèi)容。在該情況下,預(yù)備分析部131將執(zhí)行日志保存在執(zhí)行日志db121內(nèi)的開放環(huán)境執(zhí)行日志表123內(nèi)。例如,如圖5所示,在發(fā)生來自檢體的通信的情況下,預(yù)備分析部131能夠取得無錯誤的通信的有無、獲得響應(yīng)的通信的通信目的地件數(shù)等的信息。
另外,為了便于說明,示出了在執(zhí)行日志db121內(nèi)存在封閉環(huán)境執(zhí)行日志表122和開放環(huán)境執(zhí)行日志表123的例子,但無論在封閉環(huán)境、開放環(huán)境的任一環(huán)境下,均能夠按照每個檢體綜合而存儲執(zhí)行日志。在該情況下,關(guān)于因環(huán)境不同而無法取得的信息(例如,封閉環(huán)境下的“獲得響應(yīng)的通信目的地件數(shù)”等信息),不存儲在執(zhí)行日志內(nèi)。
預(yù)備分析裝置100能夠事先預(yù)定在封閉環(huán)境下實(shí)施預(yù)備分析,還是在開放環(huán)境實(shí)施預(yù)備分析。這是因?yàn)椋鶕?jù)在預(yù)備分析中所采用的環(huán)境,后述的判定部132及指定部133所實(shí)施的處理的內(nèi)容不同。在預(yù)備分析裝置100針對各個檢體而切換封閉環(huán)境和開放環(huán)境的情況下,指定部133根據(jù)預(yù)先決定的基準(zhǔn)決定優(yōu)先次序,決定先分析在封閉環(huán)境下分析的檢體和在開放環(huán)境下分析的檢體的哪一個檢體。
另外,預(yù)備分析部131在預(yù)備分析時,作為避免由惡意軟件導(dǎo)致的分析干擾的手法,可監(jiān)視休眠功能等的api(applicationprogramminginterface:應(yīng)用程序接口)呼叫,進(jìn)行縮短休眠時間等的處理。另外,在設(shè)定為重新啟動惡意軟件之后使預(yù)備分析部131自動啟動的情況下,可使用強(qiáng)制地執(zhí)行或重新啟動被自動啟動的檢體的工作方式。進(jìn)而,預(yù)備分析部131經(jīng)由分析對象db30而將與所使用的分析干擾避免手法相關(guān)的信息發(fā)送到本分析裝置200。從而,后述的本分析裝置200中的本分析部210可進(jìn)行與預(yù)備分析部131所實(shí)施的分析干擾避免手法相同的處理。
(關(guān)于判定部132)
判定部132根據(jù)通過預(yù)備分析部131而取得的信息,判定是否將檢體作為本分析的對象。具體地,判定部132根據(jù)通過預(yù)備分析而獲得的執(zhí)行日志中包含的、檢體是否無錯誤地被執(zhí)行、檢體是否還在與外部服務(wù)器進(jìn)行通信等判定要素,判定是否將檢體作為本分析處理的對象。
首先,對在封閉環(huán)境下實(shí)施預(yù)備分析的情況下通過判定部132而進(jìn)行的判定處理進(jìn)行說明。在封閉環(huán)境下,判定部132根據(jù)與來自檢體的數(shù)據(jù)發(fā)送相關(guān)的信息進(jìn)行判定。具體地,判定部132根據(jù)圖4所示的封閉環(huán)境執(zhí)行日志表122而進(jìn)行判定。
關(guān)于在預(yù)備分析中使用的所有的執(zhí)行環(huán)境中發(fā)生了錯誤的檢體,顯然在本分析時也在執(zhí)行時會發(fā)生錯誤而無法分析,因此判定部132判定為本分析的對象外。另外,關(guān)于雖然進(jìn)行了動作但未發(fā)生數(shù)據(jù)發(fā)送的檢體,判定部132作為不利于生成黑名單的對象而判定為本分析的對象外。另外,關(guān)于雖然可確認(rèn)數(shù)據(jù)發(fā)送的舉動但沒有ip地址直接指定的通信,并且對所有的dns詢問發(fā)生錯誤的檢體,判定部132判定為本分析的對象外。另外,如上述,關(guān)于dns咨詢的可否,也可以在預(yù)備分析結(jié)束之后另外在可與因特網(wǎng)連接的環(huán)境下確認(rèn)可否進(jìn)行名稱解決。
并且,關(guān)于通過上述判定要素而判定為不作為本分析的對象外的檢體,判定部132判定為本分析的對象。
接著,對在開放環(huán)境下實(shí)施預(yù)備分析的情況下的通過判定部132而進(jìn)行的判定處理進(jìn)行說明。在開放環(huán)境下,判定部132根據(jù)來自檢體的與通信相關(guān)的信息而進(jìn)行判定。具體地,判定部132根據(jù)圖5所示的開放環(huán)境執(zhí)行日志表123而進(jìn)行判定。
與封閉環(huán)境下相同地,關(guān)于在預(yù)備分析中使用的所有的執(zhí)行環(huán)境中發(fā)生了錯誤的檢體,判定部132判定為本分析的對象外。另外,關(guān)于雖然進(jìn)行了動作但未發(fā)生通信的檢體,判定部132也判定為本分析的對象外。另外,關(guān)于雖然確認(rèn)了通信的舉動,但在所有的通信中發(fā)生錯誤的檢體,判定部132判定為本分析的對象外。并且,在上述判定的結(jié)果,對于剩余的檢體,判定部132作為本分析的對象檢體。
并且,判定部132通過指定部133指定分析的優(yōu)先次序,因此將與成為本分析的對象的檢體相關(guān)的信息發(fā)送到指定部133。
(關(guān)于指定部133)
指定部133根據(jù)通過預(yù)備分析部131取得的信息,對于通過判定部132判定為本分析處理的對象的檢體而指定本分析處理的次序。換言之,指定部133決定本分析的對象即檢體的分析順序。
指定部133在指定對檢體的優(yōu)先次序時,首先訪問分析對象db30而取得未分析的檢體的信息。并且,指定部133對于所取得的未分析的檢體和成為本分析的對象的新的分析對象檢體,將檢體的登記日期時間或通信目的地的件數(shù)作為判斷要素而指定本分析的次序。即,指定部133在分析對象db30中登記與新的分析對象檢體相關(guān)的信息,并且再次計(jì)算原先已被登記在分析對象db30中的未分析的檢體的分析優(yōu)先次序。
指定部133在分析優(yōu)先次序的計(jì)算中使的檢體登記日期時間更新的檢體優(yōu)先。另外,指定部133以關(guān)于登記日期時間相同的檢體,使得通信目的地?cái)?shù)多的檢體優(yōu)先的方式,以升序指定優(yōu)先次序。此時,指定部133能夠除去自登記開始經(jīng)過了規(guī)定的期間以上的檢體。這表示經(jīng)過了規(guī)定的期間以上的檢體是因進(jìn)行惡性通信的可能性低或已經(jīng)采取任何對策的可能性高而進(jìn)行本分析的需求較低的檢體。
指定部133在將通信目的地的件數(shù)作為判斷要素時,在封閉環(huán)境下進(jìn)行預(yù)備分析的情況下,將執(zhí)行惡意軟件進(jìn)行通信的舉動的通信目的地的件數(shù)作為要素,在開放環(huán)境下進(jìn)行預(yù)備分析的情況下,將惡意軟件確立的通信的通信目的地的件數(shù)作為要素。具體地,在封閉環(huán)境下進(jìn)行預(yù)備分析的情況下,指定部133將圖4所示的“通信目的地件數(shù)”多的檢體的分析優(yōu)先度指定為較高。在該情況下,通信目的地件數(shù)例如為通信目的地的ip地址數(shù)。在圖4的例子中,對于惡意軟件m011的通信目的地件數(shù)為“23”的情況,由于惡意軟件m012的通信目的地件數(shù)為“18”,因此指定部133在通信目的地件數(shù)的比較中,將惡意軟件m011的優(yōu)先次序指定為更高。
另外,在開放環(huán)境下進(jìn)行預(yù)備分析的情況下,指定部133將圖5所示的“獲得響應(yīng)的通信目的地件數(shù)”多的檢體的分析優(yōu)先度指定為更高。在圖5的例子中,對于惡意軟件m021的獲得響應(yīng)的通信目的地件數(shù)為“17”的情況,由于惡意軟件m022的獲得響應(yīng)的通信目的地件數(shù)為“13”,因此指定部133在獲得響應(yīng)的通信目的地件數(shù)的比較中,將惡意軟件m021的優(yōu)先次序指定為更高。
另外,在預(yù)備分析部131所進(jìn)行的預(yù)備分析中,通過在將安裝于執(zhí)行檢體的終端的os、庫、或應(yīng)用任意地組合的多個執(zhí)行環(huán)境下執(zhí)行簡體,從而可針對各個執(zhí)行環(huán)境取得從檢體發(fā)起的通信中的通信目的地的件數(shù)。在該情況下,指定部133根據(jù)通過預(yù)備分析部131而針對每個執(zhí)行環(huán)境所取得的通信目的地的件數(shù)之中的最多的通信目的地的件數(shù),指定分析惡意軟件的次序。即,在相同的檢體中,在通過執(zhí)行環(huán)境而導(dǎo)致通信目的地件數(shù)發(fā)生變化的情況下,最多的通信目的地件數(shù)成為次序的指定的判斷要素。
并且,指定部133將所指定的優(yōu)先次序包括在內(nèi)而將檢體登記到分析對象db30。此時,指定部133將各檢體和與生成優(yōu)先次序最高的執(zhí)行日志時的執(zhí)行環(huán)境相關(guān)的信息進(jìn)行登記。這樣,通過預(yù)備分析裝置100,以具備次序的方式選定構(gòu)成本分析的對象的檢體,并且將與適于進(jìn)行檢體的分析的執(zhí)行環(huán)境相關(guān)的信息登記到分析對象db30。從而,惡意軟件分析系統(tǒng)1能夠有效地進(jìn)行本分析。
(關(guān)于分析對象db30)
分析對象db30例如由ram、閃存存儲器等半導(dǎo)體存儲器元件或硬盤、光盤等存儲裝置而實(shí)現(xiàn)。在分析對象db30中存儲有與被判定為本分析的對象的檢體相關(guān)的信息。在此,圖6表示實(shí)施方式的分析對象db30的一例。如圖6所示,分析對象db30具備“惡意軟件識別符”、“優(yōu)先次序”、“通信目的地件數(shù)”、“登記日期時間”這樣的項(xiàng)目。
“惡意軟件識別符”表示用于識別惡意軟件的識別信息?!皟?yōu)先次序”表示通過指定部133而指定的本分析的順序?!巴ㄐ拍康牡丶?shù)”表示通過預(yù)備分析而觀測的通信目的地件數(shù)。“登記日期時間”表示檢體初次登記到惡意軟件共享站點(diǎn)等的日期時間。換言之,登記日期時間表示將檢體作為惡意軟件而識別(發(fā)現(xiàn))的日期時間。
即,在圖6中,作為存儲于分析對象db30的信息的一例,表示如下例子:使用惡意軟件m043而識別的惡意軟件的本分析的優(yōu)先次序?yàn)椤?”位,通信目的地件數(shù)為“135”,登記日期時間為“2015年1月23日17點(diǎn)10分15秒”。
另外,圖6中的“通信目的地件數(shù)”可與“獲得響應(yīng)的通信目的地件數(shù)”替換。另外,雖然在圖6中省略了圖示,但在分析對象db30中,也可存儲有附屬于惡意軟件的信息、與在預(yù)備分析中使用的執(zhí)行環(huán)境相關(guān)的信息等。
(關(guān)于本分析裝置200)
下面,對實(shí)施方式的本分析裝置200進(jìn)行說明。如圖1所示,本分析裝置200具備本分析部210、分析日志db220。
本分析部210從優(yōu)先次序高的檢體依次對分析對象db30內(nèi)的檢體進(jìn)行動態(tài)分析(本分析)。在此,本分析部210根據(jù)保存于分析對象db30的執(zhí)行環(huán)境信息而對檢體進(jìn)行動態(tài)分析。另外,本分析部210不僅以與預(yù)備分析相同的條件簡單地執(zhí)行分析,為了通信目的地的惡性判定的目的,還可以組合污點(diǎn)分析等的已知分析手法。分析日志db220中存儲通過本分析部210而對檢體進(jìn)行本分析時所取得的分析日志。從而,本分析裝置200能夠生成與檢體相關(guān)的所謂黑名單。
[處理過程]
下面,使用圖7至圖10,對通過上述的預(yù)備分析裝置100而進(jìn)行的分析處理的過程進(jìn)行詳細(xì)說明。
(預(yù)備分析處理)
首先,使用圖7,對預(yù)備分析部131所執(zhí)行的預(yù)備分析處理過程進(jìn)行說明。圖7是表示實(shí)施方式的預(yù)備分析處理過程的流程圖。
如圖7所示,預(yù)備分析部131判定在惡意軟件db20中是否存在未分析的檢體(步驟s101)。在不存在未分析的檢體的情況下(步驟s101;否),直至存在新的登記為止進(jìn)行登記(步驟s102)。
另外,在存在未分析的檢體的情況下(步驟s101;是),預(yù)備分析部131取得在未分析的檢體之中登記日最為新的檢體(步驟s103)。并且,預(yù)備分析部131對所取得的檢體進(jìn)行預(yù)備分析(步驟s104)。首先,預(yù)備分析部131使檢體執(zhí)行,判定在執(zhí)行時是否發(fā)生錯誤(步驟s105)。
在執(zhí)行時發(fā)生了錯誤的情況下(步驟s105;是),進(jìn)而判定是否存在在該檢體的分析中未曾使用的分析環(huán)境(步驟s106),在存在分析環(huán)境的情況下(步驟s106;是),變更分析環(huán)境(步驟s107),再次對檢體進(jìn)行預(yù)備分析(步驟s104)。另外,分析環(huán)境是指包括執(zhí)行惡意軟件的os等的執(zhí)行環(huán)境、封閉環(huán)境或開放環(huán)境等網(wǎng)絡(luò)的環(huán)境的信息。
另外,在執(zhí)行時未發(fā)生錯誤的情況下(步驟s105;否),及不存在該檢體的分析中未曾使用的分析環(huán)境的情況下(步驟s106;否),在執(zhí)行日志db121中登記分析結(jié)果及在分析中所使用的分析環(huán)境的信息(步驟s108)。預(yù)備分析部131反復(fù)執(zhí)行上述的處理。
(封閉環(huán)境中的判定處理)
接著,使用圖8,對判定部132在封閉環(huán)境下執(zhí)行的判定處理過程進(jìn)行說明。圖8是表示實(shí)施方式的封閉環(huán)境中的判定處理過程的流程圖。
如圖8所示,判定部132判定在執(zhí)行日志db121中是否存在未判定的執(zhí)行日志(步驟s201)。在不存在未判定的執(zhí)行日志的情況下(步驟s201;否),直至存在新的執(zhí)行日志的登記為止進(jìn)行登記(步驟s202)。
另外,在存在未判定的執(zhí)行日志的情況下(步驟s201;是),判定部132作為判定處理的對象,取得未判定的執(zhí)行日志(步驟s203)。并且,判定部132參照執(zhí)行日志,判定在執(zhí)行時是否發(fā)生錯誤(步驟s204)。在執(zhí)行時發(fā)生錯誤的情況下(步驟s204;否),判定部132認(rèn)為執(zhí)行日志中的檢體不需要進(jìn)行本分析而判定為分析對象外(步驟s209)。
另外,在執(zhí)行時未發(fā)生錯誤的情況下(步驟s204;是),判定部132判定在檢體的執(zhí)行中是否發(fā)生通信(換言之,是否確認(rèn)到數(shù)據(jù)發(fā)送的舉動)(步驟s205)。在未發(fā)生通信的情況下(步驟s205;否),判定部132認(rèn)為執(zhí)行日志中的檢體不需要進(jìn)行本分析而判定為分析對象外(步驟s209)。
另外,在發(fā)生了通信的情況下(步驟s205;是),判定部132判定在通信之中是否存在ip地址直接指定的通信(步驟s206)。在不存在ip地址直接指定的通信的情況下(步驟s206;否),判定部132進(jìn)一步判定是否存在成功的名稱解決(步驟s207)。并且,在不存在成功的名稱解決的情況下(步驟s207;否),判定部132認(rèn)為執(zhí)行日志中的檢體不需要進(jìn)行本分析而判定為分析對象外(步驟s209)。
另外,在存在ip地址直接指定的通信的情況下(步驟s206;是),及存在成功的名稱解決的情況下(步驟s207;是),判定部132認(rèn)為執(zhí)行日志中的檢體需要進(jìn)行本分析而判定為分析對象,將與檢體相關(guān)的信息發(fā)送到指定部133(步驟s208)。判定部132反復(fù)執(zhí)行上述的處理。
(開放環(huán)境下的判定處理)
接著,使用圖9,對判定部132在開放環(huán)境下執(zhí)行的判定處理過程進(jìn)行說明。圖9是表示實(shí)施方式的開放環(huán)境下的判定處理過程的流程圖。另外,圖9中的步驟s301~步驟s305的處理與圖8中的步驟s201~步驟s205的處理對應(yīng),因此省略說明。
如圖9所示,判定部132對于表示發(fā)生了通信的執(zhí)行日志(步驟s305;是),進(jìn)而判定在名稱解決以外是否存在未發(fā)生錯誤的通信(步驟s306)。這是因?yàn)榧幢阒挥忻Q解決得到成功,但如果與所取得的ip地址之間的通信未成功,則無法抽取在本分析之后應(yīng)登載在與檢體相關(guān)的黑名單的候選。即,因?yàn)榧幢隳軌蜻M(jìn)行名稱解決,只要通信目的地即服務(wù)器自身不進(jìn)行動作(無響應(yīng)),則無法得到應(yīng)登載到黑名單的根據(jù)。
在名稱解決以外不存在未發(fā)生錯誤的通信的情況下(步驟s306;否),判定部132認(rèn)為執(zhí)行日志中的檢體無需進(jìn)行本分析而判定為分析對象外(步驟s308)。
另外,在名稱解決以外存在未發(fā)生錯誤的通信的情況下(步驟s306;是),判定部132認(rèn)為執(zhí)行日志中的檢體需要進(jìn)行本分析而判定為分析對象,將與檢體相關(guān)的信息發(fā)送到指定部133(步驟s307)。判定部132反復(fù)執(zhí)行上述的處理。
(指定處理)
接著,利用圖10,對指定部133對檢體指定本分析中的優(yōu)先次序的處理過程進(jìn)行說明。圖10是表示實(shí)施方式的指定處理過程的流程圖。
如圖10所示,指定部133從判定部132接受判定結(jié)果和預(yù)備分析結(jié)果(步驟s401)。并且,指定部133判定檢體是否為本分析的對象(步驟s402)。在檢體不是本分析的對象的情況下(步驟s402;否),結(jié)束通過指定部133而進(jìn)行的處理。
另外,在檢體為本分析的對象的情況下(步驟s402;是),指定部133確定被預(yù)備分析的檢體,從惡意軟件db20取得相關(guān)的檢體(步驟s403)。并且,指定部133關(guān)于所取得的檢體,在分析對象db30中登記檢體和預(yù)備分析中的分析環(huán)境的設(shè)定(步驟s404)。
并且,指定部133對于新登記到分析對象db30中的檢體在內(nèi)的分析對象db30內(nèi)的檢體,根據(jù)預(yù)備分析結(jié)果而再次計(jì)算本分析的優(yōu)先次序(步驟s405)。在該情況下,指定部133將登記檢體的日期時間為要素而指定優(yōu)先次序。即,指定部133對于登記日期時間越新的檢體,將優(yōu)先次序指定為越高。另外,對于登記日期時間相同的檢體,指定部133對通信目的地件數(shù)越多的檢體,將優(yōu)先次序設(shè)定為越高。
并且,指定部133更新分析對象db30內(nèi)的本分析的優(yōu)先次序(步驟s406)。從而,結(jié)束通過指定部133進(jìn)行的指定處理。
[變形例]
在上述的實(shí)施方式中,對惡意軟件分析系統(tǒng)1在封閉環(huán)境或開放環(huán)境下對惡意軟件進(jìn)行動態(tài)分析,從而根據(jù)與從惡意軟件發(fā)起的通信相關(guān)的信息,選定執(zhí)行本分析的檢體的情況進(jìn)行了說明。
在此,惡意軟件分析系統(tǒng)1也可以根據(jù)與檢體相關(guān)的外部信息而判定是否為本分析的對象。例如,惡意軟件分析系統(tǒng)1使用附屬于所收集的檢體的信息而執(zhí)行檢體的判定。具體地,惡意軟件分析系統(tǒng)1可進(jìn)行如下判定:在檢體最初被登記到檢體共享站點(diǎn)等的時期比規(guī)定的時期晚的情況下,從本分析對象中除去。根據(jù)惡意軟件的不同,有的惡意軟件從相當(dāng)?shù)钠陂g之前開始(例如,從10年以上之前開始)存在于因特網(wǎng)上,并且還在繼續(xù)進(jìn)行拡散。而這樣的惡意軟件想必只要按照通常的方式對網(wǎng)絡(luò)的系統(tǒng)進(jìn)行維修則即可完成對策,本分析的優(yōu)先次序并不高。因此,在向檢體共享站點(diǎn)等登記的登記時期早于事先設(shè)定的規(guī)定期間的情況下,惡意軟件分析系統(tǒng)1從本分析的對象中除去。從而,惡意軟件分析系統(tǒng)1在不進(jìn)行特殊的處理的情況下,能夠?qū)⑸鲜鲞@樣的檢體從本分析的對象除去。
另外,惡意軟件分析系統(tǒng)1可使用與為了登記到檢體共享站點(diǎn)等而進(jìn)行投稿的人數(shù)相關(guān)的信息選定檢體。在該情況下,惡意軟件分析系統(tǒng)1中的預(yù)備分析部131取得向檢體共享站點(diǎn)等投稿了與惡意軟件相關(guān)的信息的人數(shù)即投稿者數(shù)。另外,判定部132根據(jù)投稿者數(shù)而判定是否將惡意軟件作為分析的對象。另外,指定部133根據(jù)通過判定部132而判定為分析的對象的惡意軟件之中的投稿者數(shù)的大小,指定被分析的次序的高低。具體地,惡意軟件分析系統(tǒng)1以將向檢體共享站點(diǎn)等的投稿者少于規(guī)定的數(shù)量的檢體優(yōu)先地作為本分析的對象的方式進(jìn)行判定。進(jìn)行目標(biāo)型攻擊這樣的惡意軟件,即,以瞄準(zhǔn)特定的組織而構(gòu)成的惡意軟件與以郵件的附件的形態(tài)擴(kuò)散而瞄準(zhǔn)不特定多數(shù)的這樣的惡意軟件相比,想必發(fā)現(xiàn)者數(shù)量少。利用相關(guān)的情況,惡意軟件分析系統(tǒng)1取得與向檢體共享站點(diǎn)等投稿的投稿者數(shù)相關(guān)的信息,將投稿者數(shù)越少的檢體,優(yōu)先地作為本分析的對象。這樣,惡意軟件分析系統(tǒng)1從投稿者少的檢體開始優(yōu)先地作為本分析的對象,從而對成為在目標(biāo)型攻擊中使用的檢體的可能性高的檢體優(yōu)先地進(jìn)行本分析,生成與檢體相關(guān)的黑名單。
[效果]
如上述,實(shí)施方式的預(yù)備分析裝置100包括:預(yù)備分析部131,其通過執(zhí)行作為分析對象的候選而取得的惡意軟件,取得與從惡意軟件發(fā)起的通信相關(guān)的信息;判定部132,其根據(jù)通過預(yù)備分析部131取得的信息,判定是否將惡意軟件作為分析的對象;及指定部133,其對于通過判定部132判定為分析的對象的惡意軟件,根據(jù)通過預(yù)備分析部131取得的信息,指定所分析的次序。
這樣,實(shí)施方式的惡意軟件分析系統(tǒng)1對于惡意軟件而執(zhí)行預(yù)備分析處理,根據(jù)預(yù)備分析的結(jié)果而判定本分析對象。另外,惡意軟件分析系統(tǒng)1對于成為本分析的對象的惡意軟件而指定處理的優(yōu)先次序。從而,惡意軟件分析系統(tǒng)1能夠有效地選定希望進(jìn)行本分析處理的惡意軟件。
另外,在將惡意軟件與外部的通信網(wǎng)絡(luò)(例如,因特網(wǎng))隔離的環(huán)境即封閉環(huán)境下執(zhí)行惡意軟件的情況下,預(yù)備分析部131作為與從惡意軟件發(fā)起的通信相關(guān)的信息,取得與通信目的地即ip地址的直接指定的有無或成功進(jìn)行名稱解決的通信的有無相關(guān)的信息。并且,在通過預(yù)備分析部131取得的信息中存在ip地址的直接指定或成功進(jìn)行名稱解決的通信的任何一個的情況下,判定部132將該惡意軟件判定為分析的對象。并且,指定部133根據(jù)ip地址或通過成功進(jìn)行名稱解決的通信而確定的通信目的地的件數(shù),指定分析該惡意軟件的次序。
這樣,實(shí)施方式的惡意軟件分析系統(tǒng)1通過在封閉環(huán)境下執(zhí)行惡意軟件,從而在不被攻擊者所知的情況下,取得與惡意軟件的通信相關(guān)的信息。從而,惡意軟件分析系統(tǒng)1能夠有效地進(jìn)行惡意軟件的分析。
另外,在可將惡意軟件與外部的通信網(wǎng)絡(luò)連接的環(huán)境即開放環(huán)境下執(zhí)行惡意軟件的情況下,預(yù)備分析部131作為與從惡意軟件發(fā)起的通信相關(guān)的信息,取得與獲得錯誤以外的響應(yīng)的通信的有無相關(guān)的信息。并且,在通過預(yù)備分析部131而取得的信息中存在獲得錯誤以外的響應(yīng)的通信的情況下,判定部132將該惡意軟件判定為分析的對象。并且,指定部133根據(jù)獲得錯誤以外的響應(yīng)的通信目的地的件數(shù),指定分析該惡意軟件的次序。
這樣,實(shí)施方式的惡意軟件分析系統(tǒng)1通過在開放環(huán)境下執(zhí)行惡意軟件,從而能夠假設(shè)實(shí)際惡意軟件進(jìn)行動作的環(huán)境而進(jìn)行分析。在該情況下,能夠?qū)⒃陬A(yù)備分析中確立通信的惡意軟件而作為本分析的對象,因此能夠節(jié)省對實(shí)際上不進(jìn)行通信的惡意軟件進(jìn)行本分析這樣的本分析處理中的浪費(fèi)。其結(jié)果,惡意軟件分析系統(tǒng)1能夠有效地進(jìn)行惡意軟件的分析。
另外,預(yù)備分析部131在執(zhí)行惡意軟件的終端中,通過在將安裝于終端的os、庫、或應(yīng)用任意地組合的多個執(zhí)行環(huán)境下執(zhí)行惡意軟件,從而針對每個執(zhí)行環(huán)境取得從該惡意軟件發(fā)起的通信中的通信目的地的件數(shù)。并且,指定部133根據(jù)通過預(yù)備分析部131而針對每個執(zhí)行環(huán)境所取得的通信目的地的件數(shù)之中的最多的通信目的地的件數(shù),指定分析惡意軟件的次序。
這樣,實(shí)施方式的惡意軟件分析系統(tǒng)1在預(yù)備分析的階段中在各種執(zhí)行環(huán)境下確認(rèn)惡意軟件的動作。即,惡意軟件分析系統(tǒng)1在生成惡意軟件進(jìn)行惡性通信的可能性高的環(huán)境的基礎(chǔ)上,取得與惡意軟件的通信相關(guān)的信息,從而適當(dāng)?shù)嘏卸☉?yīng)優(yōu)先地進(jìn)行本分析的惡意軟件,并指定優(yōu)先次序。另外,惡意軟件分析系統(tǒng)1在本分析中也取得與執(zhí)行環(huán)境等的分析環(huán)境相關(guān)的信息,因此能夠提高本分析處理的効率。
另外,預(yù)備分析部131關(guān)于構(gòu)成處理對象的惡意軟件,取得該惡意軟件經(jīng)由通信網(wǎng)絡(luò)而初次登記到一元地貯存惡意軟件的規(guī)定的數(shù)據(jù)庫(例如,惡意軟件共享站點(diǎn))中的日期時間即登記日期時間。并且,判定部132根據(jù)登記日期時間而判定是否將惡意軟件作為分析的對象。并且,指定部133對于在通過判定部132而判定為分析的對象的惡意軟件之中登記日期時間越新的惡意軟件,將分析的次序指定為越高。
從而,實(shí)施方式的惡意軟件分析系統(tǒng)1能夠適當(dāng)?shù)剡x定新發(fā)現(xiàn)的惡意軟件等應(yīng)優(yōu)先地分析的惡意軟件。另外,惡意軟件分析系統(tǒng)1能夠?qū)南喈?dāng)?shù)钠陂g之前開始被登記到惡意軟件共享站點(diǎn)的針對對策的需求不高的惡意軟件從本分析的對象除外。因此,惡意軟件分析系統(tǒng)1能夠有效地進(jìn)行惡意軟件的分析處理。
另外,預(yù)備分析部131取得向規(guī)定的數(shù)據(jù)庫投稿了與惡意軟件相關(guān)的信息的人數(shù)即投稿者數(shù)。并且,判定部132根據(jù)投稿者數(shù)而判定是否將該惡意軟件作為分析的對象。并且,指定部133根據(jù)在通過判定部132而判定為分析的對象的惡意軟件之中的投稿者數(shù)的大小,指定分析的次序的高低。例如,指定部133對于投稿者數(shù)越少的惡意軟件,將分析的次序指定為越高。
這樣,實(shí)施方式的惡意軟件分析系統(tǒng)1通過將向惡意軟件共享站點(diǎn)等的投稿者的人數(shù)作為用于指定次序的要素,從而能夠?qū)υ谀繕?biāo)型攻擊中使用的危險(xiǎn)性高的惡意軟件優(yōu)先地進(jìn)行本分析。
(結(jié)構(gòu)等)
另外,圖示的各個裝置的各個結(jié)構(gòu)要素是功能概念性的要素,在物理上無需必須構(gòu)成為如圖所示的結(jié)構(gòu)。即,各裝置的分散、綜合的具體的形態(tài)不限于圖示的形態(tài),可根據(jù)各種負(fù)荷、使用情況等,將其全部或一部分以任意的單位功能性地或物理性地分散、綜合而構(gòu)成。進(jìn)而,在各裝置中進(jìn)行的各處理功能的全部或任意的一部分可由cpu及通過該cpu而分析執(zhí)行的程序而實(shí)現(xiàn),或者,作為通過有線邏輯構(gòu)成的硬件而實(shí)現(xiàn)。
另外,在本實(shí)施方式中所說明的各處理中,可將以自動地進(jìn)行的方式進(jìn)行說明的處理的全部或一部分手動地進(jìn)行,或?qū)⒁允謩拥剡M(jìn)行的方式進(jìn)行說明的處理的全部或一部分以公知的方法自動地進(jìn)行。此外,關(guān)于包括在上述文中、附圖中所示的處理過程、控制過程、具體的名稱、各種的數(shù)據(jù)、參數(shù)的信息,除了特別記載的情況之外,可任意地進(jìn)行變更。
(程序)
另外,關(guān)于上述實(shí)施方式的惡意軟件分析系統(tǒng)1所執(zhí)行的處理,可制作成用計(jì)算機(jī)可執(zhí)行的語言所記載的程序。在該情況下,通過由計(jì)算機(jī)執(zhí)行程序,從而可獲得與上述實(shí)施方式相同的效果。進(jìn)而,將相關(guān)的程序記錄到計(jì)算機(jī)可讀取的記錄介質(zhì)中,使計(jì)算機(jī)讀入記錄在該記錄介質(zhì)中的程序而執(zhí)行,從而實(shí)現(xiàn)與上述實(shí)施方式相同的處理。下面,對執(zhí)行實(shí)現(xiàn)與惡意軟件分析系統(tǒng)1相同的功能的惡意軟件分析程序的計(jì)算機(jī)的一例進(jìn)行說明。
圖11是表示執(zhí)行惡意軟件分析程序的計(jì)算機(jī)的圖。如圖11所示,計(jì)算機(jī)1000例如具備存儲器1010、cpu(centralprocessingunit:中央處理器)1020、硬盤驅(qū)動器接口1030、盤驅(qū)動器接口1040、串行端口接口1050、視頻適配器1060、網(wǎng)絡(luò)接口1070。這些各個部通過總線1080而連接。
存儲器1010包括rom(readonlymemory:只讀存儲器)1011及ram(randomaccessmemory:隨機(jī)存取存儲器)1012。rom1011例如存儲bios(basicinputoutputsystem:基本輸入輸出系統(tǒng))等引導(dǎo)程序。硬盤驅(qū)動器接口1030與硬盤驅(qū)動器1090連接。盤驅(qū)動器接口1040與盤驅(qū)動器1041連接。例如,磁盤、光盤等可拆裝的存儲介質(zhì)挿入盤驅(qū)動器1041中。串行端口接口1050上例如連接有鼠標(biāo)1110及鍵盤1120。視頻適配器1060上例如連接有顯示器1130。
在此,如圖11所示,硬盤驅(qū)動器1090例如存儲os1091、應(yīng)用程序1092、程序模塊1093及程序數(shù)據(jù)1094。上述實(shí)施方式中說明的各個信息例如存儲到硬盤驅(qū)動器1090、存儲器1010。
另外,將惡意軟件分析程序例如作為記載有通過計(jì)算機(jī)1000而執(zhí)行的指令的程序模塊而存儲到硬盤驅(qū)動器1090。具體地,將記載有在上述實(shí)施方式中說明的預(yù)備分析裝置100及本分析裝置200所執(zhí)行的各個處理的程序模塊存儲到硬盤驅(qū)動器1090。
另外,將通過惡意軟件分析程序而進(jìn)行的信息處理中所使用的數(shù)據(jù)作為程序數(shù)據(jù)而例如存儲到硬盤驅(qū)動器1090。并且,cpu1020根據(jù)需要而在ram1012讀出存儲于硬盤驅(qū)動器1090的程序模塊1093、程序數(shù)據(jù)1094,從而執(zhí)行上述的各個過程。
另外,關(guān)于惡意軟件分析程序的程序模塊1093、程序數(shù)據(jù)1094不限于存儲到硬盤驅(qū)動器1090的情況,例如,也可以存儲到可拆裝的存儲介質(zhì)中,并經(jīng)由盤驅(qū)動器1041等而通過cpu1020來讀出。或者,也可以將關(guān)于惡意軟件分析程序的程序模塊1093、程序數(shù)據(jù)1094存儲到經(jīng)由lan(localareanetwork:局域網(wǎng))、wan(wideareanetwork:廣域網(wǎng))等網(wǎng)絡(luò)而連接的其他的計(jì)算機(jī),并經(jīng)由網(wǎng)絡(luò)接口1070而通過cpu1020來讀出。
符號說明
1惡意軟件分析系統(tǒng)
10惡意軟件收集系統(tǒng)
20惡意軟件db
30分析對象db
100預(yù)備分析裝置
110if部
120存儲部
121執(zhí)行日志db
122封閉環(huán)境執(zhí)行日志表
123開放環(huán)境執(zhí)行日志表
130控制部
131預(yù)備分析部
132判定部
133指定部
200本分析裝置
210本分析部
220分析日志db