前言
逆向分析的时候可以用Reveal动态分析目标APP的UI界面来帮助我们更快的找到我们想要分析的位置,本文主要介绍如何让越狱设备能到成功连接Reveal并进行分析
it is never too late to learn !
使用 lldb 调试需要准备 debugserver。使用 OSX 中的 lldb 远程连接 iOS 上的 debugserver,由 debugserver 作为 lldb 和 iOS 的中转,执行命令和返回结果。在默认情况下,iOS 上并没有安装 debugserver,只有在设备连接过一次 Xcode,安装了开发者插件后,debugserver 才会被 Xcode 安装到iOS的/Developer/usr/bin/目录下。
什么是VM Regions呢?要知道这个首先要了解什么是虚拟内存。当我们向系统申请内存时,系统并不会给你返回物理内存的地址,而是给你一个虚拟内存地址。每个进程都拥有相同大小的虚拟地址空间,对于32位的进程,可以拥有4GB的虚拟内存,64位进程则更多,可达18EB。只有我们开始使用申请到的虚拟内存时,系统才会将虚拟地址映射到物理地址上,从而让程序使用真实的物理内存。
本文主要对iOS逆向所需要的工具或者基础做一个大概的总结,如果有什么遗漏或者错误,欢迎读者指出。
想要进行逆向开发,首先就是要对APP进行砸壳,砸壳又需要越狱,当然也可以直接去一些平台下载砸壳后的APP进行逆向,砸壳后就需要对APP进行静态分析和动态分析,用reveal查看视图结构,用hopper查看汇编信息等等。