溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

APP加固反編譯技術(shù)對比

發(fā)布時間:2020-05-26 10:18:13 來源:網(wǎng)絡(luò) 閱讀:1048 作者:許曉萱 欄目:安全技術(shù)

代次第一代第二代第三代第四代第五代
技術(shù)路線dex透明加解密技術(shù)函數(shù)級代理技術(shù)so文件加殼技術(shù)代碼混淆和虛擬化技術(shù)安全容器技術(shù)
設(shè)計思路對每個或每組可執(zhí)行文件加殼加密,增加復(fù)雜度,讓破解者因為復(fù)雜無法破解,知難而退。不讓破解者拿到可執(zhí)行文件及關(guān)鍵數(shù)據(jù)
技術(shù)原理核心思想是把需要保護的dex文件加密后打包到APK中, 在需要使用時先解密dex再加載到內(nèi)存, 然后刪除解密后的明文文件, 或者直接在內(nèi)存中動態(tài)解密, 不釋放到文件系統(tǒng)。針對第一代技術(shù)可以被dump內(nèi)存的問題進行的改進, 原理是在內(nèi)存中只加載一個函數(shù)代理模塊, 當(dāng)APP需要使用某些功能時由該代理模塊去尋找真正實現(xiàn)功能的函數(shù), 找到后調(diào)用該函數(shù)并且把執(zhí)行結(jié)果返回給APP, 函數(shù)代理模塊相對于一個中間人的角色。由于java層的保護始終受到j(luò)ava虛擬機的限制, 無法防止自定義java虛擬機的***, 所以第三代技術(shù)將保護移動到了更底層的so文件上, 通過將核心代碼封裝到so文件中, 同時對so文件加殼保護, 并且吸取了第一代和第二代技術(shù)的優(yōu)點, 對so文件進行加密和防內(nèi)存dump處理。第四代技術(shù)將保護主體移動到粒度更細(xì)的函數(shù)層, 通過自定義編譯器在編譯時對代碼進行混淆和虛擬化保護, 隱藏真實的業(yè)務(wù)邏輯, 增加了逆向分析的難度。第五代加固技術(shù)的核心理念是讓***無法拿到實體文件,無法在系統(tǒng)中運行任何反編譯工具,自然也就無法破解,從根本上解決APP被破解的問題; 其實現(xiàn)原理是使用加密容器技術(shù),構(gòu)建一個與操作系統(tǒng)緊密耦合的容器,? 讓APP運行在容器中,容器對外物理隔離,容器內(nèi)白名單運行APP,外界無法直接訪問容器中的APP和so以及配置等文件。?
缺點直接對dex文件進行加解密, 邏輯簡單直接, 容易實現(xiàn)。解決了內(nèi)存被dump的問題。將核心代碼從java層移動到了so層, 提高了破解的難度。可以針對單個函數(shù)進行保護, 配置更靈活。APP文件始終在加密容器中, ***無法拿到so文件, 自然無法破解, 并且同時兼容前四代技術(shù), 可以配合使用。
缺點由于dex文件最終需要被解密后加載到內(nèi)存中, 所以可以通過dump內(nèi)存獲取明文數(shù)據(jù)。技術(shù)實現(xiàn)復(fù)雜, 兼容性差。 由于該技術(shù)仍然使用了java虛擬機執(zhí)行所有函數(shù), ***者可以通過修改java虛擬機記錄代理模塊找到的所有真實函數(shù), 從而獲取明文代碼。隨著脫殼技術(shù)的發(fā)展, 和自動化脫殼技術(shù)的出現(xiàn), 這種防護措施的效果也越來越差。由于代碼混混淆和虛擬化保護增加了額外的業(yè)務(wù)邏輯, 導(dǎo)致APP性能下降和體積增大; 并且該技術(shù)不能防止程序關(guān)鍵校驗邏輯被爆破。需要在操作系統(tǒng)中安裝容器運行環(huán)境, 需要操作系統(tǒng)控制權(quán),必須出廠前部署、或己方技術(shù)人員安裝部署。
加固的層次java層java層so層java層/so層so層
加固介入的時間點開發(fā)過程中/開發(fā)完成后開發(fā)過程中開發(fā)過程中/開發(fā)完成后開發(fā)過程中開發(fā)完成后
是否改變IDE環(huán)境不改變不改變不改變需改變IDE環(huán)境, 使用第三方的編譯器編譯代碼不改變
是否影響調(diào)試影響影響影響影響不影響
***是否可以接觸到文件實體由于所有文件都在容器中, ***無法拿到文件
是否需要安裝OS中間件不需要不需要不需要不需要需要安裝OS中間件來運行容器
適用場景適合獨立APP發(fā)布時增加安全,無需操作系統(tǒng)及設(shè)備絕對控制權(quán)的場景。如手機的應(yīng)用、游戲、或其他單個安裝的軟件。適合擁有操作系統(tǒng)絕對控制權(quán)的場景,或者其他場景比較固定的場景。
安卓應(yīng)用反編譯適合適合適合適合不適合
java/C#應(yīng)用反編譯適合適合適合適合適合、把java應(yīng)用發(fā)布在容器內(nèi)
python代碼加密不適合不適合不適合不適合適合、把python文件發(fā)布在容器內(nèi)
單個EXE/DLL加殼加密適合適合適合適合適合、把exe文件發(fā)布在容器內(nèi)
整機保護不適合不適合不適合不適合適合
主要廠家已淘汰已淘汰愛加密,幾維、360加固寶、頂象、娜迦愛加密,幾維、360加固寶、頂象、娜迦深信達(dá)CBS





向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI