LiveDump - 本机动态生成完整内核 dump 文件

Windows内使用livekd使得即时获得内核层dmp或实时查看快照 1 需求场景 对于个别程序陷入内核不返回,或者无法呼出调试器等场景,往往需要查看内核层数据再进一步分析。通常用scrolllock法触发蓝屏。但是这样做一则需要事先配置好蓝屏设置,二则蓝屏后,故障现象就被终止了。 livekd就可克服上述缺点,它能够即时获得内核层dmp,不影响Windows继续运行。当然,livedkd毕竟是个应用程序,前提是至少要能够执行livekd。 livekd需要配合kd.exe或者windbg.exe使用。推荐直接下载windbg,这里面包含了二者。 livekd还需要ntosk 阅读详情
LiveDump by 小喂

模仿 livekd 写的一个工具,可以在本机上动态生成完整内核 dump 文件,方便本机内核调试,或者事后调试,可能对于保存当前系统状态也有点用。和 livekd 不同,livedump 生成的是一个完整 dump 文件,而没有采用文件过滤驱动的方式。当前支持 xp 以后的 32 位系统,但我只在 32 位 xpsp2 和 vista 系统上测试通过,使用过程产生的任何问题请自己负责。


D:/WinDBG>livedump d:/DmpFiles/live_vista.dmp

LiveDump v1.0 - Generate full kernel mode dump file on a live system
xiaoweitech - http://hi.baidu.com/xiaoweitech
Copyright (C) 2008 xiaowei
Usage: livedump [dump file name]


start dump ... successed!

D:/WinDBG>kd -z d:/DmpFiles/live_vista.dmp

Microsoft (R) Windows Debugger Version 6.8.0004.0 X86
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [d:/DmpFiles/live_vista.dmp]
Kernel Complete Dump File: Full address space is available

Comment: 'This dump file is generated by LiveDump (http://hi.baidu.com/xiaoweitech)'
Symbol search path is: srv*E:/WebSymbols*http://msdl.microsoft.com/download/symbols
Executable search path is:
Windows Vista Kernel Version 6000 MP (2 procs) Free x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 6000.16584.x86fre.vista_gdr.071023-1545
Kernel base = 0x82000000 PsLoadedModuleList = 0x82111e10
Debug session time: Sun Apr 13 21:13:58.005 2008 (GMT+8)
System Uptime: 49336 days 0:17:26.005
Loading Kernel Symbols
........................................................................................................................
.....................................
Loading User Symbols

Loading unloaded module list
..........
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 1E, {80000003, df9734b0, 0, 0}

*** ERROR: Module load completed but symbols could not be loaded for LDumpDrv.sys




Probably caused by : Unknown_Image ( LDumpDrv+4b0 )

Followup: MachineOwner
---------

16.0: kd> vertarget
Windows Vista Kernel Version 6000 MP (2 procs) Free x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 6000.16584.x86fre.vista_gdr.071023-1545
Kernel base = 0x82000000 PsLoadedModuleList = 0x82111e10
Debug session time: Sun Apr 13 21:13:58.005 2008 (GMT+8)
System Uptime: 49336 days 0:17:26.005

16.0: kd> !process 0 0 explorer.exe
PROCESS 862b4d90  SessionId: 1  Cid: 0374    Peb: 7ffd8000  ParentCid: 021c
    DirBase: 685ed360  ObjectTable: 9d1817c0  HandleCount: 810.
    Image: explorer.exe

16.0: kd> !pcr
KPCR for Processor 0 at 820f4700:
    Major 1 Minor 1
        NtTib.ExceptionList: ffffffff
            NtTib.StackBase: 00000000
           NtTib.StackLimit: 00000000
         NtTib.SubSystemTib: 8014f000
              NtTib.Version: 03dc94a2
          NtTib.UserPointer: 00000001
              NtTib.SelfTib: 00000000

                    SelfPcr: 820f4700
                       Prcb: 820f4820
                       Irql: 00000002
                        IRR: 00000000
                        IDR: ffffffff
              InterruptMode: 00000000
                        IDT: 81c7f400
                        GDT: 81c7f000
                        TSS: 8014f000

              CurrentThread: 820f8300
                 NextThread: 00000000
                 IdleThread: 820f8300

                  DpcQueue:
