逆向APP的思路

Posted spongebob-github

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逆向APP的思路相关的知识,希望对你有一定的参考价值。

逆向APP的思路

1.界面分析

Cycript、Reveal

2.代码分析

对Mach-O文件的静态分析

MachOView、class-dump、Hopper Disassembler、ida等

3.动态调试

对运行中的APP进行代码调试

debugserver、LLDB

4.代码编写

注入代码到APP中

必要时还可能需要重新签名、打包ipa



PS: Reveal->识别 UIView 的层级结构

  • 1. 去下载Reveal4.0以上版本(支持USB调试),并破解(网上有教程)

  • 2. 调试环境配置
  • 2.1 软件源:http://apt.so/codermjlee
  • 2.2 安装完Reveal Loader后,打开手机【设置】,找到Reveal->Enabled Applications->选择需要调试的APP
  • 2.3 找到Mac的Reveal中的RevealServer文件,并覆盖iPhone中的/Library/RHRevealLoader/RevealServer文件
  • 2.3.1 Reveal导航栏中Help -> Show Reveal Library in Finder -> iOS Library
  • 2.3.2 重启手机:reboot

  • 3.0 这下打开手机&Reveal就可以实时看到APP的结构

PS:Cycript->识别 控制器 的层级结构

推荐Mj的一个开源库mjcript

  • ting是应用的进程名
~ root# cycript -p ting
  • 进入cy环境(cmd+r清屏==clear,)
cy# @import mjcript
{}
cy# MJChildVcs(MJRootVc())
{}

以上是关于逆向APP的思路的主要内容,如果未能解决你的问题,请参考以下文章

App静态逆向分析思路浅析(过检测)

Python项目实战抓取-某漫画app逆向

Python项目实战抓取-某漫画app逆向

逆向一款收费版的开发工具

Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段

Android 逆向Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )(代码片段