您好,登錄后才能下訂單哦!
這篇文章主要講解了“Frida脫殼工具怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Frida脫殼工具怎么使用”吧!
現在很多 app
都會對 Frida
進行檢測,所以要根據app的情況來具體使用
殼的種類非常多,可以簡單的分為以下三類:
一代整體型:采用Dex整體加密,動態加載運行的機制(免費類的殼);
二代函數抽取型:將方法單獨抽取出來,加密保存,解密執行(某加密);
三代VMP、Dex2C:獨立虛擬機解釋執行。
firda-unpack 原理是利用frida hook libart.so中的OpenMemory方法,拿到內存中dex的地址,計算出dex文件的大小,從內存中將dex導出,我們可以查看項目中的 OpenMemory.js 文件中的代碼更清晰直觀地了解。
將 dex
文件并 dump
下來,保存在 data/data/packageName
目錄下
葫蘆娃所寫,脫殼后的dex文件保存在PC端main.py同一目錄下,以包名為文件名
GitHub地址:https://github.com/hluwa/FRIDA-DEXDump<br>
文件頭搜索dex,來脫殼
會搜索 dex
文件并 dump
下來,保存在 data/data/packageName/files
目錄下
寒冰寫的, Frida 版的 Fart, 目前只能在 andorid8 上使用該frida版fart是使用hook的方式實現的函數粒度的脫殼,僅僅是對類中的所有函數進行了加載,但依然可以解決絕大多數的抽取保護
GitHub地址:https://github.com/hanbinglengyue/FART 下載 frida_fart.zip
即可
解壓 frida_fart.zip
將目錄中的 fart.so
與 fart64.so
推送到 /data/app目錄下
并使用 chmod 777
需要以spawn方式啟動app,等待app進入Activity界面后,執行fart()函數即可。如app包名為com.example.test,則
frida -U -f com.example.test -l frida_fart_hook.js --no-pause
Shell<br>_ 復制_
等待app進入主界面,執行fart()
高級用法:如果發現某個類中的函數的CodeItem沒有dump下來,可以調用dump(classname),傳入要處理的類名,完成對該類下的所有函數體的dump,dump下來的函數體會追加到bin文件當中。
于被動調用的脫殼修復,由于代碼覆蓋率低,不可能觸發app中的所有函數的調用,因此,修復的范圍有限。
感謝各位的閱讀,以上就是“Frida脫殼工具怎么使用”的內容了,經過本文的學習后,相信大家對Frida脫殼工具怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。