原文在此

一、Reveal

1 一般使用

    Reveal是ITTY BITTY发布的UI分析工具,可以很直观的查看App的UI布局。如下图所示:

    Reveal是需要付费的,需要89美元,也可以免费使用30天,不过和其它软件一样,网上都有破解版。推荐另一位博主的博客,里面有破解版安装和简单使用教程:iOS张诚的博客——Reveal使用教程。 另外也将软件Fork了一份到GitHub:https://github.com/mddios/Reveal.git

2 程序逆向

    上面的介绍对于我们自己程序的调试,查看UI布局,改动控件尺寸后实时显示已足够;但是对于程序逆向来说显然不能满足我们的要求,能够查看别人App的布局才是我们的目的,介绍如下:

下面的操作需要用到越狱手机

  • 在越狱手机安装Reveal Loader

    在Cydia中搜索安装Reveal Loader,安装完成后检查/Library/目录下有没有RHRevealLoader文件夹,如果没有,则根据下图提示,通过PP助手、iTools等手机助手自己创建一个RHRevealLoader文件夹,一定要在/Library/目录下。

  • 拷贝动态库到手机

    在MacBook下打开已经安装的Reveal,选择标题栏Help下的Show Reveal Library in Finder子选项,将会显示如下界面:

    将libReveal.dylib文件通过PP助手拷贝到刚才创建的RHRevealLoader文件夹下,至此Reveal Loader安装完毕。

  • 配置Reveal Loader

    打开手机设置,找到Reveal(一般在设置的最下面),然后点击Reveal,进入后再点击Enabled Applications就进入配置页面,如果想看哪个App则打开后面的按钮。假设我们查看系统自带的天气应用,那么打开后面的按钮,然后回到手机主界面点击启动天气应用(如果已经启动,关闭后再次启动),最后再在MacBook的Reveal中选择对应的应用即可,如下图所示:

    下面为系统天气应用UI布局图,还是很清晰的,使用了大量的Label和ImageView控件,再配合class-dump(如何使用参考此处)出的头文件,对应用程序就有整体认识:

二、Hopper Disassemble与IDA

    根据class-dump和Reveal只能对程序整体有个框架性的认识,但是具体到某个功能、函数则需要反汇编工具,甚至能够在线调试它们,打印出我们想要的信息等等。Hopper Disassemble与IDA都是反汇编/调试器工具,两款软件选择哪个都可以,IDA支持Windows、Linux、Mac OS X多平台的反汇编/调试器,Hopper Disassemble更倾向于Mac OS X平台。可以去官网下载安装:

    这两款软件也都是有破解版的,已上传到了csdn,可以直接下载(IDA是免积分的;Hopper Disassemble下载需要一个积分,上传后才发现不能取消,需要管理员权限才可以,先谢谢大家的积分)

  • 下面是Hopper Disassemble的预览图片,使用时直接将可执行文件拖进程序即可,另外图中红色圈主的部分,是两个按钮打开后可以点击下试试,会经常使用。

iOS程序逆向Mac下常用工具——Reveal、HopperDisassemble、IDA的更多相关文章

  1. Mac下常用工具

    MySql--Sequel Pro

  2. Mac上常用工具总结

    iOS开发辅助工具 Reveal :Xcode辅助界面调试工具 官网地址:https://revealapp.com/download/ 图标: SimPholders : 快速打开模拟器中的应用程序 ...

  3. Mac OSX常用工具

    换Mac有几个月了,刚换的那个月折腾了整整一个月,初用OSX很不适应,这是一种错觉,就好比说了十几年汉语,突然说英语肯定很别扭,适应后就会觉得英语更加实用. Life weiboX(http://we ...

  4. [MAC OS] 常用工具

    1.Charles mac下的抓包.代理神器 比如我想本地配置 到我的开发机上面.我可以通过Charles 下Tools  -> Map Remote 配置跳转. 2.Postman chrom ...

  5. 我Win下常用工具清单

    GoAgent 搞研发的没有一个FQ访问Google的工具,真没法工作,所以第一主推这个, 相关按照方式请参考: http://www.cnblogs.com/ghj1976/category/696 ...

  6. IntelliJ IDEA windows与mac下常用快捷键

    摘自: http://www.th7.cn/Program/java/201604/817219.shtml 1.找文件找代码找引用 shif双击在项目的所有目录查找 ctrl+f(mac下:comm ...

  7. iOS 开发用到的常用工具

    如果你去到一位熟练的木匠的工作室,你总是能发现他/她有一堆工具来完成不同的任务. 软件开发同样如此.你可以从软件开发者如何使用工具中看出他水准如何.有经验的开发者精于使用工具.对你目前所使用的工具不断 ...

  8. CocoaPods :为iOS程序提供依赖管理的工具(yoowei)

    修改于:2016.11.18   2017.1.10  2019.01.31 CocoaPods 源码 : https://github.com/CocoaPods/CocoaPods CocoaPo ...

  9. Mac下常用快捷键(转)

    前提,先熟读键盘快捷键符号:http://www.cnblogs.com/EasonJim/p/6350075.html 基本操作: Command-Z 撤销 Command-X 剪切 Command ...

随机推荐

  1. 【原创】开源Math.NET基础数学类库使用(06)直接求解线性方程组

                   本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新  开源Math.NET基础数学类库使用总目录:[目录]开源Math.NET基础数学类库使用总目录 前言 ...

  2. ECharts使用心得

    ECharts百度旗下图标插件,在展示地图.雷达图等方面有很好的支持. 应用场景: 自动生成X轴的数据: 设置:xAxis的type=value || type=time 并且设置series的dat ...

  3. objective-c 语法快速过(4)

    oc 里的字符串 字符串的快速创建(最简单的方法) NSStirng *str = @“Hello”;//oc的字符串都是@“”形式的 oc的字符串也是类的对象,是NSString类的对象,创建没有那 ...

  4. 实验记录:Oracle redo logfile的resize过程

    实验记录:Oracle redo logfile的resize过程. 实验环境:RHEL 6.4 + Oracle 11.2.0.3 单实例 文件系统 实验目的:本实验是修改redo logfile的 ...

  5. JavaScript基础深入研究

    一.DOM事件 1.事件阻止API preventDefault() — 阻止浏览器默认 stopPropagation() — 阻止事件流冒泡 stopImmediatePropagation() ...

  6. PJAX初体验(主要是利用HTML5 新增API pushState和replaceState+AJAX)

    说在前面 什么是PJAX呢? 站在应用角度的就是既实现了页面无刷新的效果,同时也产生了浏览器的前进和后退,而且url也会变化. 也不是什么新鲜技术,主要是AJAX+html5 pushState和re ...

  7. 2.羽翼sqlmap学习笔记之MySQL注入

    1.判断一个url是否存在注入点: .sqlmap.py -u "http://abcd****efg.asp?id=7" -dbs 假设找到数据库:student ------- ...

  8. Kafka0.10的新特性一览

    原文链接:http://kane-xie.iteye.com/blog/2301197 2016年5月Confluent官方宣布Apache Kafka 0.10正式发布.该版本包含了很多新功能和优化 ...

  9. 移动开发viewport

    三种 viewport layout viewport:文档流的 css 宽度,是一个静态的值,使用 document.documentElement.clientWidth 获取,在meta中是 w ...

  10. [Web API] Web API 2 深入系列(4) Action的选择

    目录 ApiController HttpActionDescriptor IHttpActionSelector ApiController 在上节中,讲到如何选择并激活对应的IHttpContro ...