注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mie

 
 
 

日志

 
 

关于DEP数据执行保护机制的windows实现  

2012-01-29 20:19:44|  分类: sr |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

关于DEP数据执行保护机制的windows实现
        以xp/2003为例。(以下可能不完全准确)
        简单说一下windows的加载:BIOS——》MBR——》Ntldr(显示boot.ini的配置信息)——》ntoskrnl——》smss——》Winlogon、Lsass——》explorer。

         windows在ntoskrnl中、ntoskrnl.exe初始化时,根据之前用户在Ntldr中选择的启动配置,来初始化DEP的设置。对DEP的设置,大致有:
(1)对各个进程的设置(写到系统的全局共享内存区域)
设置分为可执行的EXECUTE(未保护的)和不可执行的NOEXECUTE(DEP保护的)。同时有“例外”和“包含”两种设置。2*2=共4种设置。
(2)CPU中寄存器的设置。对于开启了DEP的,需要设置CPU的相关标志位。

(3)对用户态的程序,在0x10000004非法访问的异常处理中,根据(1)中的设置,如果进程没有开启数据执行保护,则忽略异常。

(4)对内核态,开启可执行保护后,可能触发0x000000FC的错误。

第(2)步的设置,应该就是Intel 的DEP方案。而(1)应该是在Copy-On-Write的时候会用到的。(1)(2)的结果触发(3)(4)。

By: zhanyonhu

  评论这张
 
阅读(601)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016