学习笔记-第八章 恶意代码分析实战

本章聚焦恶意代码分析的动态调试技术,通过实际操作深入理解恶意代码的行为和运行机制。
摘要由CSDN通过智能技术生成

第八章 动态调试

1.源代码级与汇编级的调试器

	多数软件开发者熟悉源码级的调试器。这类调试器一般内置于集成开发环境中。为了检查程序内部变
	量的状态一次一行的运行程序,源码级别的调试器允许设置断点,让程序中断在源代码某行。
	汇编级调试器,也称为底层调试器,它的操作对象不是源代码而是汇编代码。同源代码级调试器一
	样,你也可以使用汇编级调试器按照一次一条指令的方式运行程序。在某行汇编代码上设置断点,
	来中断程序的运行并检查内存的内容。

2.内核模式与用户模式调试

	内核模式代码的调试更具挑战性,内核模式调试一般需要俩个不同的系统。在用户模式中,调试器与
	调试代码运行在统一系统中。
	
	进行内核调试时,一个系统运行被调试的代码,另一个运行调试器。除此之外,你必须配置操作系统
	使其开启内核调试功能,并将俩个系统连通。windbg是唯一支持内核调试的流行调试器。ollydbg是恶
	意代码分析人员使用最多的调试器,但不支持内核调试。windbg支持用户模式调试,IDA Pro也有一个
	内置的调试器,但它并不具有与OllyDbg相同的功能,且不如OllDbg使用方便。

3.使用调试器

	有俩种调试程序的方法,第一种是利用调试器启动程序。当程序启动后,它被加载到内存,程序在其
	入口点运行之前立即停止运行。此刻你已经完全控制了程序。
	
	也可以附加调试器到一个已经运行的程序上。当程序的所有线程暂停时,你就可以调试它了,当你调
	试一个已经运行的程序或者一个已经被恶意代码感染的进程中,这是一个很好的办法。
	
	单步调试
	
	单步跳过,单步跳入
	
	用断点暂停执行 断点用来暂停程序的运行并让你查看程序的状态。程序在断点处暂停运行被成为“中断”,
	程序运行过程中,因为寄存器的值和内存的地址不断变化的,所以不能访问寄存器的
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值