<转>iOS逆向工程:Reveal查看任意app的高级技巧!

Reveal查看任意app的高级技巧

Reveal是一个很强大的UI分析工具,与其他几个功能相近的工具(比如PonyDebugger)相比,其最大的特点就是非常直观,用来查看app的UI布局非常方便。其常规用法是将framework集成至Xcode工程中,可参见Reveal的官网http://revealapp.com/,但我们这次讲述的却是非常规用法。

在12/21的#阿里技术嘉年华#上,我给听众展示了使用Reveal查看任意app的效果,估计是当时所展示的工具中最亮眼的一个。既然如此,我就提前在这里把Reveal的这个技巧详细的列出来。

1、越狱设备,iPhone/iTouch/iPad都可以,iOS6以上(惊闻iOS7也已经越狱了);

2、安装Reveal,Trail或正式版都可以,然后越狱设备与安装Reveal的Mac在同一wifi内。

3、点击菜单Help / Show Reveal Library in Finder,获取libReveal.dylib

图1 找到libReveal.dylib

4、将libReveal.dylib上传到设备的/Library/MobileSubstrate/DynamicLibraries

图2 上传libReveal.dylib到指定目录

5、同时编辑并上传一个libReveal.plist,格式如下:

图3 设定BundleID

注意,此时是可以指定多个BundleID的,也就是说,你可以同时监控任意多的app;再扩大一步说,如果你愿意,不上传这个libReveal.plist,你可以监控所有app,只要你不觉得机器很慢。。。

6、re-spring或重启iOS设备,打开你想看的app,再从Reveal界面左上角选择要连接的机器,进入不同的页面之后还可以点击右上角的刷新钮来刷新监测的页面信息。

图4 看图说话

以上是不写一行代码就能够查看任意app的方法,各位看别人app爽的时候,也可以摸摸脖子想想自己的app。

这种“高级技巧”从来没有被Reveal官方提起过,而是我们接触到Reveal之后逐步发现的。一开始的方法比较粗暴,是直接hook想看的app,把libReveal.dylib插进去;后来经过@卢明华 的进一步探索,才总结出这个更简单粗暴的方法。

虽然Reveal是最直观的一个工具,但是在iOS逆向这个领域,它占的比重连1/10都不到,真正的大块头都有点难啃,相信各位都是理解的。

最后,相信我们的书出来之后,会给朋友们更多深度撞击的感觉。

时间: 2024-10-05 04:44:53

<转>iOS逆向工程:Reveal查看任意app的高级技巧!的相关文章

Reveal查看任意app的高级技巧

本文转载至 http://blog.csdn.net/wbdwsqwwn/article/details/40476139 Reveal是一个很强大的UI分析工具,与其他几个功能相近的工具(比如PonyDebugger)相比,其最大的特点就是非常直观,用来查看app的UI布局非常方便.其常规用法是将framework集成至Xcode工程中,可参见Reveal的官网http://revealapp.com/,但我们这次讲述的却是非常规用法. 在12/21的#阿里技术嘉年华#上,我给听众展示了使用R

Reveal真机(越狱)查看任意APP

Reveal(http://revealapp.com)是一个很强大的iOS View Hierarchy工具,他最大的特点是非常直观,在我们进行开发的时候,还可以直接修改view的属性,例如颜色,宽高等属性. 注: Reveal查看模拟器里的程序时,只需要在Xcode里添加一个断点即可. Reveal查看真机里的APP时,真机必需要先越狱. 步骤: 1.越狱手机(PP助手) 2.越狱后会自动安装Cydia商店,打开Cydia,安装openSSH,安装Cydia substrate,进入搜索界面

iOS使用Reveal分析他人app界面

不确定界面架构是否合理?最简单的办法就是看看别人是怎么做的,比如QQ. 方法也比较简单,就是一个工具:Reveal.下面说说怎么用. 测试环境:mac osx 10.10 / xcode 6.3 / ios7.1.2 / Reveal 1.5.1 安装: 首先前往 http://revealapp.com/download/ 去下载文件,解压直接运行,就可以看到界面了.这里强烈建议把下载的Reveal拷贝到mac的"应用程序"里. 调试自己的APP Reveal主要是用来调试自己的ap

Reveal查看第三方app UI视图

Reaveal + iPhone(越狱)分析app的UI视图结构(下图为网易新闻调试界面) 准备工作:1.iPhone越狱,这里使用太极越狱,需在Windows下(虚拟机即可).    1.1.首先阅读太极越狱详细教程 http://www.taig.com/tutorial.html ,备份.设置好iPhone.      1.2.然后在虚拟机中安装iTunesSetup http://www.apple.com/cn/itunes/download/ 和  TaiGJBreak_1201 h

iOS 如何做才安全--逆向工程 - Reveal、IDA、Hopper、https抓包 等

iOS应用的安全性 常常被大家忽视. 1.首先,我们可以通过软件 下载 AppStore的ipa文件(苹果 把开发者上传的ipa进行了加壳再放到AppStore中), 得到ipa文件 可以分析APP 里包含的一些资源,如:图片.plist文件.静态wap页..bundle 等. 所以不要 在plist文件.项目中的静态文件中 存储关键的信息,如果要保存,记得加密(这样可以增加破解的难度). 2.我们可以用软件 查看 APP的沙盒,查看里面存储的 文件(sqlite.plist(NSUserdef

ios逆向工程-静态分析

最近在学习IOS逆向工程,查看网络上的资料也不是太多,边学边总结一下. 首先学习资料: 念茜(大神)的博客: http://nianxi.net <ios应用逆向工程 分析与实战> ----------------------------------------------------凌乱的分割线------------------------------------------ 其次讲讲要用到的工具(ios安装工具使用Cydia中搜索安装,有些需要数据源可以自行查找): 已经越狱的IOS设备

最新Reveal安装与使用,可以查看任意AppUI布局。

最近在看iOS逆向的资料,发现了调试UI的工具--Reveal,发现这在实际开发中也是很有用处.当我们需要参照其他App界面布局的时候,使用这个工具可以看他的布局情况.不过这需要手机越狱才行.如果没有越狱的话,只能调试自己的App,有同学会说,如果是自己的App,那我用自带就够了,其实Reveal有个比Xcode自带的更有用的功能.Reveal提供一个可以即时改布局属性的功能,即我不需要修改代码,再重启App来查看.只需要在右边约束直接修改数值,回车一下,就能看到相关的布局了,类似于前端通过浏览

iOS逆向工程之给App脱壳

本篇博客以微信为例,给微信脱壳."砸壳"在iOS逆向工程中是经常做的一件事情,,因为从AppStore直接下载安装的App是加壳的,其实就是经过加密的,这个“砸壳”的过程就是一个解密的过程.未砸壳的App是无法在Class-dump.Hopper等工具中使用的.所以我们要将App进行砸壳处理.在Android开发中也存在App加壳的处理,比如什么360加固了,其实就是给App加一层壳. 本篇博客我们就以WeChat(微信)为例,从AppStore上下载微信并安装,然后使用dumpdec

iOS逆向工程之使用LLDB的USB连接调试第三方App

LLDB是Low Level Debugger的简称,在iOS开发的调试中LLDB是经常使用的,LLDB是Xcode内置的动态调试工具.使用LLDB可以动态的调试你的应用程序,如果你不做其他的额外处理,因为debugserver缺少task_for_pid权限,所以你只能使用LLDB来调试你自己的App.那么本篇博客中就要使用LLDB来调试从AppStore下载安装的App,并且结合着Hopper来分析第三方App内部的结构.LLDB与Hopper的结合,会让你看到不一样的东西,本篇博客就会和你