iOS 逆向工具 - Reveal

学习iOS逆向有什么用? 学习iOS逆向有什么用? 我们一般都是正向开发,那逆向开发有什么用呢? 有助于深入理解iOS内部原理 这个应该是很容易懂的,因为不懂内部原理的话,如何来逆向App呢。 查看竞品,分析竞品 例如你想做一款IM产品,就可以看下微信的数据库如何设计,各种类型的消息如何定义,收到不同类型的消息如何处理,有时候产品经理的一句参考微信,那你是不是无从下手了,其实都可以通过逆向进行了解的。 修改已有APP的功能 例如看个视频去广告、增加抖音自动翻页功能、增加微信一键转发功能,总之很多别的App,你觉得设计 阅读详情

Reveal 是一款UI分析工具,非常强大。下面介绍如何安装。

1. 安装Reveal2Loader
Cydia 搜索安装即可。

2. 配置Reveal2Loader
设置 - Reveal - 打开要调试的app

3. 安装Reveal
官方下载Reveal17;(https://revealapp.com/download/)
下载Patcher17,把Reveal17拖到Patcher里即可;

4. 使用Reveal
Mac 和iPhone在同一网段;
打开app,就能看到可以调试的app,选中即可。


注:之前版本需要拷贝libReveal.dylib 或者RevealServer.frame 到iPhone 下。
Reveal 17 和 Reveal2Loader 相配合不再需要以上拷贝,更加方便。

reveal2Loader库 Reveal使用 立即下载

相关推荐

Reveal2Loader_1.0-3_iphoneos-arm.deb

Reveal.deb,适用于越狱设备

【IOS逆向】Reveal

reveal可以运行时查看app的视图,定位到对应的上层view。比较方便针对视图定位问题。

HWHXY的博客 759

软件测试--用例篇(测试用例的好处、测试用例的七种设计方法、测试用例的粒度、测试用例的评价)

作为软件测试工程师,最主要的工作就是:编写测试用例,那么为什么要编写测试用例?它有什么好处?如何编写测试用例?测试用例写简单好还是复杂好?如何评价测试用例的质量? 天呐撸!能说不会吗?! 作为倾向软件测试工程师的老铁们,还是一起来学习吧! 一、编写测试用例的好处 测试用例是测试者的依据 测试用例使得工作可重复,是自动化测试的基础 补充:自动化测试的前提条件是:功能比较稳定,页面...

cherrydreamsover的博客 3734

ios逆向 reveal配置

reveal, ios逆向

shu 1069

保姆级教程:手把手教你给联想System x 3650 M5服务器配置RAID 5并U盘装系统

本文提供联想System x 3650 M5服务器配置RAID 5并U盘安装系统的详细教程,特别适合零基础运维人员。从准备工作、RAID 5配置到U盘引导和系统安装,涵盖全流程关键步骤与常见问题解决方案,帮助用户高效完成服务器部署。

weixin_42535703的博客 357

Spec-Kit实战:用‘规范驱动开发’重构一个老旧Node.js项目(避坑指南)

本文详细介绍了如何使用Spec-Kit工具通过‘规范驱动开发’(SDD)重构老旧Node.js项目。从逆向工程提取规范到增量改造策略,再到避免典型陷阱,提供了实战指南和避坑技巧,帮助开发者高效实现架构现代化,显著提升代码质量和维护效率。

weixin_42525582的博客 553

探秘创新加载库:RevealLoader

探秘创新加载库:RevealLoader 在Web开发的世界中,用户体验一直是衡量一个网站或应用质量的重要标准之一。特别是在页面加载过程中,如何优雅地处理等待,让用户感受到流畅而非停滞,是每个开发者都需要关注的问题。今天,我们要介绍的是一款独特的加载库——,它为网页加载动画注入了新的生命力。 项目简介 RevealLoader是由开发者Heardrwt创建的一个JavaScript库,旨在提供一系...

gitblog_00060的博客 338

SpringBoot实战——仿b站项目(一)

热部署就是当应用程序这种运行的时候升级冉家或者修改某一部分代码、配置文件时,无需手动启动应用,即可修改的部分生效工具 + IDEA配置。

weixin_52880572的博客 3453

ios逆向视图查看器Reveal安装和使用教程

官网地址: 官网地址 官网下载地址

小手琴师的博客 2074

C#计算八字

private string[] jq = { "小寒", "大寒", "立春", "雨水", "惊蛰", "春分", "清明", "谷雨", "立夏", "小满", "芒种", "夏至", "小暑", "大暑", "立秋", "处暑", "白露", "秋分", "寒露", "霜降", "立冬", "小雪", "大雪", "冬至" };private string[] dz = { "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥", "子" };

m0_72939038的博客 827

飞牛fnNAS虚拟机标准安装

飞牛NAS是一款基于Debian开发的国产免费NAS系统,支持x86架构设备,可将闲置硬件改造为NAS服务器。系统安装简便,支持多种存储模式与硬盘休眠功能,具备智能影视管理、照片备份等实用功能,并提供多种远程访问方式。飞牛NAS还支持Docker扩展,目前已承诺永久免费。文章详细介绍了在VMware虚拟机中安装飞牛NAS的步骤,包括下载镜像、创建虚拟机、初始化设置等过程,并展示了创建共享文件夹等基本操作,帮助用户快速上手这款功能强大的免费NAS系统。

dgnankai的专栏 3254

iOS逆向工具Reveal使用

研究Reveal的起因开始于一本书《iOS应用逆向工程:分析与实战》,书中提到了reveal这个工具,后来在google上查了一些博客,看了那强悍的界面效果,尤其是可以分析别人的app这一点,瞬间被吸引,开始按照前人的方法实践摸索,汇总其他开发者的经验,结合自己使用中遇到的问题,记录成篇。 开发环境: Mac OS:10.10.3 iOS:6.1.6 XCODE:6.3.1 Re

terryat的专栏 1749

安卓中蓝牙免提HFP的一些分析

最近看了一些大牛的博客,无不提到了技术分享的重要性,的确,分享自己的知识不仅仅是与他人讨论并相互提高的过程,更是对自己知识的梳理。希望自己能以此为契机,形成周期性博客分享的习惯。 文章标题为HFP的一些分析,HFP(Hand Free Profile)主要定义了安卓中与接打电话相关的一些功能的实现。本文主要介绍这其中对于HFP非常重要的Service Level Connection的建立。首先...

底层码农 770

iOS程序逆向Mac下常用工具——Reveal、HopperDisassemble、IDA

逆向分析   reveal、HopperDisassemble

Jack's blog 683

国产FPGA高云GW1NSR-4C,集成ARM Cortex-M3硬核

从板子整体角度来看,这是一款国产化程度很高的板子,从主控FPGA,到JTAG芯片,存储芯片、电源芯片等,都是使用的国产半导体公司的产品。板子整体尺寸也比较迷你,属于小而美类型的,可以认为是一款FPGA核心板,当然也预留了排针接口,给用户足够的扩展空间。对于想了解高云小蜜蜂SoC软硬件开发,以及对云源软件、MCU开发环境做个深度评测来说足够了。JTAG调试器固件可以增加虚拟串口功能,对于板子本来来说面积不会有改动,只需要添加两根信号线即可。

whik1194的博客 6393

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IOS安全、逆向、反编译4-Reveal(iOS开发者应该会用的工具)

Reveal我认为是一个iOS开发者必须了解的一个工具。无论是接手一个老项目后对UI的分析,还是在自己写项目后对UI问题的查找,都可以给予很大的帮助。 Reveal介绍 Reveal是一款调试iOS程序UI界面的工具。可以在官网上面下载。建议下载至少Reveal4版本,支持USB连接调试,速度快。低版本的只能WiFi连接调试。下边也提供破解的Reveal下载地址。 首先来看下Reveal出来...

731

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

iOS - Reveal逆向分析任意iOS应用的UI界面

在iOS逆向工程中,Reveal扮演着重要角色,一般情况下,Reveal在iOS开发过程中可以分析UI界面的状态,同样也可以应用于分析其他任意的App。Reveal是一个很强大的UI分析工具,可非常直观地查看app的UI布局,不仅限于自己的app,其他app的UI布局也一览无余。 必须要一台越狱手机 越狱教程:http://www.taig.com 安装op...

weixin_30522095的博客 344

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

IOS逆向需用到的工具汇总

1、Mac 上自带的一些命令工具 file:查看Mach-O的文件类型 file 文件路径 otool:查看Mach-O特定部分和段的内容 otool -L Mach-O文件 # 查看当前 Mach-O 文件的动态链接库。 lipo:常用于多架构Mach-O文件的处理 查看架构信息:lipo -info 文件路径 导出某种特定架构:lipo 文件路径 -thin 架构类型 -output 输出文件路径 合并多种架构:lipo 文件路径1 文件路径2 -output 输出文件路径 2、

铭记_ 1894

IOS逆向需要的工具

以下进行罗列一些IOS逆向需要的帮助工具,加快我们的逆向过程,和方便我们进行相应的逆向操作。同时可以起到画点成面的效果。这正是我们再分析和理清思路的必要过程。接下来我只进行罗列。后期有时间 我会把对应的工具 做成相应博客进行介绍。 工具列表 工具名 作用 详细介绍地址 Reveal 可以直观的进行查看App的UI布局 IDA 笼统的说,IDA是一个支持Windows、

细心程度决定你的成败 1179

iOS逆向分析app

iOS逆向分析app 适合有一定的逆向编程基础的人看。 背景:自动抢红包的脚本工具:cyscript,reveal,class-dump,越狱的pod等。 这里先上一张reveal的分析图: 小结:获取到了真个软件的整体结构视图。极大的方便我们进行分析。这个是淘宝的技术嘉年华中重点介绍的亮点工具。 接着,可以通过:class-dum...

weixin_30262255的博客 115

IOS逆向学习-Cycipt

IOS逆向学习-Cycipt control +d 退出cycript语言编写环境 获取手机app上的进程id 递归打印view 下的所有子控件,在cycript中也是适用的 control +c 取消当前输入

yong_19930826的博客 727

iOS安全逆向之旅---安全逆向环境搭建和工具使用介绍

一、前言 这是2020年第一篇文章,我们从今年开始主要介绍iOS安全逆向相关知识,介于之前已经了解了Android逆向相关的知识,所以这里会相对比较容易入门,本文就来介绍一下iOS逆向需要准备的工具和环境搭建,为后续操作做准备。 二、越狱设备(uncOver+Cydia) 首先我们得有个Mac笔记版,然后得有个iPhone手机,这个和搞Android逆向一样,去咸鱼买个二手的,而且现在...

尼古拉斯.赵四的博客 2992

iOS逆向工程基本概念

iOS App是一个运行于沙箱(sandbox)中的程序,但并不表示我们对它素手无策,事实上,可以通过逆向工程来看个究竟 软件开发、CPU工作原理和iOS有透彻的理解  使用逆向分析的方法可以推导出这个程序的设计思路、内部算法和实现细节  工具主要分为四大类:监测工具、开发工具、反汇编器(disassembler)调试器(debugger)

FIGHTING的专栏 949

revealed是什么意思/Reveal_小白白客知识点

之前已经介绍过 这个越狱动态分析的神器, 是纯命令式的分析工具,对于大多数人/普通开发者来说,这种方式还是显得太极客了。还是图形化的界面更容易接受和使用

程序员六七的博客 1031
上一篇: iOS 逆向工具 - Theos
下一篇: 理解和分析App崩溃报告(译)
直隶码农
博客等级 码龄19年 95粉丝 103原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值