ipa砸壳解析出头文件

说明

  • 在越狱的iOS设备上,解析UCWeb应用的头文件

直接将从苹果商店上下载的ipa导出头文件

class-dump -H UCWEB.app -o UCWEB

由于该ipa文件加了壳,不能解析出头文件。

砸壳

使用dumpdecrypted工具
下载地址:https://codeload.github.com/stefanesser/dumpdecrypted/zip/master
下载后解压,然后cd到该目录下,执行make命令进行编译

`xcrun --sdk iphoneos --find gcc` -Os  -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -c -o dumpdecrypted.o dumpdecrypted.c 
`xcrun --sdk iphoneos --find gcc` -Os  -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -dynamiclib -o dumpdecrypted.dylib dumpdecrypted.o

显示如上内容,编译成功。
make命令执行完毕后,会在当前目录下生成一个dumpdecrypted.dylib文件,这就是我们等下砸壳所要用到的榔头。此文件生成一次即可,以后可以重复使用,下次砸壳时无须再重新编译。

上传文件

ssh连接到手机(我的手机ip地址是192.168.1.181)

ssh root@192.168.1.181

执行命令,找到所有进程

ps -e | grep var 

查找到uc的路径
/var/mobile/Containers/Bundle/Application/78241EAF-781C-475C-BA53-84EF7C4FE23D/UCWEB.app/UCWEB

进入/var/mobile/Containers/Bundle/Application/78241EAF-781C-475C-BA53-84EF7C4FE23D/UCWEB.app路径下
利用cycript工具勾住UCWEN应用

cycript -p UCWEB

执行代码

[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask][0]

获取当前应有的Document目录,然后进入到当前Document目录下。
将我们刚刚编译好砸壳工具dumpdecrypted.dylib上传到该文件夹下。

scp dumpdecrypted.dylib root@192.168.1.181:/var/mobile/Containers/Data/Application/72D29CE0-C288-4BEB-B319-41595DA3F64A/Documents/dumpdecrypted.dylib

提示输入密码,输入手机root密码,然后提示上传进度。

dumpdecrypted.dylib                                                               100%  193KB 192.9KB/s   00:00 

开始砸壳

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/78241EAF-781C-475C-BA53-84EF7C4FE23D/UCWEB.app/UCWEB 
mach-o decryption dumper

会生成app砸壳后的文件xx.decrypted. 这里就是 UCWEB.decrypted

文件导出到电脑

root# scp UCWEB.decrypted root@192.168.1.105:/private/tmp          
Password:
UCWEB.decrypted                                                               100%  193KB 192.9KB/s   00:00    

导出头文件

使用class-dump工具导出头文件

class-dump -H UCWEB.decrypted  -o output/

最好放一张解析成功的图片,可以看到右6502个文件(包含第三方sdk的类)。分析应用的头文件基本可以了解应用如何搭建。

 



作者:天天想念
链接:https://www.jianshu.com/p/4e00dea9bf4e
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值