主要介紹使用Frida輔助分析SO進行逆向工程項目開發。首先從基礎開始介紹NDK編譯套件,開發編譯包含SO的應用軟體並進行動靜態分析調試;接著介紹如何將演算法移植到SO中保護App,並使用模擬執行框架載入SO運行演算法,使用GDB、HyperPwn、Objection、Frida聯合調試SO中的演算法;此外,還將介紹ARM/ELF的檔案格式和反編譯工具IDA,Frida/Jnitrace Hook/Invoke JNI,JNI與反射及簡單風控案例設計分析,onCreate的Native化,分析Android源碼追蹤JNI的綁定流程。最後介紹雜湊和對稱加解密演算法的核心原理與實現細節,以及使用Frida輔助逆向分析的工作流程。
《Frida Android SO逆向深入實踐》按照由易到難、由淺入深的方式進行講解,適合Native層的初、中級讀者閱讀。
陳佳林,看雪論壇版主,看雪講師,在移動安全領域經驗豐富,多次主持銀行、電信、政府及行業部門培訓並參與安全研究項目。在看雪安全開發者峰會、GeekPwn發表主題演講。在看雪、安全客、Freebuf發表大量技術文章,目前就職於看雪科技,負責移動應用安全研究,看雪《安卓高級研修班》負責人,著有《安卓Frida逆向與抓包實戰》、《安卓Frida逆向與協議分析》
第1章 基本開發環境配置
1.1虛擬機器環境搭建
1.2逆向環境搭建
1.2.1AndroidStudio安裝NDK編譯套件
1.2.2ADB的配置和使用
1.2.3Python版本管理
12.4移動設備環境準備
1.2.5Frida版本管理
1.2.6Objection的安裝和使用
1.3Frida基本源碼開發環境搭建
1.4初識NDK
1.5其他工具
1.6本章小結
第2章 AndroidSO動態調試入門
2.1AndroidSO基本動態分析調試
2.1.1第一個NDK程式
2.12動態調試NDK程式
2.1.3交叉編譯
……