16.0: kd> !object /Driver
Object: 88a68958  Type: (84057d40) Directory
    ObjectHeader: 88a68940 (old version)
    HandleCount: 0  PointerCount: 103
    Directory Object: 88a07488  Name: Driver

    Hash Address  Type          Name
    ---- -------  ----          ----
     00  86191880 Driver        Beep
         85ce0570 Driver        al3uov8c
         8541eac8 Driver        KSecDD
         84f0d768 Driver        NDIS
     01  85d15c28 Driver        mouclass
     02  86ab0b08 Driver        CMB8100
     03  847280d8 Driver        LDumpDrv
         85e81778 Driver        kbdclass
         856240d0 Driver        IntcAzAudAddService
     04  86191e30 Driver        VgaSave
         8604f528 Driver        NDProxy
         84e32dd8 Driver        msisadrv
         867221b8 Driver        monitor
     05  84f07d78 Driver        Ecache
         84e3f760 Driver        MountMgr
     06  85ca7438 Driver        ohci1394
         86376d38 Driver        CMBProtector
     08  84eb65b8 Driver        atapi
         861604b8 Driver        PEAUTH
     09  84eb5ef0 Driver        JRAID
         84eb6908 Driver        volmgrx
         8405bd28 Driver        PCI_NTPNP9580
     10  84a10030 Driver        USBSTOR
         862adcd8 Driver        PSched
         861e5158 Driver        RasAcd
         85dad318 Driver        VMnetAdapter
         85c7cec8 Driver        tunmp
         84dbc368 Driver        sptd
     11  85ca5f38 Driver        usbuhci
         8641bb28 Driver        mouhid
         865e5860 Driver        Win32k
         86cabb68 Driver        VMnetuserif
     12  869c0bf8 Driver        VMnetBridge
         85de4d30 Driver        usbhub
         85d14f38 Driver        swenum
         85d1dcd0 Driver        rdpdr
         85b93ad0 Driver        tunnel
     13  861ec740 Driver        RDPCDD
         85ce6ac0 Driver        RasPppoe
         86a378b0 Driver        HTTP
     14  85d94030 Driver        TermDD
         85be6880 Driver        MTsensor
     15  85ceac48 Driver        Rasl2tp
         84f01c78 Driver        JGOGO
     17  84b5c150 Driver        WUDFRd
         85cf1f38 Driver        umbus
         85ce5f38 Driver        VPCNetS2
     18  862c9cb8 Driver        Smb
         861a7f38 Driver        WlanUIG
         85d1df38 Driver        PptpMiniport
         85cf6760 Driver        Serenum
         85b0cb68 Driver        crcdisk
         84f0b750 Driver        CLFS
         840a3960 Driver        WMIxWDM
         840a3f38 Driver        ACPI_HAL
         86b0c680 Driver        secdrv
     19  84fda390 Driver        spldr
         869557b0 Driver        hcmon
     21  8695fe20 Driver        NativeWifiP
         862c9838 Driver        netbt
         85c449e0 Driver        AtcL001
         86b5ed40 Driver        tcpipreg
     22  861a8b50 Driver        RDPENCDD
         85c990d0 Driver        cdrom
         85d14e40 Driver        mssmbios
         85cea8d8 Driver        iScsiPrt
         84e3f668 Driver        pciide
     23  869d8830 Driver        rspndr
         863392e8 Driver        tdx
     24  84f6ff38 Driver        fvevol
         861e5998 Driver        Tcpip
         8694ce90 Driver        mpsdrv
     25  84fbbab8 Driver        volsnap
         862ab030 Driver        nsiproxy
         84ebbdd8 Driver        volmgr
     26  85c7dcb0 Driver        intelppm
     27  869d2030 Driver        lltdio
         8645f580 Driver        ZSMC301b
         86329578 Driver        Wanarpv6
     28  86158150 Driver        Null
         85be0758 Driver        usbehci
     29  8541e2a0 Driver        disk
         862d7200 Driver        CSC
         84ebb380 Driver        pci
     30  84fda498 Driver        partmgr
         85cdc8c8 Driver        Serial
         85d1d030 Driver        NdisTapi
         85d92ec0 Driver        NdisWan
     31  862e3568 Driver        vmm
         85c429e0 Driver        HDAudBus
         85c85f38 Driver        DXGKrnl
     32  840513e0 Driver        ACPI
         84dd6710 Driver        Wdf01000
         869d4030 Driver        vmx86
     33  840a2300 Driver        PnpManager
     34  8470c9a0 Driver        PROCEXP111
         869da840 Driver        Ndisuio
         8633f890 Driver        AFD
         85be29e0 Driver        nvlddmkm
     35  86409b88 Driver        HidUsb
         868aa768 Driver        vstor2
     36  85cdcca0 Driver        i8042prt
