从Windows用户模式转储文件中标识主机

从Windows用户模式转储文件中标识主机,windows,debugging,crash-dumps,Windows,Debugging,Crash Dumps,有没有一种简单的方法可以找到通过WinDbg生成用户模式转储文件的计算机的主机名 或至少任何一段标识信息,以尝试并确认两个转储文件来自同一系统。来自debugger.chm: 在内核模式转储文件中查找计算机名 如果需要确定进行崩溃转储的计算机的名称,可以使用!peb扩展并查找COMPUTERNAME的值,将其命名为其输出 也可以使用以下命令: 0: kd> x srv!SrvComputerName be8ce2e8 srv!SrvComputerName = _UNICODE_STR

有没有一种简单的方法可以找到通过WinDbg生成用户模式转储文件的计算机的主机名

或至少任何一段标识信息,以尝试并确认两个转储文件来自同一系统。

来自debugger.chm:

在内核模式转储文件中查找计算机名

如果需要确定进行崩溃转储的计算机的名称,可以使用!peb扩展并查找COMPUTERNAME的值,将其命名为其输出

也可以使用以下命令:

0: kd> x srv!SrvComputerName
be8ce2e8  srv!SrvComputerName  = _UNICODE_STRING "AIGM-MYCOMP-PUB01"
在内核模式转储文件中查找IP地址

要确定进行崩溃转储的计算机的IP地址,请查找显示某些发送/接收网络活动的线程堆栈。打开其中一个发送数据包或接收数据包。IP地址将在该数据包中可见

编辑:我会注意到,根据转储文件的创建方式,PEB信息可能不可用,因此您无法始终找到计算机名。特别是如果有东西通过微软Winqual网站进入,它已经被消毒了


使用PEB中环境变量的快捷方式:!envvar COMPUTERNAME

您可以通过使用WinDbg分析用户转储文件来执行此操作。运行
!peb
命令并在其输出中查找
COMPUTERNAME
的值。

