BlackDex是一個(gè)運(yùn)行在Android手機(jī)上的脫殼工具,支持5.0~12,無需依賴任何環(huán)境任何手機(jī)都可以使用,包括模擬器。只需幾秒,即可對已安裝包括未安裝的APK進(jìn)行脫殼。
項(xiàng)目聲明
本項(xiàng)目并不針對任何加固,在遇到檢測環(huán)境等均不處理,僅供安全領(lǐng)域分析用途。項(xiàng)目免費(fèi)開源僅供學(xué)習(xí)用途、請勿用于非法用途。否則后果自負(fù)!
脫殼說明
本項(xiàng)目針對一(落地加載)、二(內(nèi)存加載)、三(指令抽取)代殼,擺脫對以往脫殼環(huán)境的困擾,幾乎支持5.0以上的任何系統(tǒng)。并且擁有 快速、方便、成功率高 的優(yōu)點(diǎn)。一般只需要幾秒鐘即可完成對已安裝包括未安裝應(yīng)用脫殼。未安裝應(yīng)用脫殼時(shí)間主要花費(fèi)在復(fù)制文件IO消耗上,由應(yīng)用大小決定速度。已安裝應(yīng)用一般在數(shù)秒內(nèi)即可完成脫殼。
脫殼文件說明
hook_xxxx.dex hook系統(tǒng)api脫殼的dex,深度脫殼不修復(fù)
cookie_xxxx.dex 利用dexFile cookie脫殼的dex,深度脫殼時(shí)會(huì)修復(fù)此dex
脫殼原理
通過DexFile cookie進(jìn)行脫殼,理論兼容art開始的所有版本??赡苌贁?shù)因設(shè)備而異,絕大部分是支持的。資源有限無法大量測試,遇到問題請?zhí)醝ssues.
深度脫殼
深度脫殼模式下會(huì)自主修復(fù)被抽取的方法指令,將指向其他內(nèi)存塊的指令回填至DEX內(nèi),解決nop問題,但是不會(huì)確保一定會(huì)有用,例如:指令需要主動(dòng)調(diào)用才解密等則無法回填或者說是無效回填。深度脫殼并不包含任何解密、主動(dòng)調(diào)用等操作。本功能仍然在測試階段,可能會(huì)出現(xiàn)以下情況,請悉知,愿世上再無nop。
· 脫殼時(shí)間會(huì)大幅度上升,預(yù)計(jì)幾分鐘都十幾分鐘不等
· 脫殼期間有可能會(huì)出現(xiàn)應(yīng)用閃退(遇到反檢測等)
· 會(huì)增加脫殼失敗幾率
· 不一定能夠100%還原
架構(gòu)特別說明
本項(xiàng)目區(qū)分32位與64位,目前是2個(gè)不同的app,如在Demo已安裝列表內(nèi)無法找到需要開啟的app說明不支持,請使用另一個(gè)版本。