用以檢測(cè)惡意軟件的計(jì)算裝置制造方法
【專利摘要】本發(fā)明揭示一種用于計(jì)算裝置以確定應(yīng)用程序是否為惡意軟件的設(shè)備和方法。所述計(jì)算裝置可包含:查詢記錄器,其記錄所述計(jì)算裝置上的所述應(yīng)用程序的行為以產(chǎn)生日志;行為分析引擎,其分析來(lái)自所述查詢記錄器的所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量;和分類器,其將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件。
【專利說(shuō)明】用以檢測(cè)惡意軟件的計(jì)算裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明一般來(lái)說(shuō)涉及一種能夠檢測(cè)應(yīng)用程序是否為惡意軟件的計(jì)算裝置。
【背景技術(shù)】
[0002]計(jì)算裝置常常用以執(zhí)行起源于許多源的相異應(yīng)用程序。不幸的是,常常將具有惡意意圖的應(yīng)用程序(例如,惡意軟件)安裝到用戶的計(jì)算裝置上。用戶通常未意識(shí)到此情形,這是因?yàn)閻阂鈶?yīng)用程序常常偽裝為眾所熟知的應(yīng)用程序。另外,這些惡意應(yīng)用程序更多地利用對(duì)于其功能來(lái)說(shuō)必要的許可。
[0003]保護(hù)計(jì)算裝置免受安全威脅(例如,惡意軟件)為現(xiàn)代計(jì)算裝置的關(guān)注點(diǎn)。惡意軟件包含試圖損害計(jì)算裝置或用戶的不希望的應(yīng)用程序。不同類型的惡意軟件包含特洛伊、蠕蟲、鍵盤記錄器、病毒、后門和間諜軟件。惡意軟件創(chuàng)作者可能受搜集個(gè)人信息(例如,信用卡號(hào)碼和銀行賬戶號(hào)碼)或致使蜂窩電話連接到付費(fèi)服務(wù)的需要而促動(dòng)。因此,存在促動(dòng)惡意軟件創(chuàng)作者開發(fā)用于規(guī)避檢測(cè)的更復(fù)雜方法的財(cái)務(wù)獎(jiǎng)勵(lì)。
[0004]傳統(tǒng)的惡意軟件簽名檢測(cè)方法從目標(biāo)應(yīng)用程序的實(shí)際可執(zhí)行部分的不變部分提取簽名?;诤灻膼阂廛浖z測(cè)需要用于每一惡意軟件變體的簽名(例如,惡意軟件的代碼中的獨(dú)特樣式)。因此,不可能利用基于簽名的惡意軟件檢測(cè)來(lái)檢測(cè)未知的惡意軟件。另外,甚至對(duì)于已知的惡意軟件,在檢測(cè)到簽名與實(shí)際上在計(jì)算裝置上更新簽名之間往往也會(huì)存在延遲。另外,使用簽名進(jìn)行的惡意軟件檢查常常為處理器和存儲(chǔ)器密集的。對(duì)于移動(dòng)計(jì)算裝置來(lái)說(shuō),此情形尤其更困難。而且,因?yàn)橐苿?dòng)裝置(例如,蜂窩電話)上的簽名檢查昂貴,所以許多檢測(cè)器僅檢查應(yīng)用程序文件名以查找眾所熟知的惡意應(yīng)用程序。
[0005]由于這些問(wèn)題,因此以下情形將為有益的:利用行為分析來(lái)實(shí)現(xiàn)特性化、比較及分類計(jì)算裝置上的應(yīng)用程序以確定應(yīng)用程序是否為惡意軟件的目的,-所述操作為處理器和存儲(chǔ)器較不密集的且可以更迅速方式發(fā)生。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的方面可涉及一種用于計(jì)算裝置以確定應(yīng)用程序是否為惡意軟件的設(shè)備和方法。所述計(jì)算裝置可包含:查詢記錄器,其記錄所述計(jì)算裝置上的所述應(yīng)用程序的行為以產(chǎn)生日志;行為分析引擎,其分析來(lái)自所述查詢記錄器的所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量;和分類器,其將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件。
[0007]本發(fā)明的方面還可涉及一種用于服務(wù)器以確定對(duì)于計(jì)算裝置來(lái)說(shuō)應(yīng)用程序是否為惡意軟件的設(shè)備和方法。所述服務(wù)器可包含:處理電路,其從多個(gè)計(jì)算裝置接收多個(gè)行為向量集,其中每一行為向量集可特性化應(yīng)用程序的行為;和行為分析引擎。所述行為分析引擎可基于所述所接收行為向量集將全局分類器更新為良性或惡意軟件。
【專利附圖】
【附圖說(shuō)明】
[0008]圖1為可在其中實(shí)踐本發(fā)明的方面的系統(tǒng)的框圖。
[0009]圖2為說(shuō)明可基于行為分析引擎和對(duì)日志的一組查詢而產(chǎn)生的行為向量的框圖。
[0010]圖3為說(shuō)明查詢、動(dòng)作和動(dòng)作屬性的實(shí)例的表格。
[0011]圖4為說(shuō)明利用應(yīng)用程序代碼和原生代碼在計(jì)算裝置上操作的應(yīng)用程序的框圖。
[0012]圖5為說(shuō)明利用行為分析引擎分析來(lái)自查詢記錄器的日志以便產(chǎn)生特性化應(yīng)用程序的行為的行為向量以便將應(yīng)用程序識(shí)別為良性或惡意軟件的結(jié)果的表格。
[0013]圖6為說(shuō)明可用以聚集來(lái)自眾多計(jì)算裝置的行為報(bào)告的服務(wù)器的圖。
【具體實(shí)施方式】
[0014]詞語(yǔ)“示范性”在本文中用于意味著“充當(dāng)實(shí)例、例子或說(shuō)明”。本文中描述為“示范性”或描述為“實(shí)例”的任何方面或?qū)嵤├幢貞?yīng)被解釋為比其它方面或?qū)嵤├齼?yōu)選或有利。
[0015]參看圖1,圖1為可在其中實(shí)踐本發(fā)明的方面的系統(tǒng)100的框圖。明確地說(shuō),系統(tǒng)100說(shuō)明可用以確定應(yīng)用程序是否為惡意軟件的計(jì)算裝置102。計(jì)算裝置102可包括查詢記錄器108、行為分析引擎122和分類器132。在一個(gè)方面中,查詢記錄器108可記錄計(jì)算裝置上的應(yīng)用程序的行為以產(chǎn)生日志120。日志120可為由應(yīng)用程序執(zhí)行或與應(yīng)用程序相關(guān)聯(lián)的動(dòng)作的日志。動(dòng)作日志120因此展示應(yīng)用程序的行為。行為分析引擎122可分析來(lái)自查詢記錄器的日志120以產(chǎn)生特性化應(yīng)用程序的行為的行為向量130。分類器132可將應(yīng)用程序的行為向量130分類為良性140或惡意軟件150。如果行為向量130經(jīng)分類為惡意軟件150,那么可將與行為向量130相關(guān)聯(lián)的應(yīng)用程序刪除或限制其使用。如將描述的,可產(chǎn)生許多不同的行為向量130以特性化應(yīng)用程序的行為且基于這些行為,分類器132可將應(yīng)用程序分類為良性140或惡意軟件150。
[0016]計(jì)算裝置102可包含處理器104、存儲(chǔ)器106和接口 110。應(yīng)了解,計(jì)算裝置102可包含顯示裝置、用戶接口(例如,鍵盤、觸摸屏等)、供電裝置(例如,電池),以及通常與計(jì)算裝置相關(guān)聯(lián)的其它組件。計(jì)算裝置102可為移動(dòng)裝置或非移動(dòng)裝置。舉例來(lái)說(shuō),接口110可為無(wú)線收發(fā)器以通過(guò)無(wú)線鏈路將呼叫和數(shù)據(jù)發(fā)射到無(wú)線網(wǎng)絡(luò)/從無(wú)線網(wǎng)絡(luò)接收呼叫和數(shù)據(jù),或可為用于直接連接到網(wǎng)絡(luò)(例如,因特網(wǎng))的有線接口。因此,計(jì)算裝置102可為:移動(dòng)裝置、無(wú)線裝置、蜂窩電話、個(gè)人數(shù)字助理、移動(dòng)計(jì)算機(jī)、平板計(jì)算機(jī)、個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)或任何類型的計(jì)算裝置。
[0017]計(jì)算裝置102可包含處理器104,其經(jīng)配置以執(zhí)行指令以用于實(shí)施查詢記錄器108、行為分析引擎122和分類器132。存儲(chǔ)器106可耦合到處理器104以存儲(chǔ)供處理器104執(zhí)行的指令。在一個(gè)方面中,計(jì)算裝置102可包含處理器104,其經(jīng)配置以執(zhí)行指令以用于實(shí)施以下各者:查詢記錄器108,其可記錄計(jì)算裝置102上的應(yīng)用程序的行為以產(chǎn)生動(dòng)作日志120 ;行為分析引擎122,其可分析來(lái)自查詢記錄器108的動(dòng)作日志120以產(chǎn)生特性化應(yīng)用程序的行為的行為向量130 ;和分類器132,其可將應(yīng)用程序的行為向量130分類為良性140或惡意軟件150。如果行為向量130經(jīng)分類為惡意軟件150,那么可將與行為向量130相關(guān)聯(lián)的應(yīng)用程序刪除或限制其由計(jì)算裝置102使用。
[0018]應(yīng)了解,如下文將描述的本發(fā)明的方面可結(jié)合由計(jì)算裝置102的處理器104和/或計(jì)算裝置102的其它電路和/或其它裝置進(jìn)行的指令的執(zhí)行來(lái)實(shí)施。明確地說(shuō),計(jì)算裝置102的電路(包含但不限于處理器104)可在程序、例行程序或指令的執(zhí)行的控制下操作以執(zhí)行根據(jù)本發(fā)明的實(shí)施例的方法或過(guò)程。舉例來(lái)說(shuō),此程序可在固件或軟件中加以實(shí)施(例如,存儲(chǔ)在存儲(chǔ)器106和/或其它地點(diǎn))且可由處理器來(lái)實(shí)施,例如,處理器104和/或計(jì)算裝置102的其它電路。另外,應(yīng)了解,術(shù)語(yǔ)“處理器”、“微處理器”、“電路”、“控制器”等是指能夠執(zhí)行邏輯、命令、指令、軟件、固件、功能性等的任何類型的邏輯或電路。
[0019]另外,應(yīng)了解,查詢記錄器108、行為分析引擎122和分類器132的一些或所有功能可由計(jì)算裝置102自身來(lái)執(zhí)行及/或一些或所有功能可由經(jīng)由接口 110(以無(wú)線方式或有線方式)連接到計(jì)算裝置102的另一計(jì)算裝置來(lái)執(zhí)行。因此,一些和/或所有功能可由另一計(jì)算裝置來(lái)執(zhí)行且將結(jié)果傳送回到計(jì)算裝置102。而且,根據(jù)特定方面,分類器132可為機(jī)器學(xué)習(xí)分類器且計(jì)算裝置102可為移動(dòng)裝置。
[0020]考慮特定實(shí)例,如圖1中所展示,可將四個(gè)應(yīng)用程序加載(具有或不具有用戶的同意)到計(jì)算裝置102:新聞應(yīng)用程序160 (例如,CNN)、游戲(例如,保齡球戲)162、游戲(例如,蛇)164和游戲(例如,鳥)166。計(jì)算裝置102可自動(dòng)地確定這些應(yīng)用程序?yàn)榱夹赃€是惡意軟件。明確地說(shuō),查詢記錄器108可記錄計(jì)算裝置上的應(yīng)用程序160、162、164和166的動(dòng)作或行為以產(chǎn)生動(dòng)作日志120。行為分析引擎122可分析所述應(yīng)用程序中的每一者的動(dòng)作日志120以產(chǎn)生所述應(yīng)用程序中的每一者的行為向量130,所述行為向量特性化每一應(yīng)用程序160、162、164和166的行為。分類器132可將應(yīng)用程序160、162、164和166中的每一者的行為向量130分類為良性140或惡意軟件150。在此實(shí)例中,基于新聞應(yīng)用程序160和游戲應(yīng)用程序166的行為向量130將新聞應(yīng)用程序160和游戲應(yīng)用程序166分類為良性140且允許其由計(jì)算裝置102使用。另一方面,基于游戲應(yīng)用程序162和164的行為向量130將游戲應(yīng)用程序162和164分類為惡意軟件150且將其刪除或限制其由計(jì)算裝置102使用。下文將更詳細(xì)描述查詢記錄器、動(dòng)作日志、行為分析引擎和行為向量的各方面。
[0021]額外參看圖2,可基于對(duì)動(dòng)作日志120的一組查詢210產(chǎn)生行為向量130。行為分析引擎122可基于查詢210分析通過(guò)日志120記錄的動(dòng)作以產(chǎn)生特性化應(yīng)用程序的行為的行為向量130,以使得分類器可將應(yīng)用程序的行為向量130確定及分類為良性或惡意軟件。還參看圖3,展示圖表300,其提供可供行為分析引擎122利用的查詢310、動(dòng)作320和動(dòng)作屬性330的實(shí)例。
[0022]舉例來(lái)說(shuō),一組查詢310可至少包含存在查詢、量查詢、次序查詢或類別查詢中的一或多者(框312)。查詢310可為所觀測(cè)到的行為或期望的行為。作為另一描述,行為分析引擎122可分析相依于裝置的動(dòng)作220和獨(dú)立于裝置的動(dòng)作222。作為實(shí)例,如圖3中所展示,動(dòng)作320可包含應(yīng)用程序安裝、裝置信息、通信和用戶交互。其它動(dòng)作320可包含:存取裝置信息、啟動(dòng)時(shí)開始、用戶數(shù)據(jù)、包安裝、傳感器、地點(diǎn)、媒體、攝像機(jī)、SMS、電話呼叫、電話信息(框322)。而且,動(dòng)作屬性330可供行為分析引擎122利用,例如:開始時(shí)間、結(jié)束時(shí)間、之前、之后、存在(框332)。應(yīng)了解,這些僅為可供行為分析引擎122利用的查詢、動(dòng)作和動(dòng)作屬性的數(shù)個(gè)實(shí)例且可利用許多其它類型。
[0023]如先前所描述,可利用三個(gè)組件:1)查詢記錄器108,其實(shí)施用以記錄計(jì)算裝置102上的應(yīng)用程序的行為以產(chǎn)生動(dòng)作日志120的機(jī)制;2)行為分析引擎122,其分析動(dòng)作日志120且產(chǎn)生描述正在計(jì)算裝置102上執(zhí)行的應(yīng)用程序的行為的行為向量130 ;和3)分類器132,其將行為向量130分類為良性或惡意類別。
[0024]以此方式,可在行為分析框架中使用行為向量130以檢測(cè)計(jì)算裝置上的惡意軟件。所得行為向量130包含從記錄提取的目標(biāo)觀測(cè)。作為實(shí)例,行為分析引擎122回答關(guān)于動(dòng)作的查詢210(例如,“應(yīng)用程序安裝無(wú)用戶的同意? ”、“應(yīng)用程序表現(xiàn)得像游戲? ”、“網(wǎng)站看上去像新聞網(wǎng)站? ”、“應(yīng)用程序正處理SMS消息? ”、“應(yīng)用程序正處理電話呼叫? ”等等)。對(duì)這些查詢210的回答產(chǎn)生行為向量130。
[0025]作為實(shí)例,每一動(dòng)作可與四種類型的查詢310中的一或多者相關(guān)聯(lián):存在查詢、量查詢、次序查詢和類別查詢。舉例來(lái)說(shuō),存在查詢310可指動(dòng)作集的存在。作為此查詢的實(shí)例,查詢可為確定應(yīng)用程序是否存取裝置信息(例如,已存取電話信息,已存取地點(diǎn)信息等)。行為分析引擎122可確定動(dòng)作日志120是否包含由應(yīng)用程序進(jìn)行的裝置存取的任何日志且可基于此來(lái)設(shè)置行為向量130。舉例來(lái)說(shuō),可設(shè)置行為向量130從而指示已存取電話信息。
[0026]另外,量查詢310可指動(dòng)作的出現(xiàn)次數(shù)。作為此查詢的實(shí)例,查詢可為確定由應(yīng)用程序進(jìn)行的動(dòng)作的出現(xiàn)次數(shù)。作為實(shí)例,此情形可為所發(fā)送的SMS的次數(shù)(例如,經(jīng)由SMS的去話通信)。因此,行為分析引擎122可從動(dòng)作日志120確定所發(fā)送的SMS的次數(shù)。此查詢可用以產(chǎn)生指示已發(fā)送多少次SMS的行為向量130。
[0027]作為另一實(shí)例,次序查詢310可指一序列動(dòng)作的出現(xiàn)次數(shù)。作為此查詢的實(shí)例,查詢可為確定在安裝應(yīng)用程序之前(例如,在安裝之前30秒內(nèi))出現(xiàn)的用戶交互的次數(shù)。因此,行為分析引擎122可從動(dòng)作日志120確定在安裝應(yīng)用程序之前出現(xiàn)的用戶交互(例如,Π事件)的次數(shù)。此查詢可用以產(chǎn)生指示在應(yīng)用程序安裝之前的Π事件的量的行為向量130。
[0028]作為另一實(shí)例,類別查詢310可指應(yīng)用程序是否屬于一類別。作為此查詢的實(shí)例,查詢可為確定應(yīng)用程序是否為基于地點(diǎn)的服務(wù)。因此,行為分析引擎122可從動(dòng)作日志120確定應(yīng)用程序是否為基于地點(diǎn)的服務(wù)及應(yīng)用程序是否屬于地點(diǎn)信息正被存取的類別(基于日志)。作為實(shí)例,當(dāng)正檢索關(guān)于地點(diǎn)信息的次數(shù)的行為向量130時(shí),可使用此查詢。
[0029]另外,行為分析引擎122可利用以下廣泛多種不同類型的動(dòng)作320來(lái)產(chǎn)生行為向量130:應(yīng)用程序安裝、裝置信息、通信、用戶交互、存取裝置信息、啟動(dòng)時(shí)開始、用戶數(shù)據(jù)、包安裝、傳感器、地點(diǎn)、媒體、攝像機(jī)、SMS、電話呼叫和電話信息(框322)??尚袨榉治鲆?22利用如通過(guò)動(dòng)作日志120記錄的這些動(dòng)作中的每一者來(lái)產(chǎn)生特性化應(yīng)用程序的行為的行為向量130。此外,行為分析引擎122可利用以下廣泛多種不同類型的動(dòng)作屬性330來(lái)產(chǎn)生行為向量130:開始時(shí)間、結(jié)束時(shí)間、之前、之后和存在(框332)。行為分析引擎122可利用如通過(guò)動(dòng)作日志120記錄的這些動(dòng)作屬性中的每一者來(lái)輔助產(chǎn)生特性化應(yīng)用程序的行為的行為向量130。
[0030]明確地說(shuō),如圖2中所展示,行為分析引擎122可基于如通過(guò)動(dòng)作日志120記錄的查詢、動(dòng)作、動(dòng)作屬性等產(chǎn)生行為向量130[1,0,0.207,0,2,5,...]以特性化應(yīng)用程序的行為。作為實(shí)例,對(duì)于不同類型的動(dòng)作,大約為5的行為向量可表明頻繁使用,大約為I到2的行為向量可表明罕見使用,且大約為O的行為向量可表明無(wú)用。下文將描述廣泛多種不同類型的應(yīng)用程序、受監(jiān)視的動(dòng)作和由行為分析引擎122對(duì)其進(jìn)行的用以產(chǎn)生行為向量130的分析。
[0031]關(guān)于基于如通過(guò)動(dòng)作日志102記錄及如通過(guò)行為分析引擎122分析的所觀測(cè)到的動(dòng)作進(jìn)行的行為向量130的產(chǎn)生,欲觀測(cè)或監(jiān)視的這些動(dòng)作可基于識(shí)別應(yīng)進(jìn)行監(jiān)視的行為或動(dòng)作的類型,這是因?yàn)槠浔硎咀R(shí)別惡意軟件的較高概率。舉例來(lái)說(shuō),系統(tǒng)專家可識(shí)別哪一組系統(tǒng)事件是關(guān)于具有為惡意軟件的較高概率的高層次行為或動(dòng)作。
[0032]簡(jiǎn)要地參看圖4,應(yīng)用程序可能利用應(yīng)用程序代碼402和原生代碼404在計(jì)算裝置102上操作。應(yīng)用程序代碼402可與計(jì)算裝置102的系統(tǒng)接口的應(yīng)用程序庫(kù)412交互且原生代碼404可與原生庫(kù)414和內(nèi)核416交互。原生代碼404可允許應(yīng)用程序和應(yīng)用程序代碼402利用原生庫(kù)414和內(nèi)核416的基礎(chǔ)功能。明確地說(shuō),基礎(chǔ)功能可允許應(yīng)用程序與計(jì)算裝置102的一些或所有資源交互,例如:傳感器420 (例如,加速度計(jì)、壓力傳感器等)、SMS電話呼叫422、聯(lián)系人列表424、地點(diǎn)傳感器426、網(wǎng)絡(luò)接口 428等。程序庫(kù)(應(yīng)用程序庫(kù)412和原生庫(kù)414)和內(nèi)核416中的每一者可通過(guò)查詢記錄器108來(lái)監(jiān)視。以此方式,查詢記錄器108可監(jiān)視并記錄計(jì)算裝置上的應(yīng)用程序的動(dòng)作以產(chǎn)生動(dòng)作日志120。另外,行為分析引擎122可接著分析來(lái)自查詢記錄器108的應(yīng)用程序的動(dòng)作日志120以產(chǎn)生應(yīng)用程序的特性化應(yīng)用程序的行為的行為向量130。
[0033]作為實(shí)例,對(duì)于游戲應(yīng)用程序,查詢記錄器108可產(chǎn)生以下動(dòng)作的日志:關(guān)于網(wǎng)絡(luò)428使用情況(例如,與網(wǎng)站進(jìn)行網(wǎng)絡(luò)通信)、用戶接口事件和傳感器使用情況420(例如,觸摸傳感器,其中用戶在播放游戲時(shí)握持計(jì)算裝置)的應(yīng)用程序庫(kù)412和原生庫(kù)414的實(shí)質(zhì)使用情況的動(dòng)作,以及例如實(shí)質(zhì)媒體動(dòng)作等其它動(dòng)作。以此方式,行為分析引擎122可分析來(lái)自查詢記錄器108的應(yīng)用程序的動(dòng)作日志120以產(chǎn)生應(yīng)用程序的特性化應(yīng)用程序的行為的行為向量130,所述行為例如:頻繁網(wǎng)絡(luò)使用情況、傳感器使用情況和媒體使用情況。下文將描述廣泛多種不同類型的應(yīng)用程序、受監(jiān)視的動(dòng)作和由行為分析引擎122對(duì)其進(jìn)行的用以產(chǎn)生行為向量130的分析。
[0034]參看圖5,圖5為說(shuō)明利用行為分析引擎122分析來(lái)自查詢記錄器108的動(dòng)作日志120以便產(chǎn)生特性化應(yīng)用程序的行為的行為向量130以使得分類器132可將應(yīng)用程序分類為良性或惡意軟件的結(jié)果的表格500。
[0035]如表格500中所展示,利用行為分析引擎分析多個(gè)應(yīng)用程序。明確地說(shuō),將以下應(yīng)用程序分類為良性538或惡意軟件536:游戲502、視頻網(wǎng)站(youtube) 504、記事本506、健身506、新聞510、假視頻網(wǎng)站(fake youtube) 520、假酒店搜索522、間諜軟件524、假游戲526和假影片播放器528。
[0036]對(duì)于這些應(yīng)用程序中的每一者,由行為分析引擎基于分析來(lái)自查詢記錄器的動(dòng)作日志產(chǎn)生行為向量529。將行為向量簡(jiǎn)化為頻繁使用530、罕見使用532和無(wú)用534。作為數(shù)值實(shí)例,大約為5的行為向量可表明頻繁使用,大約為I到2的行為向量可表明罕見使用,且大約為O的行為向量可表明無(wú)用。當(dāng)然,可利用任何數(shù)值名稱。行為向量是基于用戶接口(UI)動(dòng)作550、通信動(dòng)作552、傳感器動(dòng)作554、地點(diǎn)556、媒體動(dòng)作558、攝像機(jī)動(dòng)作560、SMS動(dòng)作562、電話呼叫動(dòng)作564和電話信息566來(lái)產(chǎn)生?;诖饲樾危瑢?yīng)用程序表明為惡意軟件應(yīng)用程序536或良性應(yīng)用程序538。
[0037]現(xiàn)在將描述展示利用行為分析引擎分析來(lái)自查詢記錄器的動(dòng)作日志以產(chǎn)生特性化應(yīng)用程序的行為的行為向量以使得可將應(yīng)用程序分類為良性或惡意軟件的結(jié)果的各種實(shí)例。舉例來(lái)說(shuō),將具有指示以下各動(dòng)作的行為向量529的游戲應(yīng)用程序502分類為良性538:頻繁530Π動(dòng)作550、頻繁530通信動(dòng)作552、頻繁530媒體動(dòng)作558和無(wú)534或罕見532電話、SMS、攝像機(jī)、地點(diǎn)等動(dòng)作。將具有指示以下各動(dòng)作的行為向量529的視頻網(wǎng)站應(yīng)用程序504分類為良性538:頻繁530Π動(dòng)作550、頻繁530通信動(dòng)作552和頻繁530媒體動(dòng)作558和無(wú)534電話、SMS、攝像機(jī)、地點(diǎn)等動(dòng)作。將具有指示以下各動(dòng)作的行為向量529的記事本應(yīng)用程序506分類為良性538:頻繁530Π動(dòng)作550和無(wú)534電話、SMS、攝像機(jī)、地點(diǎn)等動(dòng)作。將具有指示以下各動(dòng)作的行為向量529的健身應(yīng)用程序508分類為良性538:頻繁530Π動(dòng)作550、頻繁530通信動(dòng)作552、頻繁530傳感器動(dòng)作554和無(wú)534或罕見532電話、SMS、攝像機(jī)、地點(diǎn)等動(dòng)作。將具有指示以下各動(dòng)作的行為向量529的新聞應(yīng)用程序510分類為良性538:頻繁530Π動(dòng)作550、頻繁530通信動(dòng)作552、頻繁530傳感器動(dòng)作554和頻繁媒體動(dòng)作558,和無(wú)534或罕見532電話、SMS、攝像機(jī)、地點(diǎn)等動(dòng)作。
[0038]另一方面,將具有指示以下各動(dòng)作的行為向量529的假視頻網(wǎng)站應(yīng)用程序520分類為惡意軟件536:罕見532UI動(dòng)作550和罕見SMS動(dòng)作562,但頻繁530通信動(dòng)作552、頻繁530地點(diǎn)動(dòng)作556和頻繁530電話信息566。將具有指示以下各動(dòng)作的行為向量529的假酒店搜索應(yīng)用程序522分類為惡意軟件536:罕見532Π動(dòng)作550和罕見SMS動(dòng)作562,但頻繁530通信動(dòng)作552、頻繁530地點(diǎn)動(dòng)作556和頻繁530電話信息566。將具有指示以下各動(dòng)作的行為向量529的間諜軟件應(yīng)用程序524分類為惡意軟件536:罕見532Π動(dòng)作550,但頻繁530通信動(dòng)作552、頻繁530地點(diǎn)動(dòng)作556、頻繁530電話呼叫564和頻繁530電話信息566。將具有指示以下各動(dòng)作的行為向量529的假游戲應(yīng)用程序526分類為惡意軟件536 --無(wú)534UI動(dòng)作550,但頻繁530通信動(dòng)作552、頻繁530SMS動(dòng)作562和頻繁530電話信息566。將具有指示以下各動(dòng)作的行為向量529的假影片播放器應(yīng)用程序528分類為惡意軟件536 --無(wú)534Π動(dòng)作550和媒體動(dòng)作558,但頻繁530SMS動(dòng)作562。
[0039]已發(fā)現(xiàn),通過(guò)具有由行為分析引擎122根據(jù)來(lái)自查詢記錄器120的動(dòng)作日志120分析以便產(chǎn)生一組廣泛行為向量130的一組廣泛動(dòng)作,因此,可分析足夠區(qū)分特性以確定應(yīng)將應(yīng)用程序分類為惡意軟件還是良性。已觀測(cè)到,許多惡意應(yīng)用程序試圖竊取用戶信息及/或進(jìn)行錯(cuò)誤收費(fèi)以收取金錢(例如,假SMS收費(fèi))。此外,通過(guò)利用行為分析來(lái)實(shí)現(xiàn)特性化、比較及分類計(jì)算裝置102上的應(yīng)用程序以便確定應(yīng)用程序?yàn)閻阂廛浖€是良性的目的,利用有限處理器和存儲(chǔ)器功能性(與基于簽名的惡意軟件檢測(cè)形成對(duì)比)且可立即發(fā)生而不必等待來(lái)自服務(wù)器的關(guān)于新惡意軟件或新的所需簽名的更新。
[0040]額外參看圖6,根據(jù)本發(fā)明的另一方面,可利用包含服務(wù)器620的系統(tǒng)600來(lái)聚集來(lái)自眾多計(jì)算裝置602的行為報(bào)告。盡管僅展示一個(gè)計(jì)算裝置602,但下文中所描述的方面涉及多個(gè)或眾多計(jì)算裝置602。計(jì)算裝置602的組件和功能以與先前參考計(jì)算裝置102所描述的方式相同的方式操作,因此為了簡(jiǎn)潔起見,將不再詳細(xì)重復(fù)這些組件和功能。在一個(gè)方面中,服務(wù)器620包括組件622,所述組件622包含至少一處理電路624、行為分析引擎626和全局分類器628。處理電路624可包含發(fā)射器和接收器。先前已詳細(xì)描述行為分析引擎、查詢記錄器、行為向量、分類器等以及其它組件和功能的使用。處理電路624可經(jīng)配置以基于存儲(chǔ)于耦合到處理電路624的存儲(chǔ)器或其它組件中的指令執(zhí)行指令以用于用接收器、發(fā)射器實(shí)施及操作行為分析引擎626、全局分類器628以及其它組件。所屬領(lǐng)域的技術(shù)人員應(yīng)了解,利用處理器和存儲(chǔ)器的服務(wù)器為所屬領(lǐng)域中眾所熟知的。
[0041]在一個(gè)方面中,服務(wù)器620的處理電路624的接收器可接收來(lái)自多個(gè)不同計(jì)算裝置602的多個(gè)行為向量集610 (例如,當(dāng)計(jì)算裝置602通過(guò)其行為分析引擎608確定應(yīng)用程序的行為可能為可疑的或偶然的行為向量集更新時(shí)(參見決策框612))。如先前所描述,行為向量集610特性化應(yīng)用程序的行為。服務(wù)器620的行為分析引擎626可基于來(lái)自計(jì)算裝置602的所接收行為向量集610更新全局分類器628。另外,如將描述的,全局分類器628可將來(lái)自計(jì)算裝置602的關(guān)于應(yīng)用程序的識(shí)別應(yīng)用程序具有可疑行為(例如,框612)的所接收行為向量集分類為良性或惡意軟件。
[0042]在一個(gè)特定方面中,計(jì)算裝置602可確定應(yīng)用程序的行為為可疑的且可將應(yīng)用程序的行為向量集610發(fā)射到服務(wù)器620以使服務(wù)器620分析行為向量集610。服務(wù)器620的全局分類器628可將所發(fā)射的行為向量集610分類為良性或惡意軟件。如果應(yīng)用程序的行為向量集610經(jīng)分類為惡意軟件,那么可將惡意軟件指示符發(fā)射到所述多個(gè)計(jì)算裝置602且計(jì)算裝置602可刪除632所述應(yīng)用程序。
[0043]另外,服務(wù)器620可經(jīng)由處理電路624的發(fā)射器將更新發(fā)射到所述多個(gè)計(jì)算裝置602,其中所述更新用以更新所述多個(gè)計(jì)算裝置602的行為分析引擎608。以此方式,基于從眾多計(jì)算裝置602接收的所有行為向量集和其它數(shù)據(jù),服務(wù)器620可周期性地更新由計(jì)算裝置自身執(zhí)行的行為分析。
[0044]因此,服務(wù)器620通過(guò)聚集來(lái)自眾多計(jì)算裝置602的行為報(bào)告而作為眾包服務(wù)器操作。通過(guò)隨著時(shí)間收集大輸入集,以加速方式產(chǎn)生更準(zhǔn)確且經(jīng)更新的行為模型且可將所述模型傳遞到所有操作計(jì)算裝置602上。而且,當(dāng)確定應(yīng)用程序?yàn)閻阂廛浖r(shí),可向所有計(jì)算裝置602通知此情形。
[0045]作為操作的實(shí)例,如圖6中所展示,計(jì)算裝置602的查詢記錄器604可記錄應(yīng)用程序的行為以產(chǎn)生動(dòng)作日志606。接下來(lái),計(jì)算裝置602的行為分析引擎608可分析動(dòng)作日志608以產(chǎn)生特性化應(yīng)用程序的行為的行為向量集610。作為實(shí)例,行為向量集610可包含至少一個(gè)數(shù)值。在決策框612處,如果計(jì)算裝置602的分類器并未發(fā)現(xiàn)行為向量集指示關(guān)于應(yīng)用程序的任何可疑處(例如,應(yīng)用程序具有為惡意軟件的較低可能性),那么刪除日志(框616)且過(guò)程結(jié)束(框618)。先前已詳細(xì)描述許多這些功能。
[0046]然而,如果計(jì)算裝置602確定行為為可疑的(決策框612),那么計(jì)算裝置602可阻止對(duì)應(yīng)用程序的使用(框614)且可將行為向量集610發(fā)射到服務(wù)器620。服務(wù)器620可經(jīng)由處理電路624接收行為向量集610且可檢查行為向量集610以確定應(yīng)用程序?yàn)榱夹赃€是惡意軟件。而且,從計(jì)算裝置602發(fā)射到服務(wù)器620的行為向量集610還可包含關(guān)于應(yīng)用程序已被阻止的指示符。另外,計(jì)算裝置602可將日志以及其它數(shù)據(jù)發(fā)射到服務(wù)器620。應(yīng)注意,此步驟可實(shí)時(shí)地發(fā)生(即,在分類行為時(shí))或可在稍后時(shí)間發(fā)生(例如,在裝置能夠更好地接入帶寬或電力時(shí))。
[0047]基于所接收的行為向量集610,服務(wù)器620的全局分類器628可將應(yīng)用程序分類為良性或惡意軟件。如果應(yīng)用程序的行為向量集610經(jīng)分類為惡意軟件,那么可將惡意軟件指示符發(fā)射到所述多個(gè)計(jì)算裝置602?;诖饲樾?,如果計(jì)算裝置602接收到惡意軟件指示(決策框630),那么計(jì)算裝置602可刪除所述應(yīng)用程序(框632)。然而,如果應(yīng)用程序并非惡意軟件,那么可刪除日志(框616)且過(guò)程完成或結(jié)束(框618),因此計(jì)算裝置602維持正常操作,包含利用應(yīng)用程序。
[0048]在另一方面中,當(dāng)計(jì)算裝置602確定應(yīng)用程序的行為并非可疑時(shí)(框612),計(jì)算裝置602偶爾將其關(guān)于應(yīng)用程序的行為向量集610 (以及日志、查詢,和其它信息)發(fā)射到服務(wù)器620,以使得服務(wù)器620的行為分析引擎626和全局分類器628接收關(guān)于由計(jì)算裝置602利用的應(yīng)用程序的廣泛范圍的信息。以此方式,所有計(jì)算裝置602合作以使服務(wù)器620在其行為模型化中保持經(jīng)更新。
[0049]類似地,服務(wù)器620偶爾經(jīng)由處理電路624將更新發(fā)射到所述多個(gè)計(jì)算裝置602,其中所述更新可供計(jì)算裝置602使用以更新其行為分析引擎608和分類器且一般更新其對(duì)應(yīng)用程序的行為模型化和分析。而且,服務(wù)器620偶爾可經(jīng)由處理電路624將經(jīng)更新的查詢發(fā)射到所述多個(gè)計(jì)算裝置602,使得所述計(jì)算裝置可利用所述更新查詢其動(dòng)作日志606,更新其查詢記錄器604,且可結(jié)合其行為分析引擎608和分類器來(lái)利用以更新對(duì)應(yīng)用程序的行為模型化和分析。以此方式,基于行為更新、行為向量集、查詢以及從服務(wù)器620接收的其它數(shù)據(jù),服務(wù)器620可周期性地更新由計(jì)算裝置602自身執(zhí)行的行為分析。
[0050]因此,服務(wù)器620通過(guò)聚集來(lái)自眾多計(jì)算裝置602的行為報(bào)告而作為眾包服務(wù)器操作。本質(zhì)上,服務(wù)器620可對(duì)照根據(jù)來(lái)自眾多計(jì)算裝置602的合作上傳獲得的良性和惡意行為的模型評(píng)估應(yīng)用程序的行為。通過(guò)隨著時(shí)間收集大輸入集,以加速方式產(chǎn)生更準(zhǔn)確且經(jīng)更新的行為模型且可將所述模型傳遞到所有操作計(jì)算裝置602上??煽紤]對(duì)個(gè)別計(jì)算裝置的偏愛。此外,個(gè)別計(jì)算裝置602可利用基于來(lái)自其它計(jì)算裝置的眾多報(bào)告產(chǎn)生的行為模型。而且,當(dāng)確定應(yīng)用程序?yàn)閻阂廛浖r(shí),可向所有計(jì)算裝置602通知此情形。另外,可通過(guò)利用基于群的服務(wù)器620來(lái)減少個(gè)別計(jì)算裝置602上的監(jiān)視和計(jì)算開銷(用于惡意軟件檢測(cè)的目的)。明確地說(shuō),通過(guò)利用合作分析,可由服務(wù)器620來(lái)累積來(lái)自眾多計(jì)算裝置602的大量行為向量和日志以用于進(jìn)行及時(shí)的惡意軟件檢測(cè)。因此,所得行為模型可為準(zhǔn)確的(低的錯(cuò)誤肯定和錯(cuò)誤否定)及通用的(可俘獲廣泛多種不同類型的惡意軟件)。應(yīng)注意,每一計(jì)算裝置602處的行為分析引擎608的行為模型為獨(dú)特的。另外,從服務(wù)器620接收的總特性經(jīng)獨(dú)特地修改以用于計(jì)算裝置602。
[0051]作為一個(gè)實(shí)例,可在使眾多計(jì)算裝置602與服務(wù)器620合作中利用三個(gè)不同步驟:初始化;合作行為模型化和惡意軟件檢測(cè);和行為模型更新。關(guān)于初始化,可通過(guò)一組已知的不良應(yīng)用程序或惡意軟件和一組已知的良好應(yīng)用程序來(lái)訓(xùn)練行為分析引擎和分類器(例如,用于計(jì)算裝置602)??墒褂脴?biāo)準(zhǔn)監(jiān)督機(jī)器學(xué)習(xí)技術(shù)來(lái)實(shí)現(xiàn)訓(xùn)練過(guò)程。在將計(jì)算裝置602提供給用戶之前,可能需要計(jì)算裝置602從服務(wù)器620獲得其行為分析引擎608的最新的行為模型。另外,服務(wù)器620可為計(jì)算裝置602提供應(yīng)記錄的API列表和關(guān)于如何利用行為分析引擎根據(jù)API產(chǎn)生行為向量(例如,應(yīng)用程序的行為的簡(jiǎn)明表示)的指令。
[0052]關(guān)于合作行為監(jiān)視和惡意軟件檢測(cè),如先前所描述,當(dāng)用戶利用其計(jì)算裝置602時(shí),計(jì)算裝置602針對(duì)每一執(zhí)行中的應(yīng)用程序周期性地利用行為分析引擎608監(jiān)視及計(jì)算行為向量610且通過(guò)利用分類器,可確定此應(yīng)用程序表現(xiàn)得類似于惡意軟件還是良性應(yīng)用程序。由計(jì)算裝置602分類為惡意的應(yīng)用程序可通過(guò)服務(wù)器620來(lái)確認(rèn),且應(yīng)將其從計(jì)算裝置602中去除(例如,框632)或拒絕其安裝。經(jīng)分類為良性的應(yīng)用程序可全面許可地執(zhí)行。對(duì)于經(jīng)確定為可疑的應(yīng)用程序(決策框612),例如,由計(jì)算裝置602自身局部地檢測(cè)到可疑但需要進(jìn)一步調(diào)查,在這些情況下,計(jì)算裝置602可將應(yīng)用程序置于受約束環(huán)境中且可僅允許受限訪問(wèn)??山又鴮⒋藨?yīng)用程序報(bào)告給服務(wù)器620以用于進(jìn)一步調(diào)查,如先前所描述。
[0053]關(guān)于行為模型更新,為了實(shí)現(xiàn)合作,計(jì)算裝置602周期性地將其行為向量610和其它數(shù)據(jù)上傳到服務(wù)器620,如先前所描述。服務(wù)器620另外還可向計(jì)算裝置602請(qǐng)求原始日志。服務(wù)器620 (其可為資源豐富的機(jī)器(或群集))可執(zhí)行深入分析且接著經(jīng)由行為分析引擎626和全局分類器628更新行為模型。如果模型在更新之后顯著地改變,那么服務(wù)器620可將經(jīng)更新的行為模型推送到計(jì)算裝置602的行為分析引擎608和分類器。當(dāng)收集更多數(shù)據(jù)且模型變得穩(wěn)定時(shí),改變可為不頻繁的。
[0054]因此,先前所描述的系統(tǒng)可充當(dāng)額外保護(hù)層,作為對(duì)靜態(tài)分析和基于簽名的反病毒途徑的補(bǔ)充。關(guān)于一個(gè)特定益處,可檢測(cè)未被添加到反病毒數(shù)據(jù)庫(kù)中的惡意軟件或在安裝時(shí)偽裝為良性的惡意軟件。明確地說(shuō),服務(wù)器620通過(guò)聚集來(lái)自眾多計(jì)算裝置602的行為報(bào)告而作為眾包服務(wù)器操作。本質(zhì)上,服務(wù)器620可對(duì)照根據(jù)來(lái)自眾多計(jì)算裝置602的合作上傳獲得的良性和惡意行為的模型評(píng)估應(yīng)用程序的行為。通過(guò)隨著時(shí)間收集大輸入集,以加速方式產(chǎn)生更準(zhǔn)確且經(jīng)更新的行為模型且可將所述模型傳遞到所有操作計(jì)算裝置602上。
[0055]應(yīng)了解,當(dāng)計(jì)算裝置或服務(wù)器為移動(dòng)或無(wú)線裝置時(shí),其可經(jīng)由無(wú)線網(wǎng)絡(luò)中的基于或以其它方式支持任何合適的無(wú)線通信技術(shù)的一或多個(gè)無(wú)線通信鏈路通信。舉例來(lái)說(shuō),在一些方面中,計(jì)算裝置或服務(wù)器可與包含無(wú)線網(wǎng)絡(luò)的網(wǎng)絡(luò)相關(guān)聯(lián)。在一些方面中,網(wǎng)絡(luò)可包括人體區(qū)域網(wǎng)絡(luò)或個(gè)人局域網(wǎng)(例如,超寬帶網(wǎng)絡(luò))。在一些方面中,網(wǎng)絡(luò)可包括局域網(wǎng)或廣域網(wǎng)。無(wú)線裝置可支持或以其它方式使用多種無(wú)線通信技術(shù)、協(xié)議或標(biāo)準(zhǔn)(例如,CDMA、TDMA、0FDM、0FDMA、WiMAX和W1-Fi)中的一或多者。類似地,無(wú)線裝置可支持或以其它方式使用多種對(duì)應(yīng)調(diào)制或多路復(fù)用方案中的一或多者。無(wú)線裝置因此可包含適當(dāng)組件(例如,空中接口)以使用上文或其它無(wú)線通信技術(shù)建立一或多個(gè)無(wú)線通信鏈路及經(jīng)由一或多個(gè)無(wú)線通信鏈路來(lái)通信。舉例來(lái)說(shuō),裝置可包括具有相關(guān)聯(lián)的發(fā)射器和接收器組件(例如,發(fā)射器和接收器)的無(wú)線收發(fā)器,其可包含促進(jìn)無(wú)線介質(zhì)上的通信的各種組件(例如,信號(hào)產(chǎn)生器和信號(hào)處理器)。如眾所熟知的,移動(dòng)無(wú)線裝置因此可以無(wú)線方式與其它移動(dòng)裝置、蜂窩電話、其它有線和無(wú)線計(jì)算機(jī)、因特網(wǎng)網(wǎng)站等通信。
[0056]本文中所描述的技術(shù)可用于各種無(wú)線通信系統(tǒng),例如碼分多址(CDMA)、時(shí)分多址(TDMA)、頻分多址(FDMA)、正交頻分多址(OFDMA)、單載波FDMA(SC-FDMA)及其它系統(tǒng)。術(shù)語(yǔ)“系統(tǒng)”與“網(wǎng)絡(luò)”常常可互換地使用。CDMA系統(tǒng)可實(shí)施例如通用陸地?zé)o線接入(UTRA)、CDMA2000等無(wú)線電技術(shù)。UTRA包含寬帶CDMA (W-CDMA)和CDMA的其它變體。CDMA2000涵蓋暫定標(biāo)準(zhǔn)(IS)-2000、IS-95和IS-856標(biāo)準(zhǔn)。TDMA系統(tǒng)可實(shí)施例如全球移動(dòng)通信系統(tǒng)(GSM)等無(wú)線電技術(shù)。OFDMA系統(tǒng)可實(shí)施例如以下各者等無(wú)線電技術(shù):演進(jìn)型通用陸地?zé)o線接入(演進(jìn)型UTRA或E-UTRA)、超移動(dòng)寬帶(UMB)、電氣電子工程師學(xué)會(huì)(IEEE) 802.11 (W1-Fi)、IEEE 802.16 (WiMAX)、IEEE 802.20、閃存-OFDM.RTM 等。通用陸地?zé)o線接入(UTRA)和E-UTRA為通用移動(dòng)電信系統(tǒng)(UMTS)的部分。3GPP長(zhǎng)期演進(jìn)(LTE)為UMTS的使用E-UTRA的即將到來(lái)的版本,其在下行鏈路上使用OFDMA且在上行鏈路上使用SC-FDMA。UTRA、E_UTRA、UMTS,LTE和GSM描述于來(lái)自名為“第三代合作伙伴計(jì)劃”(3GPP)的組織的文獻(xiàn)中。CDMA2000和UMB描述于來(lái)自名為“第三代合作伙伴計(jì)劃2” (3GPP2)的組織的文獻(xiàn)中。
[0057]可將本文中的教示并入到多種設(shè)備(例如,裝置)內(nèi)(例如,實(shí)施于多種設(shè)備內(nèi)或由多種設(shè)備執(zhí)行)。舉例來(lái)說(shuō),可將本文中所教示的一或多個(gè)方面并入到以下各者中:電話(例如,蜂窩電話)、個(gè)人數(shù)據(jù)助理(“PDA”)、平板計(jì)算機(jī)、移動(dòng)計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)、娛樂(lè)裝置(例如,音樂(lè)或視頻裝置)、耳機(jī)(例如,頭戴式耳機(jī)、聽筒等)、醫(yī)療裝置(例如,生物測(cè)定傳感器、心率監(jiān)視器、步數(shù)計(jì)、EKG裝置等)、用戶I/O裝置、計(jì)算機(jī)、服務(wù)器、銷售點(diǎn)裝置、娛樂(lè)裝置、機(jī)頂盒或任何其它合適的裝置。這些裝置可具有不同的功率和數(shù)據(jù)要求。
[0058]在一些方面中,無(wú)線裝置可包括用于通信系統(tǒng)的接入裝置(例如,W1-Fi接入點(diǎn))。此接入裝置可提供(例如)經(jīng)由有線或無(wú)線通信鏈路到另一網(wǎng)絡(luò)(例如,廣域網(wǎng),例如因特網(wǎng)或蜂窩式網(wǎng)絡(luò))的連接性。因此,接入裝置可使得另一裝置(例如,W1-Fi站)能夠接入另一網(wǎng)絡(luò)或一些其它功能性。另外,應(yīng)了解,所述裝置中的一者或兩者可為便攜式,或在一些情況下,相對(duì)非便攜式。
[0059]所屬領(lǐng)域的技術(shù)人員將理解,可使用多種不同技術(shù)和技藝中的任一者來(lái)表示信息和信號(hào)。舉例來(lái)說(shuō),可由電壓、電流、電磁波、磁場(chǎng)或磁粒子、光場(chǎng)或光粒子或其任何組合來(lái)表示在以上描述中始終參考的數(shù)據(jù)、指令、命令、信息、信號(hào)、位、符號(hào)及碼片。
[0060]所屬領(lǐng)域的技術(shù)人員將進(jìn)一步了解,可將結(jié)合本文中所揭示的實(shí)施例而描述的各種說(shuō)明性邏輯塊、模塊、電路和算法步驟實(shí)施為電子硬件、計(jì)算機(jī)軟件或兩者的組合。為了清楚地說(shuō)明硬件與軟件的此互換性,上文已大致關(guān)于其功能性而描述了各種說(shuō)明性組件、塊、模塊、電路及步驟。所述功能性是實(shí)施為硬件還是軟件取決于特定應(yīng)用及強(qiáng)加于整個(gè)系統(tǒng)的設(shè)計(jì)約束。所屬領(lǐng)域的技術(shù)人員可針對(duì)每一特定應(yīng)用以不同方式來(lái)實(shí)施所描述的功能性,但此類實(shí)施方案決策不應(yīng)被解釋為會(huì)導(dǎo)致脫離本發(fā)明的范圍。
[0061]可使用經(jīng)設(shè)計(jì)以執(zhí)行本文所描述的功能的通用處理器、數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列(FPGA)或其它可編程邏輯裝置、離散門或晶體管邏輯、離散硬件組件或其任何組合來(lái)實(shí)施或執(zhí)行結(jié)合本文中所揭示的實(shí)施例而描述的各種說(shuō)明性邏輯塊、模塊和電路。通用處理器可為微處理器,但在替代例中,處理器可為任何常規(guī)的處理器、控制器、微控制器或狀態(tài)機(jī)。處理器還可實(shí)施為計(jì)算裝置的組合,例如,DSP與微處理器的組合、多個(gè)微處理器的組合、一或多個(gè)微處理器與DSP核心的聯(lián)合,或任何其它此配置。
[0062]可直接以硬件、以由處理器執(zhí)行的軟件模塊或以上述兩者的組合來(lái)體現(xiàn)結(jié)合本文所揭示的實(shí)施例而描述的方法或算法的步驟。軟件模塊可駐留于RAM存儲(chǔ)器、快閃存儲(chǔ)器、ROM存儲(chǔ)器、EPROM存儲(chǔ)器、EEPROM存儲(chǔ)器、寄存器、硬盤、可卸除式磁盤、CD-ROM或所屬領(lǐng)域中已知的任何其它形式的存儲(chǔ)媒體中。示范性存儲(chǔ)媒體耦合到處理器,以使得處理器可從存儲(chǔ)媒體讀取信息及將信息寫入到存儲(chǔ)媒體。在替代例中,存儲(chǔ)媒體可與處理器成一體式。處理器和存儲(chǔ)媒體可駐留于ASIC中。ASIC可駐留于用戶終端中。在替代例中,處理器和存儲(chǔ)媒體可作為離散組件駐留于用戶終端中。
[0063]在一或多個(gè)示范性實(shí)施例中,所描述的功能可在硬件、軟件、固件或其任何組合中實(shí)施。如果以軟件實(shí)施為計(jì)算機(jī)程序產(chǎn)品,那么可將功能作為一或多個(gè)指令或代碼存儲(chǔ)于計(jì)算機(jī)可讀媒體上或經(jīng)由計(jì)算機(jī)可讀媒體予以傳輸。計(jì)算機(jī)可讀媒體包含計(jì)算機(jī)存儲(chǔ)媒體與包含促進(jìn)計(jì)算機(jī)程序從一處傳送到另一處的任何媒體的通信媒體兩者。存儲(chǔ)媒體可為可由計(jì)算機(jī)存取的任何可用媒體。以實(shí)例說(shuō)明而非限制,此類計(jì)算機(jī)可讀媒體可包括RAM、ROM、EEPROMXD-ROM或其它光盤存儲(chǔ)裝置、磁盤存儲(chǔ)裝置或其它磁性存儲(chǔ)裝置,或可用于載送或存儲(chǔ)呈指令或數(shù)據(jù)結(jié)構(gòu)的形式的所要程序碼且可由計(jì)算機(jī)存取的任何其它媒體。而且,可恰當(dāng)?shù)貙⑷魏芜B接稱作計(jì)算機(jī)可讀媒體。舉例來(lái)說(shuō),如果使用同軸電纜、光纜、雙絞線、數(shù)字訂戶線(DSL)或例如紅外線、無(wú)線電及微波等無(wú)線技術(shù)從網(wǎng)站、服務(wù)器或其它遠(yuǎn)程源傳輸軟件,那么同軸電纜、光纜、雙絞線、DSL或例如紅外線、無(wú)線電及微波等無(wú)線技術(shù)包含于媒體的定義中。如本文中所使用,磁盤及光盤包含緊密光盤(CD)、激光光盤、光學(xué)光盤、數(shù)字影音光盤(DVD)、軟磁盤及藍(lán)光光盤,其中磁盤通常磁性地復(fù)制數(shù)據(jù),而光盤使用激光光學(xué)地復(fù)制數(shù)據(jù)。上述各者的組合也應(yīng)包含在計(jì)算機(jī)可讀媒體的范圍內(nèi)。
[0064]提供所揭示實(shí)施例的先前描述以使得任何所屬領(lǐng)域的技術(shù)人員能夠制作或使用本發(fā)明。所屬領(lǐng)域的技術(shù)人員將容易顯而易見對(duì)這些實(shí)施例的各種修改,且在不脫離本發(fā)明的精神或范圍的情況下,本文所界定的一般原理可應(yīng)用于其它實(shí)施例。因此,本發(fā)明并不既定限于本文中所展示的實(shí)施例,而應(yīng)符合與本文中所揭示的原理及新穎特征一致的最廣范圍。
【權(quán)利要求】
1.一種計(jì)算裝置,其包括: 查詢記錄器,其記錄所述計(jì)算裝置上的應(yīng)用程序的行為以產(chǎn)生日志; 行為分析引擎,其分析來(lái)自所述查詢記錄器的所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量;以及 分類器,其將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件。
2.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,如果所述行為向量經(jīng)分類為惡意軟件,那么將與所述行為向量相關(guān)聯(lián)的所述應(yīng)用程序刪除或限制其使用。
3.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述行為向量是基于所述日志的一組查詢而產(chǎn)生。
4.根據(jù)權(quán)利要求3所述的計(jì)算裝置,其中所述行為向量包含基于針對(duì)特定應(yīng)用程序的所述日志的查詢的結(jié)果的數(shù)值。
5.根據(jù)權(quán)利要求3所述的計(jì)算裝置,其中,所述組查詢包含存在查詢、量查詢、次序查詢或類別查詢中的至少一者。
6.根據(jù)權(quán)利要求5所述的計(jì)算裝置,其中,查詢包含所觀測(cè)到的行為或期望的行為。
7.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述行為分析引擎分析獨(dú)立于裝置的動(dòng)作。
8.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述行為分析引擎分析相依于裝置的動(dòng)作。
9.根據(jù)權(quán)利要求8所述的計(jì)算裝置,其中,相依于裝置的動(dòng)作包含應(yīng)用程序安裝、裝置信息、通信或用戶交互中的至少一者。
10.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述分類器為機(jī)器學(xué)習(xí)分類器。
11.根據(jù)權(quán)利要求1所述的計(jì)算裝置,其中,所述計(jì)算裝置為移動(dòng)裝置。
12.—種用以確定計(jì)算裝置處的應(yīng)用程序是否為惡意軟件的方法,其包括: 記錄所述應(yīng)用程序的行為以產(chǎn)生日志; 分析所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量;以及 將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件。
13.根據(jù)權(quán)利要求12所述的方法,其中,如果所述行為向量經(jīng)分類為惡意軟件,那么將與所述行為向量相關(guān)聯(lián)的所述應(yīng)用程序刪除或限制其使用。
14.根據(jù)權(quán)利要求12所述的方法,其中,基于所述日志的一組查詢而產(chǎn)生所述行為向量。
15.根據(jù)權(quán)利要求14所述的方法,其中所述行為向量包含基于針對(duì)特定應(yīng)用程序的所述日志的查詢的結(jié)果的數(shù)值。
16.根據(jù)權(quán)利要求14所述的方法,其中,所述組查詢包含存在查詢、量查詢、次序查詢或類別查詢中的至少一者。
17.根據(jù)權(quán)利要求16所述的方法,其中,查詢包含所觀測(cè)到的行為或期望的行為。
18.根據(jù)權(quán)利要求12所述的方法,其中,針對(duì)獨(dú)立于裝置的動(dòng)作而分析所述日志。
19.根據(jù)權(quán)利要求12所述的方法,其中,針對(duì)相依于裝置的動(dòng)作而分析所述日志。
20.根據(jù)權(quán)利要求19所述的方法,其中,相依于裝置的動(dòng)作包含應(yīng)用程序安裝、裝置信息、通信或用戶交互中的至少一者。
21.一種在計(jì)算裝置處執(zhí)行的計(jì)算機(jī)程序產(chǎn)品,其包括: 計(jì)算機(jī)可讀媒體,其包括用于進(jìn)行以下操作的代碼: 記錄應(yīng)用程序的行為以產(chǎn)生日志; 分析所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量;以及 將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件。
22.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,其中,如果所述行為向量經(jīng)分類為惡意軟件,那么將與所述行為向量相關(guān)聯(lián)的所述應(yīng)用程序刪除或限制其使用。
23.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于基于所述日志的一組查詢產(chǎn)生所述行為向量的代碼。
24.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)程序產(chǎn)品,其中,所述組查詢包含存在查詢、量查詢、次序查詢或類別查詢中的至少一者。
25.根據(jù)權(quán)利要求24所述的計(jì)算機(jī)程序產(chǎn)品,其中,查詢包含所觀測(cè)到的行為或期望的行為。
26.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于針對(duì)獨(dú)立于裝置的動(dòng)作分析所述日志的代碼。
27.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于針對(duì)相依于裝置的動(dòng)作分析所述日志的代碼。
28.根據(jù)權(quán)利要求27所述的計(jì)算機(jī)程序產(chǎn)品,其中,相依于裝置的動(dòng)作包含應(yīng)用程序安裝、裝置信息、通信或用戶交互中的至少一者。
29.一種計(jì)算裝置,其包括: 用于記錄應(yīng)用程序的行為以產(chǎn)生日志的裝置; 用于分析所述日志以產(chǎn)生特性化所述應(yīng)用程序的所述行為的行為向量的裝置;以及 用于將所述應(yīng)用程序的所述行為向量分類為良性或惡意軟件的裝置。
30.根據(jù)權(quán)利要求29所述的計(jì)算裝置,其中,如果所述行為向量經(jīng)分類為惡意軟件,那么將與所述行為向量相關(guān)聯(lián)的所述應(yīng)用程序刪除或限制其使用。
31.根據(jù)權(quán)利要求29所述的計(jì)算裝置,其中,所述行為向量是基于所述日志的一組查詢而產(chǎn)生。
32.根據(jù)權(quán)利要求31所述的計(jì)算裝置,其中,所述組查詢包含存在查詢、量查詢、次序查詢或類別查詢中的至少一者。
33.根據(jù)權(quán)利要求32所述的計(jì)算裝置,其中,查詢包含所觀測(cè)到的行為或期望的行為。
34.根據(jù)權(quán)利要求29所述的計(jì)算裝置,其中,所述記錄是針對(duì)獨(dú)立于裝置的動(dòng)作而分析。
35.根據(jù)權(quán)利要求29所述的計(jì)算裝置,其中,所述記錄是針對(duì)相依于裝置的動(dòng)作而分析。
36.根據(jù)權(quán)利要求35所述的計(jì)算裝置,其中,相依于裝置的動(dòng)作包含應(yīng)用程序安裝、裝置信息、通信或用戶交互中的至少一者。
37.一種服務(wù)器,其包括: 處理電路,其接收來(lái)自多個(gè)計(jì)算裝置的多個(gè)行為向量集,其中每一行為向量集特性化應(yīng)用程序的行為;以及 行為分析引擎,其基于所述所接收行為向量集將全局分類器更新為良性或惡意軟件。
38.根據(jù)權(quán)利要求37所述的服務(wù)器,其中所述處理電路在與所述所接收行為向量集相同的時(shí)間或在稍后時(shí)間進(jìn)一步接收來(lái)自所述計(jì)算裝置的日志數(shù)據(jù)和其它數(shù)據(jù)。
39.根據(jù)權(quán)利要求37所述的服務(wù)器,其中所述處理電路將更新發(fā)射到所述多個(gè)計(jì)算裝置,且其中所述更新用以更新所述多個(gè)計(jì)算裝置的行為分析引擎。
40.根據(jù)權(quán)利要求37所述的服務(wù)器,其中來(lái)自計(jì)算裝置的行為向量集進(jìn)一步包括關(guān)于已在所述計(jì)算裝置處阻止所述應(yīng)用程序的指示符。
41.根據(jù)權(quán)利要求37所述的服務(wù)器,其中所述處理電路進(jìn)一步將經(jīng)更新的查詢發(fā)射到所述多個(gè)計(jì)算裝置。
42.—種在服務(wù)器處實(shí)施的方法,其包括: 接收來(lái)自多個(gè)計(jì)算裝置的多個(gè)行為向量集,其中每一行為向量集特性化應(yīng)用程序的行為;以及 將來(lái)自所述計(jì)算裝置的應(yīng)用程序的所接收行為向量集分類為良性或惡意軟件。
43.根據(jù)權(quán)利要求42所述的方法,其進(jìn)一步包括在與所述所接收行為向量集相同的時(shí)間或在稍后時(shí)間接收來(lái)自所述計(jì)算裝置的日志數(shù)據(jù)和其它數(shù)據(jù)。
44.根據(jù)權(quán)利要求42所述的方法,其進(jìn)一步包括將更新發(fā)射到所述多個(gè)計(jì)算裝置,其中所述更新用以更新所述多個(gè)計(jì)算裝置的行為分析引擎。
45.根據(jù)權(quán)利要求42所述的方法,其中來(lái)自計(jì)算裝置的行為向量集進(jìn)一步包括關(guān)于已在所述計(jì)算裝置處阻止所述應(yīng)用程序的指示符。
46.根據(jù)權(quán)利要求42所述的方法,其進(jìn)一步包括將經(jīng)更新的查詢發(fā)射到所述多個(gè)計(jì)算>j-U ρ?α裝直。
47.一種在服務(wù)器處執(zhí)行的計(jì)算機(jī)程序產(chǎn)品,其包括: 計(jì)算機(jī)可讀媒體,其包括用于進(jìn)行以下操作的代碼: 接收來(lái)自多個(gè)計(jì)算裝置的多個(gè)行為向量集,其中每一行為向量集特性化應(yīng)用程序的行為;以及 將來(lái)自所述計(jì)算裝置的應(yīng)用程序的所接收行為向量集分類為良性或惡意軟件。
48.根據(jù)權(quán)利要求47所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于在與所述所接收行為向量集相同的時(shí)間或在稍后時(shí)間接收來(lái)自所述計(jì)算裝置的日志數(shù)據(jù)和其它數(shù)據(jù)的代碼。
49.根據(jù)權(quán)利要求47所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于將更新發(fā)射到所述多個(gè)計(jì)算裝置的代碼,其中所述更新用以更新所述多個(gè)計(jì)算裝置的行為分析引擎。
50.根據(jù)權(quán)利要求47所述的計(jì)算機(jī)程序產(chǎn)品,其中來(lái)自計(jì)算裝置的行為向量集進(jìn)一步包括關(guān)于已在所述計(jì)算裝置處阻止所述應(yīng)用程序的指示符。
51.根據(jù)權(quán)利要求47所述的計(jì)算機(jī)程序產(chǎn)品,其進(jìn)一步包括用于將經(jīng)更新的查詢發(fā)射到所述多個(gè)計(jì)算裝置的代碼。
52.—種服務(wù)器,其包括: 用于接收來(lái)自多個(gè)計(jì)算裝置的多個(gè)行為向量集的裝置,其中每一行為向量集特性化應(yīng)用程序的行為;以及 用于將來(lái)自所述計(jì)算裝置的應(yīng)用程序的所接收行為向量集分類為良性或惡意軟件的>j-U ρ?α裝直。
53.根據(jù)權(quán)利要求52所述的服務(wù)器,其進(jìn)一步包括用于在與所述所接收行為向量集相同的時(shí)間或在稍后時(shí)間接收來(lái)自所述計(jì)算裝置的日志數(shù)據(jù)和其它數(shù)據(jù)的裝置。
54.根據(jù)權(quán)利要求52所述的服務(wù)器,其進(jìn)一步包括用于將更新發(fā)射到所述多個(gè)計(jì)算裝置的裝置,其中所述更新用以更新所述多個(gè)計(jì)算裝置的行為分析引擎。
55.根據(jù)權(quán)利要求52所述的服務(wù)器,其中來(lái)自計(jì)算裝置的行為向量集進(jìn)一步包括關(guān)于已在所述計(jì)算裝置處阻止所述應(yīng)用程序的指示符。
56.根據(jù)權(quán)利要求52所述的服務(wù)器,其進(jìn)一步包括用于將經(jīng)更新的查詢發(fā)射到所述多個(gè)計(jì)算裝置的裝置。
【文檔編號(hào)】G06F21/56GK104205111SQ201380015079
【公開日】2014年12月10日 申請(qǐng)日期:2013年3月14日 優(yōu)先權(quán)日:2012年3月19日
【發(fā)明者】肖徐春, 鄧朔, 巴巴克·薩拉馬特, 拉賈什·古普塔 申請(qǐng)人:高通股份有限公司