
Android逆向视频资料(2026)
链接: https://pan.baidu.com/s/18bQwLJgv4vUKgLC-XqtxWg提取码: 46s4
可以按照"环境准备 → 静态分析(解包、反编译ABC)→ 动态分析(抓包、Hook)→ 深入对抗(分析加固)"的路径逐步深入。初期重点攻克HAP包结构分析和ABC文件反编译。
核心在于掌握全新的应用格式(HAP/ABC)、工具链及安全机制。
核心逆向目标:HAP包与ABC字节码
HAP:HarmonyOS的应用包,本质是一个ZIP压缩包,包含应用的所有组件。
ABC文件:ArkTS/JS代码经方舟编译器编译后生成的方舟字节码,存储于HAP包的ets目录下,是应用逻辑的载体。逆向分析的核心就是分析ABC文件。
应用文件体系
APP包:用于上架应用市场的最终文件,内含一个或多个HAP及签名信息。
HAR/HSP:分别是静态和动态共享包,用于代码与资源复用,通常作为依赖项存在。
一、核心基础
前置知识:扎实的计算机原理、操作系统、汇编语言(ARM)基础。
鸿蒙架构理解:深入理解其微内核架构、分布式软总线与原生安全机制。
编程语言:精通ArkTS/TypeScript(应用主体)、C/C++(Native库),并熟悉华为方舟编译器的特性。
文件格式:掌握HAP(Harmony Ability Package)包结构、APP(Application Package)包格式,以及.so等ELF文件格式。
二、工具与环境
逆向分析工具:熟练使用反编译工具(针对ArkTS字节码)、IDA Pro/Ghidra(静态分析)、Frida(动态插桩)、Burp Suite/Charles(网络流量分析)。
系统与调试环境:搭建HarmonyOS NEXT模拟器或真机调试环境,使用DevEco Studio的开发与调试功能。

三、逆向核心技能树
1. 环境搭建与前期准备
核心技能:配置鸿蒙开发与调试环境,获取目标应用包。
关键操作:
安装HDC(HarmonyOS Device Connector)、DevEco Studio。
在设备上开启USB调试。
提取HAP包:可通过hdc shell bm dump命令查找路径并用hdc file recv导出,或直接从DevEco Studio的编译输出目录获取。
必备知识:鸿蒙应用开发基础、设备调试流程。
2. 静态分析
核心技能:解构应用包,反编译并阅读核心字节码与原生代码。
关键操作:
解包与reconnaissance:使用标准解压工具解压HAP包。首先分析
config.json(类似AndroidManifest.xml)了解应用结构。
ABC字节码反编译:使用开源工具(如ark-decompiler)将ets/modules.abc文件反编译为可读的类ArkTS代码。
Native层分析:使用IDA Pro、Ghidra等传统工具分析libs目录下的.so原生库。
资源分析:解析resources目录下的二进制资源文件。
必备知识:ArkTS/TypeScript语法、ARM汇编、ELF文件格式。
3. 动态分析与调试
核心技能:监控应用运行时行为,动态干预执行流程。
关键操作:
网络流量分析:配置代理(如Burp Suite)拦截HTTP/HTTPS通信。
运行时Hook:使用Frida框架注入JavaScript脚本,Hook关键函数(如加密、逻辑判断),监控参数与返回值。
动态调试:在获取相应权限的条件下,使用调试器附加进程进行动态跟踪与分析。
必备知识:网络协议、Frida等动态插桩工具使用、调试原理。
4. 安全机制分析与对抗
核心技能:理解并尝试绕过系统及开发者的安全防护。
关键操作与知识:
系统级保护:了解签名校验、应用沙箱、以及HarmonyOS NEXT可能采用的反调试机制(如动态调试端口随机化)。
代码加固:分析代码混淆(如标识符重命名、控制流平坦化)、应用加密(安装包加密、内存解密)等保护手段。
逆向对抗:研究去混淆、脱壳、内存Dump等技术。
四、逆向分析技术
静态分析:对HAP/APP包进行解包、资源提取,分析配置文件,反编译并阅读ArkTS字节码或Native SO库的汇编/反编译代码。
动态分析:跟踪应用运行时行为,监控文件与网络操作,进行动态调试与内存dump。
通信与交互分析:分析应用本地进程间通信(RPC/IPC) 与跨设备分布式通信协议。
五、安全机制深入
应用安全模型:理解鸿蒙的签名机制、权限管理模型和沙箱隔离规则。
代码保护与混淆:分析应用可能使用的代码混淆、加固及Native层保护技术(如对SO库的防复制校验)。
可信执行环境:了解鸿蒙TEE的实现及对敏感数据的保护方式。
六、持续学习
关注官方动态:通过华为开发者学堂、官方文档、技术论坛跟踪系统更新。
社区与实践:参与开源项目、安全社区,进行靶场实战,并关注学术与行业报告。
如何防止Native库(.so文件)被复制盗用?在HarmonyOS中,一种方案是在C++代码中获取并校验应用的签名指纹。
关键API:在ETS(ArkTS)中可通过 bundleManager.getBundleInfoForSelf 获取
包含签名指纹的 bundleInfo.signatureInfo.fingerprint。
Native层验证:在C++侧,相应的接口可能是
OH_NativeBundle_ApplicationInfo::fingerprint,用于实现底层校验。
逆向对抗:作为逆向分析师,则需要定位并分析这套校验逻辑,思考如何绕过或伪造。

Android开发智能调试分析软件V7.5
链接: https://pan.baidu.com/s/1cSibTh8nDMwsEvJ59Oblvg提取码: rx32
鸿蒙安全交流群和移动安全交流群,需要定制版安全测试机型、定制版脱壳机,定制版移动安全分析工具,商务合作,添加作者微信,微信号:cd_ccms_sec

推荐阅读
HarmonyOS Next(鸿蒙Next)获取Root权限的解决方案
鸿蒙系统(HarmonyOS)常用的日志跟踪命令及相关操作指南
鸿蒙(HarmonyOS)安全深入浅出(四维防御软硬协调防护体系)
鸿蒙(HarmonyOS Next)系统提取手机本地已安装应用的hap包
