【Android 逆向】APK 加壳脱壳现状 | 判断 APK 是否加壳 | APK 逆向流程

本文探讨了APK加壳的普遍现状,指出大部分应用都会使用加壳技术进行加固。在竞品分析和恶意应用检测中,脱壳成为必要步骤。通过解压观察、AndroidKiller和GDA等工具可以判断APK是否加壳。APK逆向流程包括检测加壳、脱壳、反编译及静态和动态分析,以定位关键函数并深入理解应用行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >





一、APK 加壳脱壳现状



加壳覆盖率很高 : 当前的应用 , 基本上 90% 都会加壳 , 各大加固厂商 , 基本都 提供免费的加壳服务 ; 很难找到不加壳的应用 ;


脱壳场景 :

  • 竞品分析 : 分析竞品 APK 时 , 如果对方加壳 , 需要 先脱壳 , 然后才能分析 ;

  • 恶意操作分析 : 恶意应用一般都会加壳 , 并且加的壳都很特殊 , 需要 先进行脱壳 , 然后才能进行恶意代码分析 ;





二、判断 APK 是否加壳



如何判断一个 Android 应用是否加壳 :

  • 直接解压观察 : 将应用 APK 解压 , 观察其特征 ;
  • Android Killer 分析 : 使用 Android Killer 等工具分析 APK 文件 , 会提示加壳信息 , 分析加壳种类 ; 每种加壳的方式都会留下加壳的指纹特征 ;
  • GDA 分析 : 使用 GDA 分析 APK 文件 , 将 APK 文件直接拖动到 GDA 中 , 就会进行自动分析 ;




三、APK 逆向流程



检测加壳 : 使用检测工具 如 GDA 等 , 判断 APK 文件是否加壳 ; 根据加壳的相关指纹信息 , 判断加的是哪种壳 ;

脱壳 : 针对 APK 加壳类型 , 进行 脱壳 ;

反编译 : 使用 反编译工具 如 ApkTool , JEB , Jadx 等 , 对 APK 进行反编译操作 ;

定位关键函数 :

  • 静态分析 : 静态分析 得到 关键 字符串 , 函数 等信息 , 定位需要分析的 关键函数 ;
  • 动态分析 : 使用 Hook , 动态调式 技术 , 进行 动态分析 ;

深入分析 : 根据 关键函数 是 Java 还是 C/C++ 再进行不同的深入分析 ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值