16.0: kd>

下面给出 dump 文件头格式给大家参考:

typedef struct _DUMP_HEADER32 /* sizeof = 0x1000 */
{
/* 000 */   ULONG       ulSignature;
/* 004 */   ULONG       ulValidDump;
/* 008 */   ULONG       ulMajorVersion;
/* 00C */   ULONG       ulMinorVersion;
/* 010 */   ULONG       ulDirectoryTableBase;
/* 014 */   ULONG       ulPfnDataBase;
/* 018 */   PLIST_ENTRY PsLoadedModuleList;
/* 01C */   PLIST_ENTRY PsActiveProcessHead;
/* 020 */   ULONG       ulMachineImageType;
/* 024 */   ULONG       ulNumberProcessors;
/* 028 */   ULONG       ulBugCheckCode;
/* 02C */   ULONG       ulBugCheckParameter1;
/* 030 */   ULONG       ulBugCheckParameter2;
/* 034 */   ULONG       ulBugCheckParameter3;
/* 038 */   ULONG       ulBugCheckParameter4;
/* 03C */   char        szVersionUser[32];
/* 05C */   BOOLEAN     bPaeEnabled;
/* 05D */   UCHAR       uchKdSecondaryVersion;
/* 05E */   char        chUnused1[2];
/* 060 */   ULONG       ulKdDebuggerDataBlock;
/* 064 */   PHYSICAL_MEMORY_DESCRIPTOR  stPhysMemDesc;
/* 074 */   char        chUnused2[684];
/* 320 */   CONTEXT     stContext;
/* 5EC */   char        chUnused3[484];
/* 7D0 */   EXCEPTION_RECORD32  stExceptionRecord;
/* 820 */   char        szComment[1896];
/* F88 */   ULONG       ulDumpType;
/* F8C */   ULONG       ulMiniDumpFields;
/* F90 */   ULONG       ulSecondaryDataState;
/* F94 */   ULONG       ulProductType;
/* F98 */   ULONG       ulSuiteMask;
/* F9C */   ULONG       ulWriterStatus;
/* FA0 */   ULONG64     ulFileSize;
/* FA8 */   char        chUnused4[16];
/* FB8 */   ULONG64     ulSystemUptime;
/* FC0 */   ULONG64     ulDebugSessionTime;
/* FC8 */   char        chUnused5[56];
} DUMP_HEADER32, *PDUMP_HEADER32;

这里还有一篇文章介绍了 dump 文件格式:

http://wasm.ru/article.php?article=dmp_format
 
