逆向——进程、线程调试总结

本文总结了Windows 7环境下,针对不同进程调试需求如正常调试、父进程生成子进程、进程注入等的解决方法。通过分析调试过程中的通用策略,如利用OllyDbg和WinDbg,并特别讨论了64位系统下调试的挑战。同时,文章还涵盖了线程调试,强调了积累原理知识和解决问题的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1      进程

1.1    需要调试进程的几种情况:

1)        正常的单进程调试

2)        父进程生成子进程:

a)        创建子进程时挂起状态,然后写入代码执行

b)        执行新文件(可能是新生成的文件)

3)        进程注入

创建新进程,代码注入

代码注入系统进程

1.2    针对每种调试的具体解决方法(通用方法——>逐步细分)

1.2.1    通用方法

对于通用方法,要将调试器是否能够拿到系统的最高权限的两种情况(是/否)区别开来,尤其是在调试系统进程注入代码的过程中,对于权限问题(因为只能附加调试,权限不够就不能附加)更是要注意。

因为我通常使用win7操作系统,因此后续将以win7的32位和64位举例来说明。使用这个操作系统来举例的原因是:

(1)      具有通用性,基本不会出现程序执行环境和实际执行环境不符的情况(如果程序本身的执行环境与实际执行环境不符,就会在最开始程序加载的时候在ntdll.dll直接出现异常,使用windbg调试时这个点尤其明显)

(2)      虽然有地址随机化,但是经过我目前的经验来看,在环境不变的情况下VirtualAlloc的地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值