String 使用lldb查找字符串内存
你好,我正在mac os上的lldb中查找字符串的地址 在GDB中,我将使用String 使用lldb查找字符串内存,string,macos,lldb,mach-o,String,Macos,Lldb,Mach O,你好,我正在mac os上的lldb中查找字符串的地址 在GDB中,我将使用find命令,在其中搜索地址。 但是我找不到lldb的这样一个命令,我知道字符串在cstring部分,在我的例子中是0x00000000002e4f08-0x000000000032e0a8。 但是我需要知道确切的位置。如果您可以访问Xcode 6预发布工具,lldb将包含一个新的内存查找命令。Enrico在几个月前添加了此命令的快速实现。一个简单的示例,使用三个lldb命令图像转储部分,内存查找,内存读取在剥离的发布应
find
命令,在其中搜索地址。
但是我找不到lldb的这样一个命令,我知道字符串在cstring部分,在我的例子中是0x00000000002e4f08-0x000000000032e0a8
。
但是我需要知道确切的位置。如果您可以访问Xcode 6预发布工具,lldb将包含一个新的
内存查找
命令。Enrico在几个月前添加了此命令的快速实现。一个简单的示例,使用三个lldb命令图像转储部分
,内存查找
,内存读取
在剥离的发布应用程序中查找字符串
(lldb) image dump sections MyAppBinary
[0x0000010462c000-0x00000107744000] 0x0003118000 MyApp`__TEXT
[0x00000107744000-0x00000107d48000] 0x0000604000 MyApp`__DATA
/* removed sections for brevity */
(lldb) mem find -s "youtube" -- 0x00000107744000 0x00000107d48000
data found at location: 0x10793362c
0x10793362c: 79 6f 75 74 75 62 65 2e 63 6f 6d 2f 65 6d 62 65 youtube.com/embe
(lldb) memory read -c100 0x10793362c
0x10793362c: 79 6f 75 74 75 62 65 2e 63 6f 6d 2f 65 6d 62 65 youtube.com/embe
0x10793363c: 64 2f 58 46 67 45 59 75 35 71 66 36 38 3f 61 75 d/XFgccu5qf68?a
如果您想要
lldb
的一些有用的别名和脚本,可以访问。例如,我更喜欢Derek的脚本部分
而不是图像转储部分MyAppBinary
它有你可以使用的符号吗?@trojanfoe我不知道你对符号的确切意思,但是当我在lldb之外键入'cstring'时,字符串就在那里,所以我想是的?如果程序有调试信息,那么答案将是肯定的,因此这将是最好的途径。调查如何查询符号信息(可能是图像查找…
)。好的,谢谢,我没有访问这些工具的权限,但我想目前没有办法,但我还是找到了解决方法。什么是(lldb)部分
?我找不到内置命令?是你添加的别名吗?如果是,它的别名是什么?感谢@AymenTM的评论。非常抱歉。我使用了这些脚本中的别名:。让我更新我的答案。