码迷,mamicode.com
首页 >  
搜索关键字:简单调试器    ( 7个结果
MyDebugeer 一个简单调试器的实现
学习的是网上的帖子,所以就不贴源码了。 整个程序以调试循环为主体,实现了启动调试,继续执行,内存查看,读取寄存器值,显示源代码,断点的设置、查看、删除,三种单步执行:StepIn、StepOver、StepOut,显示变量列表、显示指定类型内存内容,显示函数调用栈等功能。 原贴写的很好,从中学到了很 ...
分类:其他好文   时间:2017-03-10 21:52:34    阅读次数:187
简单调试器的实现(三)
单步的实现 就是之前设置的TF标志位 步出则是在ebp+4的地址设置断点 步过则是获得下一条指令长度,在下下条指令下断点 然后关于之前硬件断点的问题,发现设置1个字节的断点就能断下来,不过在断点恢复的时候,设置TF恢复就不能正常运行 也有点问题。 这个调试器也拖了很久没弄了,感觉放下了就很久不会弄, ...
分类:其他好文   时间:2016-04-24 20:13:25    阅读次数:247
简单调试器的实现(四)断点
Int3断点原理:在一个指令处设置断点有2步,1.将指令的第1个字节保存起来,2.将这个字节替换成 0xCC我们可以用我写的调试器看一下:u指令显示了在地址 14e1bbb处的指令 E8 3EAC000; Call 14ec7fe 。然后查看这个地址存放的内容。接着,在14e1bbb设置一个断点.....
分类:其他好文   时间:2015-07-07 14:44:26    阅读次数:113
简单调试器的实现(三)完善调试器
Dll加载:case LOAD_DLL_DEBUG_EVENT: // Read the debugging information included in the newly // loaded DLL. Be sure to close the handle to the loaded...
分类:其他好文   时间:2015-03-28 20:08:03    阅读次数:119
简单调试器的实现(二)使用反汇编引擎&建立第一个程序
让程序停下来:动态调试器的一个重要特点就是:让程序停下来,这样我们才可以观测到程序的即时情况。不过现在我们并不需要研究怎么下断点,系统已经帮我们激活了第一个断点。在创建调试进程时,系统会帮我们在ntdll.dll中设置一个INT3断点,我们就让程序在这里断下来。switch (DebugEvent-...
分类:其他好文   时间:2015-03-28 06:27:00    阅读次数:192
简单调试器的实现(一)调试循环与反汇编引擎
最近对调试器的原理感兴趣,自己写了一个简单的demo打开调试进程:要调试一个进程,需要在使用CreateProcess打开一个文件时,将第6个参数设为DEBUG_PROCESS。BOOL WINAPI CreateProcess( _In_opt_LPCTSTR lpApplicationName....
分类:其他好文   时间:2015-03-28 06:23:06    阅读次数:226
windows简单调试器源码2700行左右代码
简单调试器项目中on开头的函数为接收系统的调试事件并做相应的处理,简单调试器实现过程中主要的调试事件为异常事件,相应的处理函数为DispatchException。 在异常事件中访问异常、int3异常、单步异常是跟实现调试器功能密切相关的异常事件,这里用三个函数分别处理三个函数分别为OnExceptionAccess、OnExceptionBreakPoint、OnExceptionSingle...
分类:Windows程序   时间:2015-01-11 19:11:35    阅读次数:166
7条  
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!