使用gdb转储越狱iOS应用程序的内存

使用gdb转储越狱iOS应用程序的内存,ios,gdb,jailbreak,Ios,Gdb,Jailbreak,我正在开发一个可以在越狱设备上运行的应用程序,我有点卡住了 我的应用程序需要gdb从应用程序转储内存。我遇到的问题是,创建或修改文件只能在代码中工作,当我尝试从shell运行命令时,它不会以root身份运行,因此不允许我在沙盒之外进行编写(沙盒不存在,因为该应用程序用于越狱设备) 所以我有两个理论上的解决方案 1) 找到以root*首选的方式运行/bin/sh的方法 2) 如果有办法将内存转储到终端,我可以使用NSData抓取内存,然后在代码中为其创建一个文件。然而,我还没有看到去做那件事 这就

我正在开发一个可以在越狱设备上运行的应用程序,我有点卡住了

我的应用程序需要gdb从应用程序转储内存。我遇到的问题是,创建或修改文件只能在代码中工作,当我尝试从shell运行命令时,它不会以root身份运行,因此不允许我在沙盒之外进行编写(沙盒不存在,因为该应用程序用于越狱设备)

所以我有两个理论上的解决方案

1) 找到以root*首选的方式运行/bin/sh的方法

2) 如果有办法将内存转储到终端,我可以使用NSData抓取内存,然后在代码中为其创建一个文件。然而,我还没有看到去做那件事

这就是我提出的两个想法,让我知道这是否可行,或者你是否知道另一种方法


谢谢

任何用户都可以在/tmp目录中写入


我刚刚将位置更改为将内存转储到/tmp/file.bin,然后我可以通过代码以任何方式移动它。

我假设您正在尝试从应用程序以编程方式运行shell命令。如果您试图绕过
system()
调用不以root身份运行的问题,即使您的应用程序以root身份运行,我也不希望有这样的依赖关系……即使它是一个非常流行的应用程序。运行这些命令的用户有什么地方可以写吗?首先,你被卡住了,现在你不想依赖使用最广泛(也是免费)的越狱应用之一了?天啊,我们很快就挑剔起来了,不是吗?我不是故意不尊重你的,我只是希望有别的办法。这看起来肯定能解决我的问题,但我只是想确定没有其他方法可以解决。