《Sysinternals实战指南》进程和诊断工具学习笔记(8.16):LiveKd 入门——在线内核调试,不重启不蓝屏 LiveKd 让你在一台运行中的 Windows 系统上,使用标准内核调试器(WinDbg / KD),像调试“活系统”一样观察它的真实内核状态。“不是我们的业务服务吃内存,是某个第三方内核驱动(tag ‘ABCD’)把非分页池吃满了,需要联系厂商修复。但内部实现上更像是:“对当前系统的内存进行一个‘冻结观察窗口’”,而不是让调试器真正接管内核现场并挂起全机。从现场管控角度,LiveKd = 在生产系统上“读取内核内部状态”,属于高敏操作。 阅读详情

相关推荐

win11本地部署openclaw实操第1集

OpenClaw 是一款开源、本地优先、可自托管的 AI 智能体(AI Agent)网关 / 自动化框架,核心是让 AI 从 “只聊天、给建议” 变成 “能在你电脑上真做事” 的数字助手。

weixin_44626085的博客 7126

关于抓java的dump中live参数

我们经常需要查看内存中的一些变量的值,来定位生产环境的问题。一般会使用jmap来抓dump,在抓dump的时候,我们会把堆全部扒下来: jmap -dump:format=b,file=path pid 然后会生成一个几百M的包,让运维人员从生产环境拖下来再传给你,然后你用jvisualvm打开,等你打开这个dump的时候,看到你想看的内存的时候,基本上半天时间已经过去了。 其实...

黄湘龙的技术博客 847

Windows 11任务管理器隐藏技能:一眼揪出内存泄漏的“元凶”(分页/非分页缓冲池详解)

本文详细介绍了Windows 11任务管理器中隐藏的分页缓冲池和非分页缓冲池功能,帮助用户精准定位内存泄漏问题。通过启用隐藏列、解读数据异常信号,并结合实战案例和高级工具推荐,为开发者和IT运维人员提供了高效的内存问题诊断与解决方案。

weixin_29284885的博客 623

IBMV7000存储后台命令详解

IBMV7000存储干货分享

T___mac的博客 6317

CANFD升级踩坑实录:DBC转换时DLC大于8的信号怎么处理?

本文详细探讨了CANFD升级过程中DLC大于8的信号处理问题,提供了工程化解决方案和AutoSar BSW层配置要点。通过分析CAN与CANFD的DLC本质差异,提出信号拆分重组、DLC重映射和协议层适配三种策略,并给出验证与测试方案,帮助开发者避免数据截断和通信故障。

weixin_42521843的博客 228

一文搞懂雷达脉冲压缩和匹配滤波器

为了解决传统单频脉冲雷达面临的作用距离和空间分辨力之间的矛盾,脉冲压缩理论被提出。在接收端设计一个和发射信号能够“共轭匹配”的网络来实现脉冲压缩。接收到的回波信号通过匹配滤波器时,滤波器的增益在信号越强的频率点越大;在信号越弱的频率点,增益越小,通过这样的方式使信号在时域更加集中。脉冲压缩技术大致可分为线性调频(LFM)和相位编码。其中LFM信号易于通过硬件或各种技术产生,但是进行匹配滤波后主旁瓣比高达13.2dB,在检测多个目标时,强目标的回波旁瓣可能会把弱小信号覆盖,导致弱小信号的检测受到影响。

FPGA入门到跑路 9935

windows的dmp文件使用

windows出现蓝屏后都会产生dmp文件,它记录windows蓝屏时的内存信息。 1、快速定位引起崩溃的文件 dmp文件的查看用Debugging Tools for Windows (x86)及windbg工具,从下面地址下载 http://msdn.microsoft.com/en-us/windows/hardware/gg463009.aspx 下载安装后,启动 Debuggin

东子的博客 1万+

用群辉NAS打造影视墙(Jellyfin篇)

