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

举报
韩曙亮 发表于 2022/01/12 00:43:57 2022/01/12
【摘要】 文章目录 一、APK 加壳脱壳现状二、判断 APK 是否加壳三、APK 逆向流程 一、APK 加壳脱壳现状 加壳覆盖率很高 : 当前的应用 , 基本上 90% 都会...





一、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++ 再进行不同的深入分析 ;

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/121754994

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。