
C++ STL容器逆向
文章平均质量分 75
麦子zzy
技术爱好者
展开
-
从逆向角度看C++ STL代码之std::map
std::map是基于红黑树实现的。红黑树对于很多朋友来说是一个比较难的数据结构,特别是逆向分析,更是让人头大。本文不打算讨论红黑树的相关技术细节,网上有很多资料,有兴趣的朋友可以自行搜索学习。本文主要讨论std::map逆向分析相关技术。原创 2023-11-13 16:12:53 · 1374 阅读 · 0 评论 -
从逆向角度看C++ STL代码之std::list
前面的测试代码中是int类型的链表,然而实战中经常会遇到结构体类型的链表,分析起来会有些困难。这要求我们对list的内存布局比较熟悉,当然还需要一些耐心。原创 2023-11-11 18:40:47 · 905 阅读 · 1 评论 -
从逆向角度看C++ STL代码之std::vector
我们知道,vector还有其他的重载构造和众多成员函数,虽然他们编译出的代码不尽相同,但是只要我们掌握了vector的内存布局,还是可以在逆向分析中轻松地识别出他们。另外,在vector的元素类型不同的情况下,编译出的代码形式看起来也不太一样,尤其是vector是结构体数组,或者嵌套了其他容器,编译后的代码会看起来比较复杂,但是基本的逻辑是一致的。总的来说,只要把握vector的内存布局,逆向分析还是比较简单的。原创 2023-11-11 18:12:58 · 932 阅读 · 1 评论 -
从逆向角度看C++ STL代码之std::string
逆向分析中,string的识别比较简单,其实没必要过多的讨论,只要记住string的内存布局即可。原创 2023-11-11 17:56:05 · 925 阅读 · 1 评论