之前的文章提到过,用群辉NAS组建影视播放系统可以采用官方提供的Video Station套件,不过影视信息配比较差,响应速度也欠佳,今天我们就聊聊别的套件。在影音媒体方面,常见的还有Emby、Plex、Jellyfin。本文主讲Jellfin的原因是它胜在免费,而且功能比较齐全,完全够用。详细信息可以参考Jellyfin的官网:https://jellyfin.org/

dgnankai的专栏 7323

中文windbg帮助文档

http://www.dbgtech.net/ 翻译文档WinDbg 帮助中文翻译 (强烈推荐)博客 (原创技术文章)论坛 (欢迎进论坛讨论技术问题)原创软件WinDbg 6.9.3汉化版三个字符串内码工具LiveDump - 本机动态生成完整内核 dump 文件VistaLKD - 动态开启 vista 系统本机内核调试功能两个IDA插件,分别用于向IDA

狼窝 7890

以 DeleteRestrictions 与 inlineDelete 为核心的 Fiori Elements 表格删除机制全解

SAP Fiori elements 中删除操作的设计与实现涉及多维度考量。框架默认依据 OData 元数据判断删除能力,通过 DeleteRestrictions 注解实现行级条件控制(deletable-path)。表格支持两种删除模式:工具栏集中删除与响应式表格行内删除,但二者不建议混用。关键约束包括:行内删除仅适用于 Responsive Table,且与多选功能互斥。配置需遵循三层架构:后端能力注解、前端表格形态和运行时交互。设计上强调禁用优于隐藏的可用性原则,并需保持列表页与对象页的删除体验一致

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 153

一文吃透 SAP HANA JSON Document Store:从架构到实战的完整指南

本文详细介绍了SAP HANA的JSON Document Store功能,包括其定位、架构、典型场景以及具体使用方法。文章首先分析了半结构化数据场景下传统关系模型的局限性,说明Document Store如何通过集合(Collection)存储JSON文档来提供灵活性。随后详细阐述了启用方式、SQL语法、与Column Store的联动机制,并提供了大量可直接复用的实战案例。特别强调了Document Store作为HANA内建服务的优势,包括企业级一致性、备份恢复等能力。最后给出了数据类型处理和跨引擎协

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 200

AIX 6.1新功能 之RAS,虚拟化,存储及文件系统,网络增强,参数调整 (转帖)

AIX 6.1新功能 之RAS AIX 6.1在高可用性等方面添加了如下特性:   1、RAS组件框架   •RTEC(Run-Time Error Checking) 可以对系统硬、软件故障进行检测   •CT (Component Tracing) 用于在系统跟踪时额外的更细致的过滤   •CD (Component Dump) 对Dump进行增强,可细...

iteye_2298的博客 688

Debezium系列之:使用指定值替代指定字段的值

Debezium系列之:使用指定值替代指定字段的值

zhengzaifeidelushang的博客 306

jetson-inference 自定义图像分类数据集采集指南:使用 camera-capture 从零构建 PyTorch 训练集

