计算机取证-崩溃式内存导出(Crash Dumps)

8 篇文章 0 订阅

崩溃式内存导出(Crash Dumps)

 

崩溃式内存导出是指让系统自己崩溃(比如蓝屏而死BSoD)然后自动生成内存转储文件。转储有三种:“完全内存转储”、“核心内存转储”和“小内存转储”,在默认情况下,转储文件被写入 %SystemRoot%/Memory.dmp 文件中。之后可以用微软的一个工具Kernel Memory Space Analyzer对Memory.dmp进行分析。崩溃是系统的行为,不能通过命令行来操作,有一种通过键盘产生系统崩溃导致内存转储的方法如下。

 

首先要在使用 PS/2 键盘的计算机上启用此功能,修改注册表:

  1. 启动注册表编辑器。
  2. 找到以下注册表子项:
    HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/i8042prt/Parameters
  3. 在“编辑”菜单上,单击“添加值”,然后添加以下注册表项:
    名称 :CrashOnCtrlScroll
    数据类型 :REG_DWORD
    :1
  4. 退出注册表编辑器,然后重新启动计算机。

内存转储可以生成三种类型的内存转储文件。在手动触发转储文件前,先设置你需要的类型:

  1. 右键单击“我的电脑”,然后单击“属性”。
  2. 单击“高级”选项卡,然后单击“启动和故障恢复”按钮。
  3. 单击“写入调试信息”,然后单击以选中“完全内存转储”、“核心内存转储”或“小内存转储”。

启用此功能后,按住右 Ctrl 键,同时按 Scroll Lock 键两次,即可生成一个内存转储文件。此功能适用于 PS/2 键盘和通用串行总线 (USB) 键盘。PS/2 键盘使用键盘自带的 i8042prt.sys 驱动程序。但是,对于 USB 键盘,则必须为 Kbdhid.sys 驱动程序安装一个修补程序,Microsoft Windows Server 2003 SP2及以上版本已经带了修补程序,其他版本需要手工安装。

 

崩溃式内存导出可能是目前精确性最高的获取内存内容镜像的方法,这是因为该过程调用了KeBugCheck API,系统立即停滞,然后将内容导入一个分页文件,最后将文件写入硬盘;缺点是很多系统蓝屏而死默认并不转储全部内存,而是最小内存,这对犯罪取证的支持不够,如果是完全内存转储,启动卷上必须有一个足够大的分页文件,以容纳所有物理 RAM 加 1 MB 的容量,分页文件的大小往往在系统中是没有按这个规定配置,所以也无法获得准确的内存镜像。

 

注意

1.在具有 2 GB 或更多 RAM 的计算机上,不能进行完全内存转储。要限制 Windows 2000 可以访问的内存,请向 Boot.ini 文件中添加 <MaxMem=2000> 参数。

2.允许使用 USB 键盘生成内存转储过程的Kbdhid.sys 驱动程序存在一定局限性,当计算机在高中断请求级别 (IRQL) 停止响应,Ctrl+Scroll Lock+Scroll Lock 键盘快捷方式不起作用。之所以存在此局限性是因为与 i8042prt.sys 驱动程序相比,Kbdhid.sys 驱动程序运行时的 IRQL 较低。此USB 键盘功能只在运行 Microsoft Windows Server 2003 的计算机上起作用。

 

参考

http://support.microsoft.com/kb/254649

http://support.microsoft.com/kb/244139

http://support.microsoft.com/kb/885117/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值