美文网首页
iOS逆向 Hopper

iOS逆向 Hopper

作者: 不简单的风度 | 来源:发表于2020-03-04 17:48 被阅读0次

前言

iOS逆向中使用Hopper可以帮助我们分析目标APP的方法地址来实现动态调试,本文只是简单介绍一个Hopper的基本用法

下载Hopper

Hopper目前在最新的Mac系统上没有破解版,每次可以试用半小时,不过对于一般的分析也是够用了,这里贴一下Hopper的官网Hopper

分析目标APP

这里主要是用自己新建的Demo用来分析,我Demo里就写了两个方法


image.png

工程编译之后把.app文件拖到Hopper的窗口


image.png

然后点击OK就行了


image.png

然后就可以进行分析了,我首先是在viewdidload里加了断点


image.png

可以先用image list 打印文件的基地址,由于iOS的ASLR特性,需要用基地址来计算其他地址,上图第一条就是可执行文件加载的基地址


image.png

上图右边Hopper选中的部分是say方法的地址,不过这里自己新建的工程拉到Hopper里面Hopper也有一个基地址0x100000000
可以在控制台用p/x指令计算一下say方法的实际地址,计算方法是(可执行文件的基地址+Hopper中方法的偏移-Hoper加载的基地址),计算出结果后用b指令下断点,可以看到已经对say方法下了断点了,这时候让程序继续执行就会断到say方法了

截屏2020-03-04下午5.02.28.png Hopper展示的都是汇编,我们也可以让xcode展示汇编, 截屏2020-03-04下午5.11.27.png

选中Always Show Disassembly之后就可以看到汇编代码了


截屏2020-03-04下午5.01.41.png
Xcode的汇编代码和Hopper的汇编代码相差的就是基地址了

Hopper和MachOView

MachO文件是iOS的可执行文件,里面的地址也可以跟Hopper反汇编出来的对应


截屏2020-03-04下午5.10.07.png 截屏2020-03-04下午5.15.02.png

Hopper还有很多用法,我这里只是做个基本的介绍。我是逆向初学者,如果文中有什么不对的地方,欢迎各位提出宝贵意见。

相关文章

  • iOS逆向-思路及常用工具

    iOS逆向wiki 逆向APP思路 Cycript Reveal class-dump Hopper MachOV...

  • iOS逆向 Hopper

    前言 iOS逆向中使用Hopper可以帮助我们分析目标APP的方法地址来实现动态调试,本文只是简单介绍一个Hopp...

  • iOS逆向工程Hopper中的ARM指令

    iOS逆向工程之Hopper中的ARM指令 一、Hopper中的ARM指令 ARM处理器就不多说了,ARM处理器因...

  • iOS逆向工程 -- Hopper Disassmbler

    准备工作 Hopper Disassmbler能够将Mach-O文件的机器语言代码反编译成汇编代码、OC伪代码或者...

  • iOS逆向之Hopper进阶

    线上发现了一个bug,需要用自产的热补丁对 Bugly 的一个方法进行替换,改变返回值 可是重试了很多次发现热补丁...

  • 十 iOS逆向- hopper disassembler

    hopper介绍,下载安装 hopper的简单使用 一 hopper介绍,下载安装 Hopper是一个可以帮助我们...

  • 十 iOS逆向- hopper disassembler

    hopper介绍,下载安装 hopper的简单使用 一 hopper介绍,下载安装 Hopper是一个可以帮助我们...

  • iOS逆向之Hopper进阶

    线上发现了一个bug,需要用自产的热补丁对 Bugly 的一个方法进行替换,改变返回值 /** * App 是否发...

  • Mac版本微信QQ防撤回

    本文需要用到的工具: hopper disassembler Mac版本微信QQ 我是一个刚刚接触逆向的iOS开发...

  • iOS逆向

    1.最简单的Hopper Disassembler玩转Mac逆向

网友评论

      本文标题:iOS逆向 Hopper

      本文链接:https://www.haomeiwen.com/subject/dqjblhtx.html