本文是 jetson-inference 项目中「Hello AI World」PyTorch 迁移学习系列的一环(对应文档 [docs/pytorch-collect.md](https://link.gitcode.com/i/98be3760eb91bbff91c19b9aa99c0197)),系统讲解如何在 Jetson 上用 `camera-capture` 工具从实时视频中采集、标注自

gitblog_01152的博客 380

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Files 文件管理器:免费开源,把多标签页带进 Windows 文件管理

Files 文件管理器是一款免费开源的 Windows 文件管理工具,用多标签页、双窗格和侧边栏云盘,替代资源管理器的日常文件操作。 ## Files 文件管理器解决了什么 Windows 资源管理器是单窗口的:打开第三个文件夹就得 Alt+Tab 来回切,云盘要开自己的客户端,批量重命名靠第三方工具。Files 把标签栏、侧边栏和预览窗格做进了主窗口——文件夹开成标签页,OneDrive 和

gitblog_00678的博客 937

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Flet LaunchMode 完全指南:用 Python 精确控制 URL 的打开方式

> **导读**:`flet.LaunchMode` 是 Flet 中用于声明"URL 应以何种方式打开"的枚举类型,配合 `UrlLauncher` 服务使用,可让 Python 开发者在不写任何前端代码的前提下,精确控制链接是在应用内 WebView、应用内浏览器视图(如 Custom Tabs)、外部浏览器还是外部非浏览器应用中打开。阅读本文后,你将掌握五种枚举值的语义与适用场景、`laun

gitblog_00785的博客 883

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

gdb调试coredump(使用篇)

什么是coredump Coredump叫做核心转储,它是进程运行时在突然崩溃的那一刻的一个内存快照。操作系统在程序发生异常而异常在进程内部又没有被捕获的情况下,会把进程此刻内存、寄存器状态、运行堆栈等信息转储保存在一个文件里。 该文件也是二进制文件,可以使用gdb、elfdump、objdump或者windows下的windebug、solaris下的mdb进行打开分析里面的具体内容。 注:core是在半导体作为内存材料前的线圈,当时用线圈当做内存材料,线圈叫做core。用线圈...

eydwyz的专栏 1350

本地内核调试神器 —— livekd 使用总结

说明:本文很早就发布在我的博客上了,当时总结的有些问题,本次重新整理完善后再次发布。前言 有时候我们非常想知道当前系统内核的一些状态,比如查看当前系统加载了哪些驱动,查看某个进程外 CO...

1768

如何使用Kdrill检测Windows内核中潜在的rootkit

Kdrill可以访问物理内存并解码/重建操作系统内部结构来探索它们并验证它们的完整性,并能够执行以下检查:1、已加载模块列表2、内存代码中的驱动程序3、内核对象和内部 ntoskrnl 列表的回调4、即插即用树和过滤器5、内核类型回调6、FltMgr 回调7、KTimers DPC 函数8、IRP 驱动程序表9、驱动程序使用回调签名全局变量10、NDIS 筛选器和回调NDIS filters and callbacks11、NetIO/FwpkCLNT 过滤调度。

FreeBuf_的博客 1389

LiveKd v5.31 在本机调试内核

LiveKd v5.31 By Mark Russinovich Published: December 19, 2013 Download LiveKd (266 KB) Rate:   Share this content            

justin_bkdrong的专栏 1012

[原]livekd使用问题记录

sysinternal suite中的livekd.exe可谓神器。可以用来观察本地内核的一些状态,当然抓内核dump再合适不过了。 在使用livekd的时候遇到了一些问题,现总结如下: 使用livekd进行本地内核调试,需要管理员权限,这个没啥好说的。 livekd需要内核文件的调试符号的支持,可以先下载好对应的pdb,也可以设置符号路径信息,让livekd...

336

livekd的使用

livekd的使用偶尔需要使用livekd,常常忘了该怎么使用。这次使用成功了,赶快将配置步骤写下来,备忘。1.下载livekd.下面是它的网站:http://www.microsoft.com/china/technet/sysinternals/utilities/LiveKd.mspx2.下载并安装WINDBGhttp://www.microsoft.com/whdc/devto

misterliwei的专栏 7137

LiveKd用来在单机上实现Windbg内核调试

  前段时间用Windbg进行内核调试,用VMWare构建虚拟机组建双机环境~安装完后复杂的配置,漫长的启动过程真是一种折磨,配置完却不能在Winxp上建立虚拟环境,一查原因,我狂晕:Ghost安装的Xp不能建立虚拟机!只有用本地内核调试,但有诸多限制!  昨晚整理一些编程资料时,偶然在罗云彬的Kmd中文教程:[Kmd教程1-内核模式驱动程序基础~驱动程序的调试]看到:“你也可以使用Micro

king_xing的专栏 4500
上一篇: MS08-025 win32k.sys NtUserFnOUTSTRING Privilege Escalation Exploit
下一篇: QQ登录协议分析图
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值