0
点赞
收藏
分享

微信扫一扫

C/C++ 实现LyDebug动态PE调试器

通过运用Capstone反汇编引擎,并配合Windows提供的调试API接口,一步步实现一个基于命令行版的动态调试器,该调试器支持,寄存器查看修改,软硬件断点的设置删除以及遍历,单步执行步过,堆栈检查,内存检查等功能。

设置软件断点: SetBreakPoint --address 15275403

C/C++ 实现LyDebug动态PE调试器_网络安全工具应用

输出所有软件断点: ShowBreakPoint

C/C++ 实现LyDebug动态PE调试器_堆栈_02

清除软件断点: DelBreakPoint --address 15275403

C/C++ 实现LyDebug动态PE调试器_寄存器_03

设置内存断点: SetMemBreakPoint --address 15275437 --flag (r,w,e)

C/C++ 实现LyDebug动态PE调试器_网络安全工具应用_04

输出所有内存断点: ShowMemBreakPoint

C/C++ 实现LyDebug动态PE调试器_寄存器_05

清除内存断点(error): DelMemBreakPoint --address 15275403

C/C++ 实现LyDebug动态PE调试器_堆栈_06

设置硬件断点: SetHbreakPoint --address 15275403 --len 4 --flag (r,w,e)

C/C++ 实现LyDebug动态PE调试器_网络安全工具应用_07

输出所有硬件断点: ShowHbreakPoint

C/C++ 实现LyDebug动态PE调试器_堆栈_08

清除硬件断点: DelHbreakPoint --dr 0

C/C++ 实现LyDebug动态PE调试器_调试器_09

反汇编当前行: Dissasembler --size 10

C/C++ 实现LyDebug动态PE调试器_寄存器_10

单步步过: StepOut

C/C++ 实现LyDebug动态PE调试器_调试器_11

单步步入: StepIn

C/C++ 实现LyDebug动态PE调试器_调试器_12

检查寄存器: Register

C/C++ 实现LyDebug动态PE调试器_堆栈_13

修改寄存器: SetRegister --reg eax --value 10

C/C++ 实现LyDebug动态PE调试器_调试器_14

检查堆栈: Stack

C/C++ 实现LyDebug动态PE调试器_堆栈_15

检查内存: Memory --address 15275403

C/C++ 实现LyDebug动态PE调试器_堆栈_16

修改内存: SetMemory --address 15275403 --value 10

C/C++ 实现LyDebug动态PE调试器_寄存器_17

版权声明:本博客文章与代码均为学习时整理的笔记,文章 [均为原创] 作品,转载请 [添加出处] ,您添加出处是我创作的动力!





举报

相关推荐

0 条评论