首页
社区
课程
招聘
[旧帖] [求助]逆向中_DEVICE_OBJECT结构体对应 0.00雪花
发表于: 2010-3-21 05:45 968

[旧帖] [求助]逆向中_DEVICE_OBJECT结构体对应 0.00雪花

2010-3-21 05:45
968
代码:
其中DeviceObject是创建的 fdo ,edi是pdo,将fdo附加在pdo上以后出现如下代码

mov     eax, [ebp+DeviceObject]
mov     ecx, [ebp+var_40C]            ;var_40C=0FFFFFFFFh
mov     [esi], eax
mov     eax, [ebp+Handle]
mov     [esi+4], edi         
mov     dword ptr [esi+18h], 1
mov     [esi+1Dh], bl
mov     [esi+1Eh], bl
mov     [esi+1Ch], bl
mov     [esi+20h], ecx
mov     [esi+24h], eax


问题是 这些esi+xx分别代表什么?
结构体如下,其中esi+18h,esi+20h,esi+24h都能对应上,可是别的是对应什么呢

查看结构体
kd> dt nt!_DEVICE_OBJECT
   +0x000 Type             : Int2B
   +0x002 Size             : Uint2B
   +0x004 ReferenceCount   : Int4B
   +0x008 DriverObject     : Ptr32 _DRIVER_OBJECT
   +0x00c NextDevice       : Ptr32 _DEVICE_OBJECT
   +0x010 AttachedDevice   : Ptr32 _DEVICE_OBJECT
   +0x014 CurrentIrp       : Ptr32 _IRP
   +0x018 Timer            : Ptr32 _IO_TIMER
   +0x01c Flags            : Uint4B
   +0x020 Characteristics  : Uint4B
   +0x024 Vpb              : Ptr32 _VPB
   +0x028 DeviceExtension  : Ptr32 Void
   +0x02c DeviceType       : Uint4B
   +0x030 StackSize        : Char
   +0x034 Queue            : __unnamed
   +0x05c AlignmentRequirement : Uint4B
   +0x060 DeviceQueue      : _KDEVICE_QUEUE
   +0x074 Dpc              : _KDPC
   +0x094 ActiveThreadCount : Uint4B
   +0x098 SecurityDescriptor : Ptr32 Void
   +0x09c DeviceLock       : _KEVENT
   +0x0ac SectorSize       : Uint2B
   +0x0ae Spare1           : Uint2B
   +0x0b0 DeviceObjectExtension : Ptr32 _DEVOBJ_EXTENSION
   +0x0b4 Reserved         : Ptr32 Void

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//