反编译工具

一 粮草先行

1.首先要有一个越狱的机器,如果没有,下面的事情就可以忽略了

2.Reveal,

不必多说,可以查看真机任意APP的UI架构,可以用于分析,解析他人APP。(如果你是一个越狱机器,在cydia里搜索,Reveal Loader(包括下面要用到的OpenSSH和Cycript))


反编译工具_第1张图片
Paste_Image.png

,然后在设置-Reveal里,可以设置要查看哪些app的架构

反编译工具_第2张图片
Paste_Image.png

3.OpenSSH,

可以通过终端连接到手机,确保手机和电脑在同一个网段,密码默认为 alpine


Paste_Image.png

4.Cycript,

是saurik退出的脚本语言功能很强大,是反编译开发中不可或缺的工具.


反编译工具_第3张图片
Paste_Image.png

5.yololib

dylib injector for mach-o binaries
github 地址 https://github.com/KJCracks/yololib

6.dumpdecrypted

砸壳工具,在app store 下载的应用,都是被加密过的,而class-dump无法应用于被加密的app,所以就需要用dumpdecrypted进行砸壳,
https://github.com/stefanesser/dumpdecrypted
确保我们从Github上下载了最新的dumpdecrypted源码,进入dumpdecrypted源码的目录,编译dumpdecrypted.dylib,输入make命令,就能在目录下生成dumpdecrypted.dylib文件.
拷贝dumpdecrypted.dylib到iPhone上,这里我们用到scp命令.或者通过ifunBox拷贝到要砸壳的应用目录下,
DYLD_INSERT_LIBRARIES=/PathFrom/dumpdecrypted.dylib /PathTo

1.ssh到手机
2.输入ps -e 可以查看到当前进程的应用.

Paste_Image.png

3.可以通过ifunBox讲先前生成的dumpdecrypted.dylib拷贝到.document目录下,


反编译工具_第4张图片
Paste_Image.png

,
4.在命令行,定位到当前dumpdecrypted.dylib的所在位置.

反编译工具_第5张图片
Paste_Image.png

通过ls -l可以显示当前路径下的文件.
5.通过
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/8104ABB2-61BB-424E-B175-32AB9E4A05DE/NewsBoard.app/NewsBoard命令,可以进行砸壳,通过ifunbox可以看见在当前目录下生成了一个

Paste_Image.png

后缀为.decrypted的文件.
6.将该文件拷贝到电脑,目前砸壳就完成了.

7.class-dump

class-dump是一个可以导入其他应用的工具,算是逆向工程中一个入门级的工具。下载地址:http://stevenygard.com/projects/class-dump选择dmg文件下载后,将dmg文件中的class-dump复制到/usr/bin目录,并在Terminal中执行"sudo chmod 777 /usr/bin/class-dump" 命令赋予其执行权限。
对上一步生成的文件进行砸壳,

Paste_Image.png

如果失败,就会只生成下面一个文件


Paste_Image.png

后来查询知道iPhone5的架构是armv7所以,在解析头文件的命令中要加入--arch armv7

Paste_Image.png

然后在当前的目录下,就会解析到该app的头文件

反编译工具_第6张图片
Paste_Image.png

你可能感兴趣的:(反编译工具)