2017-10-13
手动脱壳步骤:
- 准备好越狱手机(Cydia、openSSH),已安装的App
- 通过ssh远程连接手机终端
- 在手机上运行app在终端输入:ps -e |grep /var/mobile 查看进程id
1908 ?? 0:07.66 /var/mobile/Containers/Bundle/Application/4B804B0E-648F-4873-A3F1-3D72681676C3/SOHUVideo.app/SOHUVideo
利用cycript -p 进程id 切入进程
输入NSHomeDirectory(),查看App Documents目录的路径
/var/mobile/Containers/Data/Application/14C6DAB5-4FC8-4DAC-BB14-5E5339A72D64
如上,打印出应用的Home目录,Documents目录就在其下层即:/var/mobile/Containers/Data/Application/14C6DAB5-4FC8-4DAC-BB14-5E5339A72D64/Documents/
- 另外打开一个终端,将dumpDecrypted.dylib拷贝到documents目录下:
scp pathTodumpDecrypted.dylib root@IOSIP:/var/mobile/Containers/Application/14C6DAB5-4FC8-4DAC-BB14-5E5339A72D64/Documents/
- cd 到Documetns目录下,砸壳
DYLD_INSERT_LIBRARY= dumpDecrypted.dylib var/mobile/Containers/Bundle/Application/4B804B0E-648F-4873-A3F1-3D726816763/SOHUVideo.app/SOHUVideo
- 砸壳成功后,在当前目录会生成一个SOHUVideo.decrypted文件
2017-10-16
自动化脱壳:
dumpdecrypted脱壳原理:将应用程序运行起来后(对于加固应用,ios会先启动壳,然后解密真正的dex文件,然后运行程序),将内存中的解密结果dump写进文件中,得到一个新的可执行程序。
思路:
- 下载.ipa文件
- 查看cycript字段,检查应用是否被加密
- 若被加密,将.ipa文件安装到测试机上(先下载到本地,scp到测试机,测试机检测安装)
- 安装完成后,执行砸壳流程
- 最后将.decrypted文件拷贝出来
2017-10-17
自动化脱壳代码:在师兄代码的基础上进行了一些修改,目前已完成,待测试...
2017-10-19
用dumpdecrypeted.dylib 工具砸壳,编写测试代码。
- 将dumpdecrypted.lib拷贝到目标appDocuments目录下(success)
问题:如何静态获取目标app的Documents目录?(利用shell命令遍历,比对)
- 找到目标app应用程序目录(/var/mobile/Containers/Bundle/Application/4B804B0E-648F-4873-A3F1-3D72681676C3/SOHUVideo.app/SOHUVideo)
相同方法(利用shell命令遍历,比对)
执行砸壳命令(
sshpass -p '123456' ssh [email protected] 'DYLD_INSERT_LIBRARY=/var/mobile/Containers/Data/Application/14C6DAB5-4FC8-4DAC-BB14-5E5339A72D64/Documents/dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/4B804B0E-648F-4873-A3F1-3D72681676C3/SOHUVideo.app/SOHUVideo)
将文件拷贝出来()
2017-10-20
砸壳时遇到问题:
- unknown environment variable: DYLD_INSERT_LIBRARY
解决方法:改成DYLD_INSERT_LIBRARIES
在根目录下执行:
DYLD_INSERT_LIBRARIES=/var/mobile/Containers/Data/Application/1AAFADC9-C955-4227-841D-8C92153B955C/Documents/dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/8E9F6012-5BFE-4B65-9852-9E4B0A92C173/lady.app/lady
砸壳出的lady.decrypted出现在根目录下 即在/var/root/目录下