[發明專利]一種應用程序防重打包方法和系統有效
| 申請號: | 201711328188.2 | 申請日: | 2017-12-13 |
| 公開(公告)號: | CN108121899B | 公開(公告)日: | 2021-07-30 |
| 發明(設計)人: | 張穎君 | 申請(專利權)人: | 中國科學院軟件研究所 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14;G06F8/70 |
| 代理公司: | 北京君尚知識產權代理有限公司 11200 | 代理人: | 邱曉鋒 |
| 地址: | 100190 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 應用程序 打包 方法 系統 | ||
本發明涉及一種應用程序防重打包方法和系統。該方法首先構造能夠識別重打包程序并觸發異常的防御代碼;然后將防御代碼植入應用程序中,以防御通過重打包進行的攻擊。防御代碼由兩部分組成,包括識別出重打包程序以及異常觸發機制。在實際的防御代碼植入過程中,主要通過在多處隨機放置,并且進行混淆,增加被攻擊者逆向跟蹤的難度,實現對安卓應用程序的保護。本發明能夠有效的防止攻擊者對安卓應用程序以及其它操作系統的應用程序的重打包攻擊。
技術領域
本發明涉及應用程序保護技術,尤其涉及一種應用程序防重打包方法和系統,適用于安卓系統以及其它操作系統的應用程序。
技術背景
應用程序重打包主要是指通過非法對應用程序中植入惡意代碼、廣告信息、惡意鏈接等操作,并重新發布新的程序以非法獲取利益的技術。這種重打包技術目前使用非常廣泛,尤其隨著手機應用的普及,重打包技術發展更為迅猛。
當前,手機應用十分廣泛,用戶通過在手機上安裝各種應用軟件進行交流、娛樂、支付等,極大方便了用戶的生活。目前,安卓手機占到了86.4%,截至2017年,安卓應用程序已經下載高達250億次。安卓應用軟件安裝到手機是一個APK文件,APK文件通過反編譯,根據用戶需求進行更改后,再重新打包回去,進行簽名重新發布。據報道,86%的惡意軟件是通過在正常應用軟件進行重打包實現的。安卓軟件重打包后,一方面損害了原版作者的權益,另一方面可能給用戶的信息和隱私帶來很大的威脅。
目前,對上述問題的研究主要針對重打包的檢測進行,例如通過基于哈希、基于程序依賴圖、基于字符串、基于質心等方法對重打包進行檢測。但是,對防重打包的檢測與阻斷機制仍較缺乏,主要通過加殼或混淆的方法增加逆向攻擊的難度。
發明內容
本發明旨在通過設計一種應用程序防重打包方法和系統,有效實現對軟件合法性的保護。該方案適用于安卓系統的應用程序,也可以擴展至其它操作系統上的應用程序。
本發明主要是在應用軟件中嵌入防御代碼,增加重打包的代價,起到防御重打包的作用。有針對性的進行軟件重打包防御,需要在其代碼中嵌入“防御代碼”,且這部分代碼不能影響原有軟件的正常使用;同時,需要增加攻擊者重打包過程中的代價,最終起到防御重打包的作用。
考慮到“防御代碼”嵌入原有程序,若僅有一份這樣的防御代碼可能會被攻擊者識別,從而被攻擊者移除。因此本發明優選使用多份“防御代碼”,由于每一份防御代碼均可進行防御,最終增加攻擊者的成本。具體包括:防御代碼的構成和防御代碼的植入兩部分。防御代碼的構成包括重打包程序識別模塊和重打包程序異常觸發模塊兩部分。防御代碼植入優選采用多份的植入,并且增加攻擊者識別的難度。
本發明采用的技術方案如下:
一種應用程序防重打包方法,包括以下步驟:
1)構造能夠識別重打包程序并觸發異常的防御代碼;
2)將防御代碼植入應用程序中,以防御通過重打包進行的攻擊。
進一步地,所述防御代碼不能影響原有應用程序的正常使用,并增加攻擊者重打包的難度。
進一步地,所述防御代碼通過計算原始程序的散列值,并與實際動態運行過程中的散列值比較,來識別出重打包程序;如果散列值不匹配則觸發異常,使應用程序無法正常使用。
進一步地,使用MD5對應用程序中所有代碼、資源文件以及其他文件進行計算,得到所述散列值。
進一步地,所述防御代碼觸發的異常盡量遠離所述防御代碼本身的位置,以避免被攻擊者反調試并跟蹤。
進一步地,所述觸發異常是修改原應用程序的部分數據,增加一個隨機值,使其不能完成原有功能,從而產生異常。
進一步地,在應用程序中植入多份防御代碼,以增加被攻擊者逆向跟蹤的難度,實現對應用程序的保護。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院軟件研究所,未經中國科學院軟件研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711328188.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種程序保護方法和裝置
- 下一篇:一種可控制的生物信息識別系統





