[發明專利]一種移動客戶端的應用程序分析方法及分析系統在審
| 申請號: | 201611050413.6 | 申請日: | 2016-11-24 |
| 公開(公告)號: | CN106778264A | 公開(公告)日: | 2017-05-31 |
| 發明(設計)人: | 顏華甲;秦偉杰 | 申請(專利權)人: | 北京金山安全管理系統技術有限公司 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56 |
| 代理公司: | 北京康盛知識產權代理有限公司11331 | 代理人: | 張宇峰 |
| 地址: | 100041 北京市石景山*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 移動 客戶端 應用程序 分析 方法 系統 | ||
技術領域
本發明涉及應用程序安全技術領域,特別是涉及一種移動客戶端的應用程序分析方法及分析系統。
背景技術
目前,智能手機、平板電腦等移動終端都具備視頻觀看、語音通話、搜索等多種多樣的功能,而這些功能的實現則主要依賴于在移動終端上所安裝的應用程序;在當前的手機操作平臺中,往往會出現惡意代碼樣本數量頻發的問題,常規的使用人工逆向分析來判斷樣本是否存在威脅的方法已經不能勝任數量龐大的應用程序樣本群。針對數量龐大、特征繁多的樣本群,樣本分析工程師缺少一種高效的輔助分析手段,以盡可能全面地觸發且監控樣本潛在的行為,并了解自身安裝的應用是否存在不安全行為。
發明內容
本發明所要解決的技術問題是:提供一種移動客戶端的應用程序分析方法及分析系統,以在不影響程序分析準確性的情況下,提高應用程序分析的效率。
本發明解決上述技術問題所采用的技術方案是:
本發明提供了一種移動客戶端的應用程序分析方法,包括:選定運行應用程序所調用的操作系統中的關鍵API;獲取移動客戶端的操作系統的源碼,對關鍵API進行插樁;在操作系統中運行應用程序,記錄應用程序的程序行為;根據程序行為,生成分析結果。
進一步的,選定運行應用程序所調用的操作系統中的關鍵API的過程包括:確定應用程序在操作系統中所要實現的程序功能;獲取實現程序功能所要調用的所有API函數,建立API函數的調用順序;根據調用順序,選定關鍵API。
進一步的,根據調用順序,選定關鍵API的過程包括:根據調用順序,確定所有API函數的調用層級以及每一調用層級中的API函數的數量;將每一調用層級中,與前一調用層級中的至少兩個API函數相關聯的API函數,作為關鍵API。
進一步的,根據調用順序,選定關鍵API的過程包括:根據調用順序,確定操作系統中的framework層的所有API的調用層級;以調用層級的最下級的API函數作為關鍵API。
進一步的,獲取移動客戶端的操作系統的源碼,對關鍵API進行插樁的過程包括:在關鍵API的入口處或返回處增加打印log的代碼,用于執行應用程序時輸出log信息;其中,log信息至少包括:log標識、關鍵API的名稱或標識、進程ID、關鍵API的傳入參數和返回參數。
進一步的,獲取移動客戶端的操作系統的源碼,對關鍵API進行插樁的過程還包括:重新編譯源碼,得到操作系統的鏡像。
進一步的,在操作系統中運行應用程序,記錄應用程序的程序行為的過程包括:在模擬器中運行操作系統,在操作系統中安裝應用程序;利用代碼調度調試工具控制應用程序執行其程序功能;記錄執行程序功能的過程中所輸出的log信息,并獲取應用程序的程序包名。
進一步的,根據程序行為,生成分析結果的過程包括:篩選輸出的所有log信息,確定對應關鍵API的log信息;根據關鍵API的log信息,按照預設規則匹配關鍵威脅特征,生成匹配結果報告。
進一步的,篩選輸出的所有log信息,確定對應關鍵API的log信息的過程包括:查找所有log信息的log標識,篩選具有log標識的log信息;獲取所有log信息的進程ID,通過查找進程ID與對應程序包名進行過濾,確定對應關鍵API的log信息。
本發明還提供了一種應用程序分析系統,包括:選定單元,用于選定運行應用程序所調用的操作系統中的關鍵API;插樁單元,用于獲取移動客戶端的操作系統的源碼,對關鍵API進行插樁;記錄單元,用于在操作系統中運行應用程序,記錄應用程序的程序行為;分析單元,用于根據程序行為,生成分析結果。
進一步的,選定單元還用于:確定應用程序在操作系統中所要實現的程序功能;獲取實現程序功能所要調用的所有API函數,建立API函數的調用順序;根據調用順序,選定關鍵API。
進一步的,選定單元還用于:根據調用順序,確定所有API函數的調用層級以及每一調用層級中的API函數的數量;將每一調用層級中,與前一調用層級中的至少兩個API函數相關聯的API函數,作為關鍵API。
進一步的,選定單元還用于:根據調用順序,確定操作系統中的framework層的所有API的調用層級;以調用層級的最下級的API函數作為關鍵API。
進一步的,插樁單元還用于:在關鍵API的入口處或返回處增加打印log的代碼,用于執行應用程序時輸出log信息;其中,log信息至少包括:log標識、關鍵API的名稱或標識、進程ID、關鍵API的傳入參數和返回參數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京金山安全管理系統技術有限公司,未經北京金山安全管理系統技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611050413.6/2.html,轉載請聲明來源鉆瓜專利網。





