簡體   English   中英

如何檢查Dalvik Cache是​​否被修改

[英]How to check if the Dalvik Cache was modified

所以有一些工具可以修補App的Dalvik緩存來刪除復制保護 - 實際上有一種方法可以檢查dalvik緩存嗎?

它只是復制的DEX文件,如果是,它是否仍然具有相同的校驗和? 並且非root應用程序是否可以獲得校驗和?

dalvik緩存中的文件不是原始的dex文件 - 它們是odex(優化的dex)文件。 安裝應用程序時,將解壓縮其dex文件,然后dalvik在其上運行優化傳遞並將結果存儲在dalvik緩存中。

dalvik緩存目錄上的目錄權限阻止非系統應用程序列出目錄內容,但是設置了執行權限並且odex文件本身是全局可讀的,因此應用程序可以在知道其文件名時訪問它們。

但是,檢查odex文件的完整性將很困難,因為它們在每個設備上可能都不同。 所以你將無法進行簡單的校驗和檢查。

我想你必須對dex文件結構進行深入比較,並將它們與原始dex文件進行比較。 如果你想確定,首先需要對odex文件進行去索引,然后將結果與原始dex文件進行比較。

我認為您可以調用dexopt進程(直接在設備中)並將新生成的dex與dalvik緩存中的dex進行比較,當然如果您的緩存dex被修改,則更改可以禁用檢查本身。 幸運補丁的作者建議從資產中加載外部代碼然后執行到位,但這並不容易且100%有效

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM