如何使用lldb打印出STL中map内容


#1

需求:逆向过程中碰到了C++ STL方面的代码,lldb原有的p/po打印对于c++对象不再试用,请问有什么样的工具或者方法能打印出STL对象的具体内容吗?


#2

没有大神指点迷冿吗?那有没有合适的c++逆向入门书籍介绍下呢?


#3

C++逆向入门书籍推荐 C++ Primer


#4

p map[key] 试试?


#5

这个应该是有调试符号才可以


#6

嗯,是的,要debug版的可执行文件才可以使用p/po打印C++对象。不过论坛里对如何进行C++逆向讨论的真的很少。。。。。。


#7

因为不是论坛的主题啊。你要是知道编译之后的结构和偏移还是可以打的,就是很麻烦而已……


#8

其实,还是有办法的,用C++代码写好了打印的函数,编译成 dylib,然后用 lldb 命令挂载进来,再用 expr 命令调用。
可以看我这个回答:

觉得有帮助麻烦点个vote谢谢。


#9

最大的问题是, 如果你的stl版本或者实现和目标不一致, 那就会傻逼


#10

只能假装是一致的。