zoukankan      html  css  js  c++  java
  • Dump文件数据存储格式(八)

    十、已卸载模块列表流(UnloadedModuleListStream)

    UnloadedModuleListStream流包含卸载模块的模块信息。跟随在ModuleListStream的后面。ModuleListStream相关信息如下:

    0x29c0+0n26680=0x91f8

    UnloadedModuleListStream相关信息如下:

    可知,UnloadedModuleListStream的RVA为0x91f8,所以它紧随在ModuleListStream的后面,大小为324字节。数据如下:

    这些数据按如下结构组织:

    首先是相当于头结构的_MINIDUMP_UNLOADED_MODULE_LIST,包含流的一些数据量

    typedef struct _MINIDUMP_UNLOADED_MODULE_LIST {
      ULONG32 SizeOfHeader;
      ULONG32 SizeOfEntry;
      ULONG32 NumberOfEntries;
    } MINIDUMP_UNLOADED_MODULE_LIST, *PMINIDUMP_UNLOADED_MODULE_LIST;

    成员如下:

    SizeOfHeader

    流的头数据的大小,以字节为单位。这通常是sizeof(MINIDUMP_UNLOADED_MODULE_LIST)。

    SizeOfEntry

    头后面的每个条目的大小(以字节为单位)。这通常是sizeof(MINIDUMP_UNLOADED_MODULE)。

    NumberOfEntries

    流中的条目数。这些通常是MINIDUMP_UNLOADED_MODULE结构。条目跟随头部。

    而MINIDUMP_UNLOADED_MODULE包含模块的相关信息,结构如下:

    typedef struct _MINIDUMP_UNLOADED_MODULE {
      ULONG64 BaseOfImage;
      ULONG32 SizeOfImage;
      ULONG32 CheckSum;
      ULONG32 TimeDateStamp;
      RVA     ModuleNameRva;
    } MINIDUMP_UNLOADED_MODULE, *PMINIDUMP_UNLOADED_MODULE;

    成员如下:

    BaseOfImage

    内存中模块可执行映像的基址。

    SizeOfImage

    内存中模块可执行映像的大小,以字节为单位。

    CheckSum

    模块可执行映像的校验和值。

    TimeDateStamp

    模块可执行映像的时间戳值,采用time_t格式。

    ModuleNameRva

    指定模块名称的MINIDUMP_STRING结构的RVA。比如:

  • 相关阅读:
    数据库(四)—— Redis数据库
    数据库——MySQL乐观锁与悲观锁
    Flask框架 (四)—— 请求上下文源码分析、g对象、第三方插件(flask_session、flask_script、wtforms)、信号
    centos7 php7 安装composer时Failed to decode zlib stream解决办法
    PHP 迭代器模式
    PHP 装饰器模式
    PHP 原型模式
    PHP 观察者模式
    PHP 策略模式
    PHP 适配器模式
  • 原文地址:https://www.cnblogs.com/yilang/p/13891906.html
Copyright © 2011-2022 走看看