ios逆向工具Hopper Disassembler的基本使用功能整理(持续更新)

47 篇文章 4 订阅

打开hopper后拖拽app包里的mach-o文件后,让你选择框架,默认就是下面的

在这里插入图片描述

点击上面的4种视图,切换汇编代码和伪代码

在这里插入图片描述

找出是哪里调用了当前代码.右键选择一个函数,选择References to selector show.可以找出都有哪里调用了当前位置

在这里插入图片描述
如下图,当执行touchesBegan点击屏幕方法以后执行show方法
在这里插入图片描述
在这里插入图片描述

用空指令Nop填充指令

modify-> NOP Region ,可以用空指令填充之前的指令

在这里插入图片描述

修改汇编指令

Modify->Assemble Instruction… 默认快捷键option+A
可以自己写汇编指令修改之前的汇编指令
在这里插入图片描述

保存成可执行文件

把编辑后的文件,保存成可执行文件.
File->Produce New Executable…
在这里插入图片描述

左上角 labels ,proc

在这里插入图片描述

  • labels列出所有自定义函数名,系统函数名,字符串,变量等

  • proc列出所有函数名

  • Str列出的是字符串

  • 五角星符号是:是你收藏的代码行,如下图,点击代码左边位置会出现五角星.在左上角五角星里会看到这些代码
    在这里插入图片描述

  • 左边第5个圆形是断点
    在这里插入图片描述

References to查看哪里使用了当前地址

跟踪字符串

str里面点击一个字符串,然后在右边地址出,选择 References to ,快捷键是X,可以跟踪这个地址被哪里使用
在这里插入图片描述
在这里插入图片描述
跳转到下面代码:
在这里插入图片描述
选中这行,再次按x跟踪
在这里插入图片描述
找到代码如下图:
发现是setText方法调用了这个字符串,说明是oc代码是: xxx.text = @“请输入密码”;
在这里插入图片描述

想olydbg那样动态调试

在这里插入图片描述
付费版的这个按钮点击后可以运行程序以后调试,破解mac程序

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Hopper Disassembler是一款非常强大的逆向工程工具,它可以对iOS应用进行脱壳操作,以便更好地进行逆向分析。以下是Hopper Disassembler脱壳的操作步骤: 1. 打开Hopper Disassembler软件,点击“File”菜单,选择“Open”打开需要脱壳的二进制文件。 2. 选择需要脱壳的应用程序,右键点击选择“Copy to...”,将应用程序复制到桌面或其他位置。 3. 打开终端,输入以下命令,将当前目录切换到应用程序所在的目录: ``` cd /path/to/application ``` 其中,/path/to/application为应用程序所在的路径。 4. 输入以下命令,将应用程序修改为可执行文件: ``` chmod +x ./AppName.app/AppName ``` 其中,AppName为应用程序的名称。 5. 输入以下命令,启动应用程序,并记录应用程序的进程ID: ``` ./AppName.app/AppName & echo $! ``` 第一条命令启动应用程序,第二条命令输出应用程序的进程ID。 6. 打开Hopper Disassembler软件,选择“Debug”菜单,选择“Attach to Process”,输入应用程序的进程ID,连接到应用程序。 7. 连接成功后,选择“Debug”菜单,选择“Dump Process Memory”,输入需要脱壳的内存地址和大小,保存脱壳文件。 8. 使用Hopper Disassembler打开脱壳文件,即可对应用程序进行逆向分析。 需要注意的是,在某些国家和地区,对于越狱和逆向工程活动可能存在法律风险,使用这些工具时需要谨慎。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值