本文介绍: 前面简单尝试了下frida–trace,发现可以追踪对应pid动态运行时的各种函数,但是对于一个完整APP应用,我们如何得到关键的运行函数,这里就需要对IPA进行一个逆向拆解,找代码逻辑,然后结合frida动态去看了。
【IOS逆向】dumpdecrypted砸壳
前面简单尝试了下frida–trace,发现可以追踪对应pid动态运行时的各种函数,但是对于一个完整APP应用,我们如何得到关键的运行函数,这里就需要对IPA进行一个逆向拆解,找代码逻辑,然后结合frida动态去看了。
爱思助手下载IPA
Apple Configuration下载IPA
这个是通过缓存IPA,这是APPLE官方出品的,不同于爱思是镜像苹果商城,这个方法比较推荐
登录APPLEid,然后从历史iCloud里面找你的app下载记录,
点击添加,他会先缓存ipa
~/Library/Group Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps
砸壳
dumpdecrypted
✘ ~/repos git clone https://github.com/stefanesser/dumpdecrypted.git
Cloning into 'dumpdecrypted'...
remote: Enumerating objects: 31, done.
remote: Total 31 (delta 0), reused 0 (delta 0), pack-reused 31
Receiving objects: 100% (31/31), 7.10 KiB | 1.77 MiB/s, done.
Resolving deltas: 100% (15/15), done.
~/repos cd dumpdecrypted
~/repos/dumpdecrypted master ls
Makefile README dumpdecrypted.c
~/repos/dumpdecrypted master mke
zsh: command not found: mke
✘ ~/repos/dumpdecrypted master 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
~/repos/dumpdecrypted master ls
Makefile README dumpdecrypted.c dumpdecrypted.dylib dumpdecrypted.o
~/repos/dumpdecrypted master
完成上述之后我们得到了编译后的产物dumpdecrypted.dylib,现在将他弄到手机里
openssh
ssh root@192.168.0.103
这里openssh默认的root密码是alpine
,建议修改,修改如下
iPhone:~ root# passwd
Changing password for root.
New password:
Retype new password:
iPhone:~ root#
scp传进来即可
搜索App应用位置
对我们的动态库进行签名
ldid -S dumpdecrypted.dylib
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/58F8F561-7406-479B-B90E-64C266218A4B/WKMainProject.app/WKMainProject
如果出现
则表示砸壳失败
否则会在当前文件夹下生成脱壳后的mach-0文件:生成: app名字.decrypted
通过如下命令可以看到文件是否加密
otool -l WeChat|grep cry
原文地址:https://blog.csdn.net/xiru9972/article/details/129096115
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_22492.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。