APK加固原理是什么?如何進行android apk加固?
APK加固是對APK代碼邏輯的一種保護,原理是將APK文件進行某種形式的轉換,包括不限于隱藏、混淆、加等操作,進一步保護軟件的利益不受損壞。
常見APK應用加固主要有DEX文件、SDK文件、SO文件加固這三類。DEX加固技術包括混淆代碼、整體DEX加固、拆分DEX加固、虛擬機加固、Java2C加固,當前性能最強的加固方案是Java2c,將java指令轉成c/c++指令,并做虛假控制流、字符串加密等處理,逆向難度最高。SO庫文件一般存放著核心算法、重要協議等重要信息。SO加固大概可以分為有源保護和無源保護,有源保護分為自解密、混淆、源碼VMP等,無源保護分為加殼、VMP保護。
APK加固后,可以降低被逆向破解風險,目前有些云安全平臺提供系統的APP加固服務,如網易易盾、360加固、阿里云等,想要系統提升APK安全等級可以了解下。
apk加固?apk需要進行加固,防二次打包、破解,哪個公司apk加固比較靠譜的?麻煩各位給推薦下!
apk加固一般要達到以下效果:
1、防逆向:通過DEX 文件加殼以及DEX 虛擬化等技術,防止代碼被反編譯和逆向分析。
2、防篡改:通過校驗 APK 開發者簽名,防止被二次打包,植入廣告或惡意代碼。
3、防調試:防止應用被 IDA、JEB 等工具調試,動態分析代碼邏輯。
VirboxProtector安卓加固的核心技術有:
DEX 虛擬機保護:對 DEX 中的 dalvik 字節碼進行虛擬化,轉換為自定義的虛擬機指令,最后由 native 層虛擬機解釋執行,防止逆向分析。
DEX 文件加密隱藏:對 DEX 文件加殼保護,防止代碼被竊取和反編譯。
SO 區段壓縮加密:對 SO 庫中的代碼段和數據段壓縮并加密,防止被 IDA 等工具反編譯。
單步斷點檢測:在混淆的指令中插入軟斷點檢測暗樁,防止native層run trace和單步調試。
防動態調試:防止應用被 IDA、JEB 等工具調試,動態分析代碼邏輯。
開發者簽名校驗:對 APK 中的開發者簽名做啟動時校驗,防止被第三方逆向和二次打包。
SO 內存完整性校驗:在 SO 庫加載時校驗內存完整性,防止第三方對 SO 庫打補丁。
SO 代碼混淆:對 SO 庫中指定的函數混淆,通過指令切片、控制流扁平化、立即加密等技術手段,將 native 指令轉換為難以理解的復雜指令,無法被 IDA 反編譯,并且無法被還原。
SO 代碼虛擬化:對 SO 庫中指定的函數虛擬化,可以將 x86、x64、arm32、arm64 架構的機器指令轉換為隨機自定義的虛擬機指令,安全強度極高,可通過工具自定義配置,調整性能與安全性。
安卓apk應用如何進行安全加固
1、首先登陸騰訊云,選擇“云產品”------“應用加固”,在彈出的頁面中選擇“立即使用”;
2.使用app加固對安卓軟件進行加固,可以保護我們的隱私,而且騰訊云的應用加固使用也非常的簡單,能夠有效的對存儲數據進行加密保護;擁有防調試、惡意代碼植入保護;反編譯和環境監測保護等功能。
3.準備好app應用后,選擇“申請加固”,在彈出的窗口中上傳自己需要加固的apk應用程序,這里注意下:apk應用程序必須小于100M;
4.待上傳解析完畢后,就可以進行加固了,這里我們選擇默認即可,也可以根據自己的需求自定義:
目前支持以下三種格式:
1.method com.test.ClassName *
表示需要加固com.test.ClassName類下的所有方法
2.method * onCreate
表示需要加固所有類的onCreate方法
3.method com.test.ClassName onCreate
表示需要加固com.test.ClassName類下的onCreate方法
5.稍等片刻后,就會加固成功,然后下載加固后的app應用,重新簽名后就可以發行使用了,非常的簡單。
類似的應用加固平臺還有很多,比如娜迦,愛加密等等,都能有效的保護app應用,防止一些惡意代碼的寫入和逆向破解。
360加固保加固apk并自動簽名
原文地址: http://www.xdowns.com/article/170/Article_5940.html
(2)彈出提醒框,選擇“取消”,即可開始加固(下圖)。
(3)加固的應用顯示在任務欄,狀態欄實時顯示加固過程中的具體狀態。
(4)加固完成后彈出提醒框。點擊“確定”打開APK輸出路徑(見下圖)。
也可在列表里選中任務,右擊鼠標選擇“打開輸出文件所在路徑”。系統將自動打開APK輸出路徑。
(2)勾選“啟動自動簽名”,點擊“瀏覽”按鈕,選擇Keystore文件(密鑰倉庫),輸入Keystore密碼,密碼正確后會顯示別名,然后輸入正確的別名密碼,點擊“添加”,然后單擊“確認”或關閉按鈕即可。如下圖:
(2)勾選“啟動多渠道打包”選項。
(3)根據需要的渠道包,填寫相關的配置信息,單擊“添加”按鈕。
4)表頭處藍色開關按鈕為“全選”按鈕,可對添加的渠道一次性進行開關操作。
5)“導入”按鈕支持導入保存渠道信息的TXT文檔?!敖y計平臺”、“渠道名稱”、“渠道編號”信息用空格隔開,具體形式見下圖。
360加固保,梆梆加殼(apk)
1.加固需要重新簽名:
簽名文件在 android/app/my-relea-key.keystore
簽名密碼在:gradle.properties 的MYAPP_RELEASE_STORE_PASSWORD 867789
2.加固平臺: 賬號:18069788087
360 加固保:jiagu.360.cn
https://jiagu.360.cn/#/global/download
安裝包:206 D/soft
3.加固平臺:梆梆安全
導出-導出簽名apk
梆梆安全加固的app安裝后打開部分手機會閃退
安卓Apk加固、重簽名
應用寶在線加固: https://console.cloud.tencent.com/ms/reinforce/introduce
加固完成后,需要對加固后的包進行重新簽名(騰訊云應用安全在線加固的時候會將您的簽名信息刪除后再加固,所以加固后的安裝包是沒有簽名信息的,需要您對加固包重新簽名)
使用樂固進行重簽名:
至此,完成。