用dumpdecrypted给App砸壳

不中~
因为iOS真机的指令集是ARM,而Mac的是X86_64,App的可执行文件在OSX上根本跑步起来,所以没法砸

加这个选项输出到文件

-o /path/to/headers/

我这边更改 Makefile 遇到几个坑,改完之后 makefile 是这样的,截图刘明

更新了一些帖子里的代码格式,现在各种空格下划线应该没问题了

发现楼上的老大!!!!!!!!!!!

真的很感谢,学习了

安装楼主的步骤,我出现这种情况
dyld: could not load inserted library ‘dumpdecrypted.dylib’ because no suitable image found. Did find:
dumpdecrypted.dylib: stat() failed with errno=1

Trace/BPT trap: 5
之前手机升级了7.1.1与这个有关系么

在开始砸壳的时候,就出现这种情况

是在执行

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Applications/XXXXXX/Victim.app/Victim

时出现这个情况的吗?

恩 是的

根据错误信息来看的话,像是iOS没有找到dumpdecrypted.dylib或待砸壳的App。你的完整步骤是什么,描述一下看

已经可以了,之前出现的情况时因为我将生成的dylib烤到了’/User/tmp’下,之后我将它拷到’/var/tmp’下后,就能正常去壳了。不过为什么因为路径不同,就出现这种情况呢?

你是在哪个目录下执行的DYLD_INSERT_LIBRARY操作?

dylib在’/User/tmp’下时,是在’/User/tmp’目录下执行的DYLD_INSERT_LIBRARIES,不行;又到’/var/mobile/tmp’目录下执行,也不行。最后将dylib拷到’/var/tmp’下,在’/var/tmp’目录下执行,就OK了。

iOS上的/User就是/var/mobile,但你的iOS里有/var/mobile/tmp这个目录吗?如果在/var/mobile下不行而在/var下可以,我猜可能是沙盒的原因

终于做了一次无错误直接通过的教程。。。:cry:

@snakeninny 您好,版主, 将砸壳成功后的App,拷贝回原来它所在的位置,无法启动,请问是什么原因?多谢:)

因为/var/mobile/Applications/下的所有App都是有壳(加密)的,iOS在启动这个App前会先做剥壳(解密)操作,而你砸壳后,App变成无壳的了,iOS却不知道,仍然会对无壳的App做剥壳操作,结果App就变成了一个无效的二进制文件,自然无法启动了

多谢版主回复:) 请教在用gdb或者debugserver+lldb调试支付宝钱包的时候,参照念茜的文章进行的步骤,但是支付宝应用无法用gdb附加上去,参考资料可能是ptrace设置组织了调试器附加。但是在gdb中 b ptrace的时候,提示Make breakpoint pending on future shared library load? (y or [n]) ,请问怎么解决这个问题,多谢:)

GDB现在bug太多,出了问题不好定位到底是被调试进程的问题还是调试器本身的问题,你换LLDB再试试吧。不过我想支付宝钱包应该是做了防护措施的