Debugger
键盘上的疯兔
乐于钻研问题背后的规律,并乐于编程证实。
展开
-
使用windbg查看PE结构
使用windbg查看PE结构实验环境:WIN7 32bit 编译器:Microsoft (R) Macro Assembler Version 6.14.8444Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86查看模块PE结构大体情况:查看模块P原创 2012-07-15 11:01:20 · 4810 阅读 · 4 评论 -
windbg字符串比较条件断点
windbg字符串比较条件断点目的: 当寄存器指向字符串为与某个字符串相同时,断下程序。问题关键: 需要把寄存器指向的字符串取出来比较,而别名可以做到这一点。测试源码:void main(){ char buf[] = "shengfu"; char* p = buf; __asm mov eax, p}断点: 1 e 0040141原创 2012-08-09 19:26:02 · 3427 阅读 · 0 评论 -
在源码中指定PE节
在源码中指定PE节Win32 ASM 在定义段时指定节:.386.model stdcall, flatoption casemap:noneinclude windows.incinclude kernel32.incinclude user32.incincludelib kernel32.libincludelib user32.libsfdata segm原创 2012-07-26 23:09:34 · 1586 阅读 · 0 评论 -
Windbg 的this指针陷阱
Windbg 的this指针陷阱 当进入类的成员函数时,this指针并不是马上指向对象地址,在使用this设置内存断点时,这就是一个巨大的陷阱。下面成类构造函数为例,分析debug版下的汇编代码.Cpp源码如下:class Node{public: Node(); int data;};Node::Node(){ int a = 10; a = (in原创 2012-08-14 00:40:21 · 2483 阅读 · 6 评论