隨選檢測惡意程序的方法及其電子裝置和使用者界面的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明提供一種檢測惡意程序的方法、電子裝置及使用者界面,特別是涉及一種 可供使用者隨選的檢測惡意程序的方法、電子裝置、及使用者界面。
【背景技術(shù)】
[0002] 隨著電子科技的快速發(fā)展,網(wǎng)絡(luò)儼然成為現(xiàn)今人們生活中不可或缺的一部份。但 是,網(wǎng)絡(luò)也帶來了多種信息安全危害。其中,又以惡意程序攻擊使用者的電子裝置最為嚴(yán) 重。目前主要的惡意程序為間諜軟件、木馬程序以及寄生病毒。而這些惡意程序可以在使 用者毫不知情的情形下安裝于電子裝置中,且惡意程序在執(zhí)行任務(wù)時電子裝置也根本無從 查覺。
[0003] 傳統(tǒng)的防毒系統(tǒng)是由已知的惡意程序中取出對應(yīng)的病毒碼,并存于其數(shù)據(jù)庫中。 當(dāng)防毒系統(tǒng)接收到一應(yīng)用程序時,防毒系統(tǒng)將檢測應(yīng)用程序是否有已知的病毒碼。而防毒 系統(tǒng)亦將在檢測到已知的病毒碼后隔離惡意程序或者刪除惡意程序。然而,惡意程序往往 以極快的速度演變成變種的惡意程序或產(chǎn)生新的惡意程序,使得傳統(tǒng)的防毒系統(tǒng)沒有能力 檢測到變種的惡意程序或新的惡意程序。
[0004] 因此,當(dāng)上述變種或新的惡意程序出現(xiàn)時,在傳統(tǒng)的防毒系統(tǒng)取得上述變種或新 的惡意程序的病毒碼之前,上述變種或新的惡意程序?qū)蛻舳说碾娮友b置。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實施例提供一種隨選檢測惡意程序的方法,上述隨選檢測惡意程序的方法 為用來評估應(yīng)用程序是否具有安全性弱點或惡意行為。隨選檢測惡意程序的方法的步驟 如下:接收應(yīng)用程序;反譯應(yīng)用程序,以產(chǎn)生與應(yīng)用程序的原始碼相關(guān)的編譯碼;根據(jù)編譯 碼及一關(guān)聯(lián)分析建立多個編譯路徑,其中多個編譯路徑分別對應(yīng)到應(yīng)用程序的多個指令路 徑;預(yù)測每一編譯路徑具有安全性弱點或惡意行為的風(fēng)險程度及風(fēng)險檢測時間,并據(jù)此將 多個編譯路徑分類為多個風(fēng)險測試項目;接收測試命令,以選擇至少一風(fēng)險測試項目及可 檢測時間;根據(jù)風(fēng)險測試項目及可檢測時間的選擇,選取對應(yīng)的多個編譯路徑,以執(zhí)行多個 編譯路徑對應(yīng)到的多個指令路徑,并據(jù)此產(chǎn)生應(yīng)用程序是否具有安全性弱點或惡意行為的 測試結(jié)果。
[0006] 本發(fā)明實施例提供一種隨選檢測惡意程序的電子裝置,上述隨選檢測惡意程序的 電子裝置用來評估應(yīng)用程序是否具有安全性弱點或惡意行為。隨選檢測惡意程序的電子裝 置包含顯示單元、儲存單元、及運算處理單元。顯示單元用以顯示一檢測界面。儲存單元用 以儲存應(yīng)用程序。運算處理單元則用以執(zhí)行下列的步驟。通過操控檢測界面接收應(yīng)用程序。 反譯應(yīng)用程序,以產(chǎn)生與應(yīng)用程序的原始碼相關(guān)的編譯碼。根據(jù)編譯碼及一關(guān)聯(lián)分析建立 多個編譯路徑,其中多個編譯路徑分別對應(yīng)到應(yīng)用程序的多個指令路徑。預(yù)測每一編譯路 徑具有安全性弱點或惡意行為的風(fēng)險程度及風(fēng)險檢測時間,并據(jù)此將多個編譯路徑分類為 多個風(fēng)險測試項目。通過操控檢測界面接收一測試命令,以選擇至少一風(fēng)險測試項目及可 檢測時間。根據(jù)風(fēng)險測試項目及可檢測時間的選擇,選取對應(yīng)的多個編譯路徑,以執(zhí)行多個 編譯路徑對應(yīng)到的多個指令路徑,并據(jù)此產(chǎn)生應(yīng)用程序是否具有安全性弱點或惡意行為的 測試結(jié)果。
[0007] 本發(fā)明實施例提供一種位于電子裝置上的使用者界面。電子裝置具有顯示使用者 界面的觸控顯示單元、儲存單元、及運算處理單元,該運算處理單元用以執(zhí)行儲存于存儲器 中的欲檢測的應(yīng)用程序,以評估應(yīng)用程序是否具有安全性弱點或惡意行為。使用者界面包 含一檢測界面。檢測界面顯示多個待測程序,以提供使用者選擇欲檢測的應(yīng)用程序。當(dāng)使 用者選擇欲檢測的應(yīng)用程序,檢測界面顯示應(yīng)用程序?qū)?yīng)的風(fēng)險測試項目及可檢測時間, 以提供使用者選擇評估應(yīng)用程序是否具有安全性弱點或惡意行為的風(fēng)險測試項目及可檢 測時間。當(dāng)使用者選擇應(yīng)用程序的風(fēng)險測試項目及可檢測時間后,檢測界面顯示應(yīng)用程序 是否具有安全性弱點或惡意行為的測試結(jié)果。
[0008] 此外,本發(fā)明實施例還提供一種電腦可讀取記錄媒體記錄一組電腦可執(zhí)行程序, 當(dāng)電腦可讀取記錄媒體被處理器讀取時,處理器可執(zhí)行上述隨選檢測惡意程序的方法中的 步驟。
[0009] 綜合以上所述,本發(fā)明實施例所提供的隨選檢測惡意程序的方法、電子裝置、及使 用者界面為根據(jù)應(yīng)用程序所執(zhí)行的指令路徑具有安全性弱點或惡意行為的風(fēng)險程度,來評 估應(yīng)用程序是否具有安全性弱點或惡意行為。據(jù)此,本發(fā)明實施例所提供的方法、電子裝 置、及使用者界面不需根據(jù)惡意程序的病毒碼來評估應(yīng)用程序是否具有安全性弱點或惡意 行為。故在取得變種或新的惡意程序的病毒碼的前,本發(fā)明實施例所提供的方法、電子裝 置、及使用者界面仍然可以判斷出接收到的應(yīng)用程序具有安全性弱點或惡意行為的風(fēng)險程 度。
[0010] 為使能更進(jìn)一步了解本發(fā)明的特征及技術(shù)內(nèi)容,請參閱以下有關(guān)本發(fā)明的詳細(xì)說 明與附圖,但是此等說明與所附圖式僅是用來說明本發(fā)明,而非對本發(fā)明的權(quán)利要求范圍 作任何的限制。
【附圖說明】
[0011] 圖1是本發(fā)明一實施例的隨選檢測惡意程序的電子裝置的示意圖。
[0012] 圖2是本發(fā)明一實施例的隨選檢測惡意程序的方法的流程圖。
[0013] 圖3是本發(fā)明另一實施例的隨選檢測惡意程序的方法的流程圖。
[0014] 圖4是本發(fā)明另一實施例的編譯路徑的意圖。
[0015] 圖5A~5C是本發(fā)明另一實施例的檢測界面通過使用者的操作而產(chǎn)生評估應(yīng)用程 序是否具有安全性弱點或惡意行為的測試結(jié)果的示意圖。
[0016] 【符號說明】
[0017] 100:電子裝置
[0018] 110:顯示單元
[0019] 120:運算處理單元
[0020] 130 :儲存單元
[0021] 160 :檢測界面
[0022] 165:圖塊
[0023] 170:圖塊
[0024] 175:圖塊
[0025]APP:應(yīng)用程序
[0026]S210、S220、S230、S240、S250、S260:步驟
[0027]S310、S320、S330、S340、S350、S360 :步驟
[0028]PATH1、PATH2、PATH3、PATH4、PATH5、PATH6 :編譯路徑
【具體實施方式】
[0029] 本發(fā)明實施例所提供的隨選檢測惡意程序的方法、電子裝置、及使用者界面為先 行預(yù)測接收到的應(yīng)用程序具有安全性弱點或惡意行為的風(fēng)險程度及風(fēng)險檢測時間,接著再 通過一使用者的選擇以檢測應(yīng)用程序,以評估所選擇的應(yīng)用程序是否具有安全性弱點或惡 意行為并據(jù)此產(chǎn)生對應(yīng)的測試報告。因此,本發(fā)明實施例所提供的方法、電子裝置、及使用 者界面不需要根據(jù)惡意程序的病毒碼來評估應(yīng)用程序是否具有安全性弱點或惡意行為。相 較于已知的防毒系統(tǒng),本發(fā)明實施例所提供的方法、電子裝置、及使用者界面在取得變種或 新的惡意程序的病毒碼的前,仍然可以判斷出接收到的應(yīng)用程序具有安全性弱點或惡意行 為的風(fēng)險程度。以下將進(jìn)一步介紹本發(fā)明的實施例所提供的隨選檢測惡意程序的方法、電 子裝置、及使用者界面。
[0030] 首先,請參考圖1,圖1是本發(fā)明一實施例的隨選檢測惡意程序的電子裝置的示意 圖。如圖1所示,隨選檢測惡意程序的電子裝置100是用來評估電子裝置100所接收到的 應(yīng)用程序APP是否具有安全性弱點或惡意行為,以避免電子裝置100內(nèi)的重要數(shù)據(jù)遭惡意 程序破壞或竊取。在本實施例中,電子裝置100可為智能型手機、桌上型電腦、筆記本電腦、 或是其他可接收及執(zhí)行應(yīng)用程序APP的電子裝置。
[0031] 電子裝置100包含顯示單元110、運算處理單元120、及儲存單元130。顯示單元 110用來顯示一檢測界面(如圖5A所示的檢測界面160),以進(jìn)一步提供使用者操控檢測界 面。顯示單元110可為具有觸控輸入功能或不具有觸控輸入功能的液晶屏幕,本發(fā)明并不 對此作限制。
[0032] 儲存單元130用來儲存欲檢測的應(yīng)用程序APP。也即當(dāng)電子裝置100接收到欲檢 測的應(yīng)用程序APP(如使用者通過檢測界面選擇欲檢測的所述應(yīng)用程序)后,電子裝置100 遂將此應(yīng)用程序APP儲存到儲存單元130。而有關(guān)電子裝置100儲存應(yīng)用程序APP至儲存 單元130的方式為已知的儲存方式,所屬技術(shù)領(lǐng)域的普通技術(shù)人員應(yīng)知電子裝置100儲存 應(yīng)用程序APP至儲存單元130的方式,故在此不再贅述。在本實施例中,儲存單元130可為 快閃存儲器芯片、只讀存儲器芯片或隨機存取存儲器芯片等揮發(fā)性或非揮發(fā)性存儲芯片, 且儲存單元130優(yōu)選為非揮發(fā)性存儲芯片。
[0033] 運算處理單元120為電子裝置100的主要運算中心,用以執(zhí)行各項分析、運算及 控制。在本實施例中,運算處理單元120可為中央處理器、微控制器或嵌入式控制器等處理 芯片。運算處理單元120電連接顯示單元110及儲存單元130并執(zhí)行下列步驟,以評估儲 存在儲存單元130的應(yīng)用程序APP是否具有安全性弱點或惡意行為。
[0034] 請同時參考圖2,首先,運算處理單元120接收儲存在儲存單元130的應(yīng)用程序 APP(步驟S210)。接下來,運算處理單元120將反譯應(yīng)用程序APP,以產(chǎn)生與應(yīng)用程序APP 的原始碼相關(guān)的編譯碼。在本實施例中,編譯碼為位元組碼(byte-code)、smali碼