逆向工程三之工具篇
一、摘要
本文主要介绍逆向所用到工具,包括:ui分析reveal,头文件导出class-dump,.m文件查看hopper disassembler,查看mach-o文件结构指令工具otool、可视化工具machoview
二、reveal
• mac安装:https://pan.baidu.com/s/1lz9lwtkxd9bs8dnvt9gkbq 提取密码:b31u
• ios端安装:cydia上搜索“reveal”,选择“reveal2loader”并安装,再重启springboard
1. 重启springboard;
2. 打开需要调试的app;
• 覆盖ios端的revealserver文件
1. 找到mac上的“revealserver”文件;
2. 找到ios设备上的“revealserver”文件;
说明:如果没有“rhrevealloader”文件夹,可手动创建;
3. 重启springboard;
• 使用: ios端打开app,mac打开reveal
说明:如果网络不好,wifi模式比usb模式会很卡;
说明:
三、class-dump
• 下载:
• 安装:/usr/local/bin/
• 使用
1. 找到一个ipa包,查看包内容,找到里面的mach-o二进制文件(一般和包名同);
2. cd到mach-o文件所在目录下(可事先复制一份出来),导出所有的.h文件;
3. 将.h文件夹拖入xcode;
说明:如果文件较多的话,拖入xcode显示会很卡,一般直接拖入“sublime text”显示(很顺畅);
四、hopper disassembler
说明:将mach-o文件机器语言,反编译成汇编代码、oc\swift伪代码
• 下载安装:
• 打开hopper,选择试用
• 拖入mach-o文件
说明:如果文件很大,分析会很慢(左上角进度条,或者右下角”working…”);可以等分析完毕后,再进行调试;
• 演示:搜索一个方法,点击“2”,查看代码实现(“3”处)
五、otool命令行工具
• otool指令
• 找到一个mach-o文件(以下以“钉钉”为例),查看其结构类型
说明:是一个胖二进制文件,有两种架构;
六、machoview
• 下载地址
• 将mach-o文件(以“钉钉”为例)拖入machoview
说明:两种架构,arm64和armv7;
上一篇: 羊驼韩语怎么配音?羊驼韩语配音教程
下一篇: iqoo8如何设置游戏酷炫灯效的教程
推荐阅读
-
硝烟里的淘宝之运营篇(三)运营费用篇
-
spring-boot-2.0.3不一样系列之源码篇 - run方法(三)之createApplicationContext,绝对有值得你看的地方
-
【学习笔记】第三方登录之GitHub篇
-
Java定时任务工具详解之Timer篇
-
.NET Core实战项目之CMS 第三章 入门篇-源码解析配置文件及依赖注入
-
Java之LinkedList源码分析(第三篇:添加元素-List接口)
-
.NET Core实战项目之CMS 第十三章 开发篇-在MVC项目结构介绍及应用第三方UI
-
分库分表之第三篇
-
linux vps管理之ssh远程连接软件工具篇
-
javaWeb核心技术第三篇之JavaScript第一篇