首页
社区
课程
招聘
[求助]关于dep的ExecuteDisable标志
发表于: 2011-4-19 17:44 3125

[求助]关于dep的ExecuteDisable标志

2011-4-19 17:44
3125
在vs08编译选项中设置dep后,
#include<windows.h>

void main()
{
    char s[]="\x90\x90\x90\xc3";

        DWORD a;

        //VirtualProtect(s,6,PAGE_EXECUTE_READWRITE,&a);
        ((void (__stdcall*)())&s[0])();

}

像这样的代码确实被阻止了, 但当我用windbg open该exe文件时, 查看KPROCESS结构时,
ExecuteDisable和 ExecuteEnable 始终都为0(启用dep 和禁用dep都一样)

这是为什么? 不是说启用或禁用dep下面的两位标志必有一位为1吗?

+0x06c Flags            : _KEXECUTE_OPTIONS
      +0x000 ExecuteDisable   : 0y0
      +0x000 ExecuteEnable    : 0y0
      +0x000 DisableThunkEmulation : 0y1
      +0x000 Permanent        : 0y0
      +0x000 ExecuteDispatchEnable : 0y0
      +0x000 ImageDispatchEnable : 0y0
      +0x000 DisableExceptionChainValidation : 0y1
      +0x000 Spare            : 0y0
      +0x000 ExecuteOptions   : 0x44 'D'
   +0x06d Unused1          : 0x4f 'O'
   +0x06e IopmOffset       : 0x2053
   +0x070 Unused4          : 0x65646f6d

[课程]FART 脱壳王!加量不加价!FART作者讲授!

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