-
在
逆向开发
中,必不可少的一步:砸壳
-
关于
砸壳
,比较有名的工具:Clutch
、dumpdecrypted
、frida
(前两个是低版本用的。兄得们可以去研究一下原理,今天小谷说下frida
)
1. 砸壳
1.1. 壳程序
-
通过
App Store
发布的应用,都是通过加密
的,我们把这类应用成为壳程序
-
壳程序
是通过App Store
加密保护的。我们无法通过反汇编工具
去查看~ -
在
逆向开发
中,我们我们需要对加密的二进制文件
进行解密
才可以开始工作,这部分称为砸壳
1.2. 静态砸壳
砸壳
又有两种:静态砸壳
和动态砸壳
静态砸壳
就是 — 将磁盘
中的应用程序直接解密
,得到应用。(难度系数比较高)
1.3. 动态砸壳
由于运行在内存中的程序可以被识别,所以这个时候就可以不用考虑
App Store
的加密了~
动态砸壳
主要是截取运行在内存中的MachO(image镜像)
。
2. Frida
Clutch
、dumpdecrypted
是低版本系统,比较经典。不过现在基本 都是Frida
(好用,坑也多?)了
2.1. Frida的安装
Frida
主要用途是砸壳
。砸的是手机的壳,所以我们要在Mac
,iPhone
中都装上,然后还要配置
2.1.1. Mac电脑安装Frida
首先要有
python
。目前小谷推荐是python3
(python2
好像已经不更新了)
- 兄弟们可以看下有没有这个
python3
如果没有—安装命令
brew install python3
- 还要有
pip
如果没有—安装命令
sudo easy_install pip
- OK,可以安装frida了
sudo pip install frida-tools
2.1.2. iPhone安装Frida
-
越狱
手机,然后打开Cydia
-
添加源:
build.frida.re
-
安装
就是他,装上就OK了。
2.1.3. Mac配置
又回到Mac电脑了
- 下载下来
frida-ios-dump
脚本
sudo git clone https://github.com/AloneMonkey/frida-ios-dump
- 进入
frida-ios-dump
目录安装依赖
sudo pip install -r requirements.txt -upgrade
- 其实就是这个文件
- 由于是安装的
python3
,有几个地方要改的
安装完成之后,兄弟们可以配置下
环境变量
,使得dump.py
可以使用。(如果要移动脚本,把dump.py和dump.js
一起移动)
2.2. Frida的使用
Frida
其实有好多功能,也可以动态调试
,但是不好用。但是他的砸壳
就好用的离谱
-
我们首先连上手机(开启端口映射)(这个可以看我上次的博客 OpenSSH)
-
我们查看
进程PID
frida-ps -U
- 开始砸壳拷贝了(以
某信
举例吧~)
dump.py 微信
直接就出来了
- 我们看下他是否是
砸壳
之后的~
是不是用起来很舒爽~
3. 总结
-
这篇博客主要写了下
砸壳
,其实本开始不想写了。不过在上一篇已经提到了就写了下~ -
Frida
其实很强大的,不够我们逆向开发
主要还是用他的砸壳
技术 -
Clutch
、dumpdecrypted
这两款其实现在不怎么用了,不过原先还是很有名气了。可以了解下 -
最后。小谷写完博客要买咖啡了。最近学习很晚,被领导说上班没精神了