android 逆向之旅(上)
TRANSCRIPT
Android 逆向之旅 ( 上 )
資工三 A 李樸
05/02/2023 電算中心 網路系統工讀小組 工讀分享
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Agenda•逆向動機•基礎知識•Demo
05/02/2023 電算中心 網路系統工讀小組 工讀分享
逆向動機• 分析惡意 APP• 屏蔽廣告• 分析有興趣功能• 分析系統漏洞• 破解
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Agenda•逆向動機•基礎知識•Demo
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Android 架構
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Dalvik VMRegister-based architecture
05/02/2023 電算中心 網路系統工讀小組 工讀分享
APK• 取得途徑:網路,自己寫,手機內……• 已安裝 APP: /data/app
05/02/2023 電算中心 網路系統工讀小組 工讀分享
APK Format• ZIP File• Content:
o META-INFo libo reso assetso classes.dexo resources.arsco AndroidManifest.xml
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Dex Format• Dalvik Executable format• 工具:
o Dex2Jaro JD-GUI
• 可以快速分析 App 於 Java 層行為• 代碼混淆: ProGuard , APKProtect
05/02/2023 電算中心 網路系統工讀小組 工讀分享
修改 – 拆包• ApkTool.jar• java -jar apktool.jar d target.apk target• smali: Opcode(ByteCode) of Dalvik VM• 從 JAR 分析後找對應 smali 修改
05/02/2023 電算中心 網路系統工讀小組 工讀分享
修改 -- 回封• ApkTool.jar• java -jar apktool.jar b target• 簽名後才能於裝置安裝• signapk
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Agenda•逆向動機•基礎知識•Demo
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Demo……?
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo• Origin App:
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo – 拆包
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo• Smali:
o file HelloAndroid$1• .class Lcom/example/helloandroid/HelloAndroid$1;• .super Ljava/lang/Object;• .source "HelloAndroid.java“• # interfaces• .implements Landroid/view/View$OnClickListener;
o Onclick: startActivityo ==> Abount Button Listener
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo• Smali:
o File HelloAndroid$2• .class Lcom/example/helloandroid/HelloAndroid$2;• .super Ljava/lang/Object;• .source "HelloAndroid.java"• # interfaces• .implements Landroid/view/View$OnClickListener;
o Onclick Listener of Check Button
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo• 關鍵
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo – 封包 & 簽名
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Pseudo Demo• Result:
05/02/2023 電算中心 網路系統工讀小組 工讀分享
覺得複雜 ?• Native Library Disassembly• ELF 結構• ELF 加密節• Init_array 自解密• 模擬器檢測, root 檢測,文件 checksum 檢測……• …… 待續
05/02/2023 電算中心 網路系統工讀小組 工讀分享
Thank you for your attention!