[Android] [逆向工程] 安卓逆向入门篇
掌握逆向工程可以帶給你哪些技能?
逆向手段介紹
我了解到的安卓逆向有復現工程、侵入工程、注入工程三種手段。
復現工程
復現工程是指通過工具將APK轉換為Android工程,并對Android工程的配置項修復使其可以正常運行,只要工程可以被成功復現接下來就可以為所欲為了。事實上并不是所有工程都可以被成功復現,而且需要花費大量的時間去復原工程,這也非??简為_發人員的耐心和技術經驗。
侵入工程
侵入工程是指通過工具將APK轉換為Smali工程,然后通過開發工具編寫一個附加工程,再將附加工程的Smali和原有工程整合在一起,再重新打包。沒有友好的DEBUG支持,依靠打印調試。
注入工程
在特定設備上安裝特定的HOOK框架,編寫獨立的HOOKAPK,通過HOOK框架的支持,直接注入代碼到目標APK的虛擬機中。這種方式,只能運行在特定環境中,制作套殼包放在公網上就無能為力了。
| ? | ?? | 不限 | 接近原生開發 | 需要大量的時間修復工程 |
| ??? | ??? | 不限 | 逆向業務與APP業務分離,容易移植和迭代 | 沒有友好的DEBUG支持,基本靠打印篩選有效信息。 |
| ???? | ???? | 特定環境 | 獨立的APK處理逆向業務,DEBUG支持 | 只能在特定環境中運行 需要開發者掌握特定框架技能 |
????????你可以根據自身業務特點和自身能力去選擇逆向的方式,舉個例子,假如你的意圖是為了跨職能交付,那么注入工程就是很好的選擇,如果你為了制作套殼包供他人使用,那么侵入工程和復現工程是必然的選擇。
侵入工程
? ? ? ? 掌握這門技能需要對ApkTool和Jadx工具、安卓簽名知識、Smali基礎語法有一定的了解,假如缺乏這方面的知識儲備也沒有關系,這個專欄帶你從零開始窺探安卓逆向的其中一扇大門。
? ? ? ? 那么這個專欄教你如何破解簽名、偽造簽名、破解APK和XAPK的Java層業務等技能,并帶你制作一套屬于自己的逆向模板。
總結
以上是生活随笔為你收集整理的[Android] [逆向工程] 安卓逆向入门篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux中的信号1——信号概述
- 下一篇: android sina oauth2.