iOS 进阶知识集

iOS应用砸壳

2018-12-27  本文已影响52人  没八阿哥的程序

概述

软件脱壳,顾名思义,就是对软件加壳的逆操作,把软件上存在的壳去掉(解密)。

砸壳原理

iOS应用运行原理

iOS应用运行原理

砸壳方式

砸壳有多种方法,可以用多种途径实现。比如Clutchdumpdecryptedfrida-ios-dump手动砸壳等等

利用Clutch砸壳

Clutch是由KJCracks开发的一款开源砸壳工具。工具支持iPhone、iPod Touch、iPad,该工具需要使用iOS8.0以上的越狱手机应用。
Clutch安装

sh usbConnect.sh
scp -P 1234 Clutch-2.0.4 root@localhost:/usr/bin
Clutch -I

可以砸壳的应用列表
Clutch –d 2

砸壳后的ipa保存在var/mobile/Documents/Dumped/目录下,可以把它拷贝到电脑上使用。

dumpdecrypted

Github开源工具。 dumpdecrypted这个工具就是通过建立一个名为dumpdecrypted.dylib的动态库,插入目标应用实现脱壳。


dumpdecrypted.dylib使用可能会遇到的问题

如果你的手机是非完美越狱可能会遇到一些问题比如kill 9
可按照以下方法解决:

  1. 将dumpdecrypted.dylib复制到/ usr / lib中。确保它具有适当的权限,以便用户移动设备可以读取和执行它

-rwxr-xr-x

  1. 将用户更改为手机:
su mobile
  1. 将目录更改为移动设备可以写入的位置:
cd / var / mobile / Documents
  1. 使用绝对路径执行命令:
DYLD_INSERT_LIBRARIES = / usr / lib / dumpdecrypted.dylib /var/containers/Bundle/Application/59CEB222-4C4D-4A34-BC0F-8D38B9E3853D/MyApp.app/MyApp
  1. 然后,您将在当前目录中拥有MyApp.decrypted文件

获得的.decrypted文件便是解密后的MachO文件

frida-ios-dump

该工具基于frida提供的强大功能通过注入js实现内存dump然后通过python自动拷贝到电脑生成ipa文件。
准备
使用frida-ios-dump必须是电脑上已安装pythonpip,frida作者建议python版本是python3

安装
安装frida

 $sudo pip install frida-tools

可能会遇到警告

警告
意思是:目录不归当前用户所有。请检查该目录的权限和所有者.需要sudo的-H标志
可以使用sudo -H 。set-home 将 HOME 变量设为目标用户的主目录
sudo-H pip install frida-tools

可能又会报错误Uninstalling a distutils installed project (six)
使用命令

sudo pip install frida-tools –-upgrade –-ignore-installed six

即可。
iOS端安装frida

然后在iOS端也需要安装frida
1、添加源 https://build.frida.re
2、安装Frida
Mac配置ios-dump

$sudo git clone https://github.com/AloneMonkey/frida-ios-dump
$sudo pip install -r /opt/dump/frida-ios-dump/requirements.txt –upgrade

有可能报错:

frida-tools 1.2.2 has requirement prompt-toolkit<2.0.0,>=0.57, but you'll have prompt-toolkit 2.0.7 which is incompatible.
解决方案1 降低 prompt-toolkit 版本
卸载

$sudo pip uninstall prompt-toolkit

安装指定版本

$sudo pip install prompt-toolkit==1.0.6

继续执行

$sudo pip install -r /opt/dump/frida-ios-dump/requirements.txt –upgrade

若不生效用方案2
解决方案1 降低 prompt-toolkit 版本后修改requirements.txt文件
安装上面的方法安装低版本的prompt-toolkit后,删除requirements.txt文件中的prompt-toolkit字段。这样就不会在后续操作中prompt-toolkit就不会又被升级
然后继续执行

$sudo pip install -r /opt/dump/frida-ios-dump/requirements.txt –upgrade

OK👌。
然后映射端口
cd到frida-ios-dump目录通过命令砸壳

./dump.py 微信

砸壳后的ipa保存在当前目录下

上一篇 下一篇

猜你喜欢

热点阅读