IP地址列表:
3:kd>du poi(poi(srvnet!SrvAdminIpAddressList))
ffffe001
d3d58450“127.0.0.1”
3:kd>du
ffffe001
d3d58464::1“
3:kd>
ffffe001
d3d5846c“169.254.66.248”
3:kd>
ffffe001
d3d5848a”“
3:kd>
ffffe001
d3d5848c“fe80::f0cb:5439:f12f:42f8”
3:kd>
ffffe001
d3d584c0”“
3:kd> ffffe001
d3d584c2“192.168.104.249”
3:kd>
ffffe001
d3d584e2”“
3:kd>
ffffe001`d3d584e4“fe80::fc6f:ae16:b336:83dc”

3:kd>

在内核和用户模式下

10: kd> !envvar COMPUTERNAME
COMPUTERNAME = a-host-name
检索目标PC的计算机名或主机名

它需要加载
EXTS.dll
扩展名和Windows XP+(编写时为W10 RS3)

在内核模式下,这不能直接工作,
!envvar
将返回空值

10: kd> !peb
PEB NULL...
当前上下文是一个空闲线程

WinDbg(Windows 10 RS3 16299.15 SDK)帮助,用于
!进程
只列出位0-4,但我发现位5在与0和4一起使用时会转储整个环境。标志=
0b110001
。因此,我在WinDbg启动脚本期间使用该脚本自动记录计算机名

!process 0 0x31 wininit.exe
将转储所有环境变量:

10: kd> !process 0 0x31 wininit.exe
PROCESS ffffc485c82655c0
    SessionId: 0  Cid: 02d0    Peb: 8d04c6b000  ParentCid: 0258
    DirBase: 40452f000  ObjectTable: ffffe30b1150fb40  HandleCount: 163.
    Image: wininit.exe
    VadRoot ffffc485c862b990 Vads 61 Clone 0 Private 326. Modified 12. Locked 2.
    DeviceMap ffffe30b0a817880
    Token                             ffffe30b1150f060
    ElapsedTime                       00:00:18.541
    UserTime                          00:00:00.000
    KernelTime                        00:00:00.015
    QuotaPoolUsage[PagedPool]         121696
    QuotaPoolUsage[NonPagedPool]      11448
    Working Set Sizes (now,min,max)  (1750, 50, 345) (7000KB, 200KB, 1380KB)
    PeakWorkingSetSize                1697
    VirtualSize                       2097239 Mb
    PeakVirtualSize                   2097239 Mb
    PageFaultCount                    2104
    MemoryPriority                    BACKGROUND
    BasePriority                      13
    CommitCharge                      470

    PEB at 0000008d04c6b000            
    InheritedAddressSpace:    No
    ReadImageFileExecOptions: No
    BeingDebugged:            No
    ImageBaseAddress:         00007ff7be3d0000
    Ldr                       00007ff8dff4f3a0
    Ldr.Initialized:          Yes
    Ldr.InInitializationOrderModuleList: 000001be470e1c10 . 000001be47128d60
    Ldr.InLoadOrderModuleList:           000001be470e1d80 . 000001be47128d40
    Ldr.InMemoryOrderModuleList:         000001be470e1d90 . 000001be47128d50
                    Base TimeStamp                     Module
            7ff7be3d0000 600d94df Jan 24 10:40:15 2021 C:\Windows\system32\wininit.exe
            7ff8dfdf0000 493793ea Dec 04 03:25:14 2008 C:\Windows\SYSTEM32\ntdll.dll
...
    SubSystemData:     0000000000000000
    ProcessHeap:       000001be470e0000
    ProcessParameters: 000001be470e1460
    CurrentDirectory:  'C:\Windows\system32\'
    WindowTitle:  '< Name not readable >'
    ImageFile:    'C:\Windows\system32\wininit.exe'
    CommandLine:  'wininit.exe'
    DllPath:      '< Name not readable >'
    Environment:  000001be47104460
        ALLUSERSPROFILE=C:\ProgramData
        CommonProgramFiles=C:\Program Files\Common Files
        CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
        CommonProgramW6432=C:\Program Files\Common Files
        COMPUTERNAME=a-host-name
        ComSpec=C:\Windows\system32\cmd.exe
        NUMBER_OF_PROCESSORS=16
        OS=Windows_NT
        Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\
        PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
        PROCESSOR_ARCHITECTURE=AMD64
        PROCESSOR_IDENTIFIER=AMD64 Family 23 Model 1 Stepping 1, AuthenticAMD
        PROCESSOR_LEVEL=23
        PROCESSOR_REVISION=0101
        ProgramData=C:\ProgramData
        ProgramFiles=C:\Program Files
        ProgramFiles(x86)=C:\Program Files (x86)
        ProgramW6432=C:\Program Files
        PSModulePath=%ProgramFiles%\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
        PUBLIC=C:\Users\Public
        SystemDrive=C:
        SystemRoot=C:\Windows
        TEMP=C:\temp
        TMP=C:\temp
        USERNAME=SYSTEM
        USERPROFILE=C:\Windows\system32\config\systemprofile
        windir=C:\Windows
10:kd>!进程0 0x31 wininit.exe
过程ffffc485c82655c0
会话ID:0 Cid:02d0 Peb:8d04c6b000家长Cid:0258
DirBase:40452f000 ObjectTable:ffffffe30b1150fb40 HandleCount:163。
图像:wininit.exe
VadRoot FFC485C862B990 Vads 61克隆0专用326。修改12。锁定2。
设备映射ffffe30b0a817880
令牌ffffe30b1150f060
ElapsedTime 00:00:18.541
用户时间00:00:00.000
内核时间00:00:00.015
QuotaPolusage[PagedPool]121696
QuotaPolusage[NonPagedPool]11448
工作集大小(现在,最小值,最大值)(1750,50,345)(7000KB,200KB,1380KB)
PeakWorkingSetSize 1697
虚拟化2097239 Mb
PeakVirtualSize 2097239 Mb
页面错误计数2104
记忆优先背景
基本优先事项13
佣金470
PEB为000000 8D04C6B000
InheritedAddressSpace:否
ReadImageFileExecOptions:否
正在调试:没有
ImageBaseAddress:00007ff7be3d0000
Ldr 00007ff8dff4f3a0
Ldr.Initialized:是
Ldr.InInitializationOrderModuleList:000001be470e1c10。00000 1BE47128D60
Ldr.InLoadOrderModuleList:000001be470e1d80。00000 1BE47128D40
Ldr.INMemoryDermoduleList:000001be470e1d90。00000 1BE47128D50
基本时间戳模块
7ff7be3d0000 600d94df Jan 24 10:40:15 2021 C:\Windows\system32\wininit.exe
7ff8dfdf0000 493793ea Dec 04 03:25:14 2008 C:\Windows\SYSTEM32\ntdll.dll
...
子系统数据:0000000000000000
ProcessHeap:000001be470e0000
工艺参数:00000 1BE470E1460
当前目录:“C:\Windows\system32”
WindowTitle:“”
图像文件:“C:\Windows\system32\wininit.exe”
命令行:“wininit.exe”
DllPath:“”
环境:000001be47104460
ALLUSERSPROFILE=C:\ProgramData
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\ProgramFiles(x86)\CommonFiles
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=a-host-name
ComSpec=C:\Windows\system32\cmd.exe
处理器的数量=16
OS=Windows\u NT
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\
PATHEXT=.COM;。EXE;。蝙蝠;。CMD;。VBS;。VBE;。JS;。JSE;。WSF;。WSH;。移动交换中心
处理器体系结构=AMD64
处理器_标识符=AMD64系列23型号1第1步,MD
处理器_级别=23
处理器\u版本=0101
ProgramData=C:\ProgramData
ProgramFiles=C:\ProgramFiles
程序文件(x86)=C:\Program Files(x86)
ProgramW6432=C:\Program Files
PSModulePath=%ProgramFiles%\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
PUBLIC=C:\Users\PUBLIC
SystemDrive=C:
SystemRoot=C:\Windows
温度=C:\TEMP
TMP=C:\temp
用户名=系统
USERPROFILE=C:\Window