android 一代殼的脫取方式及原理分析

2021-10-25 13:51:28 字數 693 閱讀 7651

1代殼dex檔案載入時落地

2代殼dex檔案載入時不落地

解決方式,記憶體dump即可

葫蘆娃的dexdump

yang大佬的dump_dex

1.找到記憶體裡有 「64 65 78 0a 30 ?? ?? 00"的檔案

2.迴圈遍歷,再驗證這個dex是不是我們的dex檔案

3.驗證的過程有

1.dex檔案頭大小 >= 60;一般來說是70

2.讀取前4個位元組是否是"dex\n」

3.0x20 位置的資料是檔案的大小,再對此時我們使用的檔案的大小作比對

4.驗證map_offet的大小和此時我們使用的檔案的大小作比對

5.stringd_ids的偏移位置是不是112

4.使用map去獲取dex的大小,因為map是位於dex檔案末尾

先取到map的offset,根據offset+大小,獲取到map結尾的位置,再減去起始位置,即可得到dex的大小

參考文章

參考原始碼

1.先拿到libart,因為需要根據libart拿到_zn3art11classlinker11defineclassepns_6threadepkcmns_6handleins_6mirror11classloadereeerkns_7dexfileerkns9_8classdefe

2.拿到位址開始dumpdex

脫一些簡單的壓縮殼

脫一些簡單的壓縮殼.首先看看乙個殼的基本流程 1 儲存入口引數,一般都有這一步了 2 獲取外殼所需的位址,比如loadlibrary,getprocaddress 3 解密源程式的各個區塊 4 iat的初始化,這個所有的殼都必須做的事情,這一步也是鬥爭最激烈的戰場 5 重定位的處理,exe加密就沒有...

SCA,實現新一代的SOA

從beaworld 2006大會上,我更多地了解了sca這個概念。sca service component architecture 是一種規範,它的核心概念是服務及其相關實現。我們不必再考慮使用何種語言或者何種技術,我們只需要將注意力集中在業務邏輯的編寫上。我們不必再為不同的部署描述符或者部署檔...

新一代的專業測試人員

新一代的專業測試人員 測試人員不再被看做搞怪的人 monkey tester 或者是令人掃興的人 party pooper 而是在產品環境中應用程式可成功交付的干係人。21世紀的組織需要在交付週期的早期引入測試以提供快速的反饋,構建安全而完整的自動化測試以滿足應用程式快速變更的需求,並較早讓使用者參...