iOS逆向初探工具集应用简介

在今年春季装了一回 微信的抢红包插件,也够装了一回牛X了,总结下插件在iOS在实现越狱手机里实现方法;在网上找了各种资料,收集起来做一个总结。

class-dump

下载地址: http://stevenygard.com/projects/class-dump/
class-dump利用Objective-C语言的runtime特性,将存储在Mach-O文件中的头文件信息提取出来,并生成对应的.h文件。

安装步骤

将下载下来的class-dump复制到 /usr/bin/ 目录下,然后执行

# 修改class-dump执行权限
adideMacBook-Pro:~ adi$chmod 777 /usr/bin/class-dump 
  • 注意:OS X10.11+的mac 在把class-dump放进 /usr/bin/的时候会出现如下问题:
adideMacBook-Pro:~ adi$ mv ~/Desktop/class-dump /usr/bin/class-dump
mv: rename /Users/adi/Desktop/class-dump to /usr/bin/class-dump: Operation not permitted
adideMacBoo

原因是mac新系统加强了安全权限防护Rootless机制,解决方法2种:
1.关闭Rootless机制:重启mac 按住 Command+R,进入恢复模式,打开Termina,输入csrutil disable把class-dump放入/usr/bin/文件夹下,然后在重启mac 按住 Command+R输入csrutil enable 恢复原来;
这里是 mac os 引入SIP的一个说明链接:http://ju.outofmemory.cn/entry/211399
2.修改环境变量:http://bbs.iosre.com/t/10-11-usr-bin-class-dump/1936
我自己放入了/usr/local/bin 的目录下。

Theos

Theos是非常出名的iOS越狱开发工具包;

安装步骤

  1. Xcode Command Line Tools
#选择Theos指定xcode
  adideMacBook-Pro:~ adi$ sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
  1. 下载Theos
adideMacBook-Pro:~ adi$ export  THEOS=/opt/theos
adideMacBook-Pro:~ adi$ sudo git clone https://github.com/theos/theos.git $THEOS 
Cloning into '/opt/theos'...
remote: Counting objects: 7536, done.
remote: Compressing objects: 100% (52/52), done.
remote: Total 7536 (delta 24), reused 0 (delta 0), pack-reused 7484
Receiving objects: 100% (7536/7536), 1.96 MiB | 31.00 KiB/s, done.
Resolving deltas: 100% (4594/4594), done.
  1. 配置ldid
    ldid是专门用来签名iOS可执行文件的工具,用以在越狱iOS中取代Xcode自带的codesign;
    下载地址:http://joedj.net/ldid
# 放入/opt/theos/bin 文件夹下
adideMacBook-Pro:~ adi$ sudo mv ~/Downloads/ldid /opt/theos/bin/
Password:
adideMacBook-Pro:~ adi$ chmod 777 /opt/theos/bin/ldid 
  1. 配置CydiaSubstrate
    运行 Theos 自动化配置脚本:
$sudo /opt/theos/bin/bootstrap.sh substrate

***注:最新版的 theos 里面已经没有这个脚本了,可以跳过执行脚本这一步
接下来要做的就是从 iOS 上已经安装的 Cydia Substrate 上复制 cydiaSubstrate 文件到 theos 上。
要想在 Mac 上访问 iOS 设备的文件目录,新手可以直接使用 iFunBox,或者如果你觉得不屑使用图形化工具,也可以直接使用 scp
命令来进行拷贝。

adideMacBook-Pro:~ adi$ scp root@手机ip地址XXX:/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate ~/Desktop/
adideMacBook-Pro:~ adi$ sudo mv ~/Desktop/CydiaSubstrate /opt/theos/libsubstrate.dylib

需要拷贝的文件位于 iOS 上的 “/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate”,将其拷贝到 OSX 上,然后重命名为 libsubstrate.dylib 后放到 “/opt/theos/libsubstrate.dylib” 中。

  1. 配置dpkg-deb
    deb 是越狱开发安装包的标准格式,而 dpkg-deb 是操作 deb 文件的工具,有了这个工具,Theos 才能将工程正确地打包成 deb 包。
    从 https://raw.githubusercontent.com/DHowett/dm.pl/master/dm.pl下载dm.pl,将其重命名为 dpkg-deb后,放到 “/opt/theos/bin/“ 目录下,然后设置它的可执行权限:
$sudo chmod 777 /opt/theos/bin/dpkg-deb

其实,Theos 已经是一个 tweak 的开发环境了,但是由于这里只是因为需要编译 tweak 而用到它,所以它的很多后续配置也没有详细讲解了。
至此,我们的安装环境就搭建完了,下一步可以正式地开始安装 tweak 了。

Reveal

mac端:https://revealapp.com/
Reveal2破解版:https://pan.baidu.com/s/1jIPY5me
Reveal用于查看某个App的UI布局;
https://github.com/heardrwt/RevealLoader

  1. 安装Reveal Loader(手机端)
    在 Cydia搜索Reveal Loader并安装,如果没有找到话先添加软件源 Cydia > Sources Tab > Edit > Add加入源http://rheard.com/cydia或者 你没有添加bigBoss源,在Cydia 首页Tab,点击更多软件源,找到bigBoss源进行安装即可。
    iOS逆向初探工具集应用简介_第1张图片
    WechatIMG2.jpeg

    2.安装Reveal2(Mac端)我用的是Reveal2破解版
    安装完成之后再 Reveal 的 “Help” 选项下 “Show Reveal Library in Finder”
    iOS逆向初探工具集应用简介_第2张图片
    屏幕快照 2017-02-09 下午11.35.20.png

    导出RevealServer.framework里的RevealServer,并重命名libReveal.dylib,然后
#如果没有RHRevealLoader文件夹,就创建下
adideMacBook-Pro:~ adi$ scp ~/Desktop/libReveal.dylib [email protected]:/Library/RHRevealLoader/

然后就可以在手机setting里的reveal里,设置你想要看的App的UI布局了。如图:(58同城的app)


iOS逆向初探工具集应用简介_第3张图片
屏幕快照 2017-02-09 下午11.24.55.png

IDA 或者 hopper

这2个反汇编工具是重点喽,使用到时候再说,先装上,想了半天反正都没用过都装上
IDA Demo下载地址:https://www.hex-rays.com/products/ida/support/download_demo.shtml;
用这个作为一个新手足够了,如果有稳定的破解版欢迎各位向我推荐;但是有个为题哦,就是 IDA Demo Mac版只支持32位的,如果要分析64的,我这边只能用hopper
Hopper Disassembler v4 已经支持swift分析;

你可能感兴趣的:(iOS逆向初探工具集应用简介)