DEP(Data Execution Prevention)即“数据执行保护”,这是Windows的一项安全机制,主要用来防止病毒和其他安全威胁对系统造成破坏。微软从Windows XP SP2引入了该技术,并一直延续到此后的Windows Server 2003、Windows Server 2008中。毫无例外,在Windows 7中DEP也作为一项安全机制被引入进来。本文将对Windows 7下的DEP进行一番解析。
1、DEP的安全机制
可以说,溢出是操作系统(应用软件)永远的痛,Windows 7自然也不例外。所谓溢出主要指缓冲区溢出,就是利用系统(应用软件)漏洞从只有Windows和其他程序可以使用的内存位置执行恶意代码从而达到控制系统的目的。如前所述,缓冲区溢出攻击经常在其它程序的内存缓冲区写入可执行的恶意代码,然后诱骗程序执行恶意代码。使用DEP的目的是阻止恶意插入代码的执行,其运行机制是,Windows利用DEP标记只包含数据的内存位置为非可执行(NX),当应用程序试图从标记为NX的内存位置执行代码时,Windows的DEP逻辑将阻止应用程序这样做,从而达到保护系统防止溢出。
2、DEP的实现方式
微软DEP实现采用了两种方式,即硬件强制DEP和软件强制DEP。硬件强制DEP,这需要处理器的支持,不过现在大多数处理器是支持DEP的。软件强制DEP,这是由Windows操作系统在系统内存中为保存的数据对象自动添加的一组特殊指针提供。如何知道自己的处理器是否支持DEP呢?右键单击桌面上的“计算机”图标,选择“属性”,在打开的“系统”窗口中点击“高级系统设置”链接打开“系统属性”面板。在“高级”选项卡页面中的“性能”下点击“设置”打开“性能选项”面板。点击“数据执行保护”选项卡,在该页面中我们可确认自己计算机的处理器是否支持DEP。如果支持会在底部的一行显示“你的计算机处理器支持基于硬件的DEP。”,反之会显示“你的计算机处理器不支持基于硬件的DEP,不过,Windows能使用DEP软件防止一些类型的攻击。”(图1)
3、DEP的运行级别
在Windows 7中,DEP默认是激活的。不过,DEP不能保护系统中所有运行的应用程序,实际DEP能够保护的程序列表由DEP的保护级别定义。DEP支持两种保护级别:级别1,只保护Windows系统代码和可执行文件,不保护系统中运行的其它微软或第三方应用程序;级别2,保护系统中运行的所有可执行代码,包括Windows系统代码和微软或第三方应用程序。默认情况下,Windows 7的DEP运行在级别1的保护状态下。在“数据执行保护”配置面板中,我们能够设置DEP的保护级别。如图所示笔者的Windows 7默认“只为基本的Windows程序和服务激活了DEP”,即DEP保护级别为1。当然,我们也可选择“除了以下所选择的,为所有程序和服务打开DEP” 切换到DEP保护级别2。
在保护级别Level 2可以选择特定的应用程序不受DEP保护。在实际应用中,这个功能非常重要,因为一些老的应用程序在激活DEP时无法正常运行。 例如,我我们在使用Word进行文本编辑时,它会自动被排除在DEP保护之外。需要注意的是,在将DEP保护切换到级别2之前,必须运行应用程序兼容性测试,确保所有的应用程序在DEP激活时能正常运行。从DEP中排除应用程序, 需要在DEP配置页面使用“添加”按钮,将应用程序的可执行文件加入到排除列表中。(图2)
除了上述方法外,我们还可以通过一个工具排除应用程序的DEP保护。这个工具就是DisableNX,它是微软应用程序兼容性套件(Microsoft Application Compatibility Toolkit )中的一个工具,该套件的最新版本为5.5,大家可以访问微软官方网站下载获得,下载地址是:http://www.microsoft.com/downloa ... 0-b45e-492dd6da2971。
该工具的使用比较简单,大家可根据命令帮助完成排错操作。
4、查看应用程序是否受到DEP保护
在Windows 7中,我们如何知道应用程序是否受到DEP保护呢?其实,通过任务管理器我们可以查看到我们想要知道的信息。不过,默认情况下Windows 7的任务管理器并不显示应用程序的DEP列,需要手动操作将其调出来。在任务栏上单击鼠标右键选择“启动任务管理器”,在Windows 任务管理器窗口中单击“查看”菜单选择“选择列”,然后从选择进程页列中找到并勾选“数据执行保护”项即可。这样就会在任务管理器中添加“数据执行保护”列,在其下面我们可以看到进程的DEP状态(启用或者停用)。笔者的Windows 7系统选择的是级别1,可以看到所有的系统进程进程都是启用了DEP保护,而非系统进程比如“WinRar”则DEP状态为“停用”。不过,笔者这里要说明一下:虽然有些非系统的应用程序,但其DEP状态为“启用”(比如笔者系统中运行的“Windows 7优化大师”),这是因为这些应用程序在安装过程中会创建并注册成系统服务,所以在Windows看来它也是系统进程,当然也就会执行DEP保护。(图3)
5、如何关闭DEP保护
需要提醒的是,当DEP运行在保护级别为2时,由于需要在处理器和系统内存运行所有的DEP检查,会影响系统性能,使得系统运行将会变慢一些,所以在某些情况下我们可以考虑完全关闭DEP保护。我们知道在DEP设置面板中是不提供关闭DEP选项的,那如何关闭呢?如果是Vista以前的系统,我们可以通过修改Boot.ini文件,在其中添加NoExecute=Always0ff语句来关闭。而在Windows Vista、Windows Server 2008和Windows 7中,boot.ini文件已经被启动配置数据(Boot Configuration Data)即BCD文件所代替,不过我们可以使用微软提供的命令行工具bcdedit.exe来编辑BCD文件。
我们在命令提示符下运行不带有任何参数的bcedit命令,可以看到当前的启动配置,如图所示显示了在Windows 7下运行bcdedit的结果,其中最后一行显示nx OptIn,表示当前的DEP保护级别为1,如果显示为OptOut则表示当前的EDP保护级别为2。如果我们要关闭DEP,只需将nx设置为Always0ff即可。在命令行下执行命令“bcdedit /set nx alwaysoff”,重启系统后Windows 7的DEP就关闭了。反之,如果要开启所有服务和应用程序的DEP,执行命令“bcdedit /set nx alwayson”就可以了。(图4)
总结:其实DEP并不是医治Windows系统缓冲区溢出问题的万能解药,它的意义在于使得恶意软件难以利用缓冲区溢出。而且DEP提供的缓冲区溢出保护也有一定的副作用,就是是被DEP阻止的应用程序通常将被挂起,即使DEP停止了恶意程序执行恶意代码,但是这种情况为恶意程序启动DOS攻击创造了新的机会。最后说明一点,本文有关DEP的解析虽然以Windows 7为例,但大部分也适用于Windows Vista和Windows Server 2008。希望本文对于大家认识DEP和理解Windows的安全机制有所帮助。
星际争霸怎么保护单位
使是跟随坦克也只是把集合点设在了坦克身上或它所在的区域,出生后会自己去那个地方,至于后来的坦克架到哪机器人走到哪要靠手动,要是让它不动攻击离自己近的敌人,就选中它按H键,如果说是保护坦克的话我觉得还是用雷车埋雷加雷车缠绕好,因为你产坦克要耗气,要是出机器人的话还要耗气,而且机器人对地攻击还不如相对便宜的雷车,如果想对空可以在坦克周边修防空,除非你知道了对手出了空中力量,要不然机器人的作用远不如雷车好,我总结起来就是要保护坦克就是雷车埋雷加缠绕,农民修防空还可以修修坦克。
生化危机4:【心得】Bio4视民如伤,保护乡民大作战
不知道各位pro的Bio达人有没有玩过"超简单模式"?不只敌人较少,反应超迟钝,武器弹药量和上限更是多到不像话(可能有人不知道)更重要的是敌人的攻击力大大减低,跟被蚊子叮没啥两样我前天开始尝试最少杀生过关,今天来跟大家报告一下条件:超简单模式 隐藏第二套服装(盔甲装) 第二轮(有充足闪光手榴弹)结果:进度 敌人 数量(理论最小值)1-1 开始阿伯 1(1) 1-2 无 0(0)1-3 湖之主 1(1)2-1 巨人 1(1)2-2 小屋战 30(30)2-3 猫缆阿伯 2(2)... 古城前卡车 4(4)3-1 杂鱼 1(0)... 金刚狼 1(1)3-2 红衣机枪男 1(1)3-3 无 0(0)3-4 Ashley保卫战 7(7)说明: 不轻易开枪,非必要不杀人。1-1农舍战直接躲在高塔五分鐘就好,汽油弹根本动不了你。 1-2会来自杀的乡民不少,像是1-2村庄充满了炸弹人,只要一到射程範围炸弹一丢就破功了(炸掉自己也炸掉别人>.<),所以路线要规划好,闪光手榴弹要充足,丢的时间要抓準。敌人很弱,被抓住最好让他摔,免得一反击就爆头。这裡我大概reset十几次才保护到所有乡民 2-2小屋战杀满30人才会过,不用开枪路易士一个人绰绰有余 2-3猫缆有两个阿伯会跳过来砍绳索,事前丢闪光也没用,看来是非杀不可了 打倒村长后开门会有卡车突袭,前面有叁个乡民会被撞死(好像也是非死不可),奇怪的是猫缆阿伯+村长+乡民+卡车司机应该有7人,但死亡只会算6人,所以头目级的敌人可能不列入计算...3-1砲台轰得天翻地覆!玩了几次每次都有一个教徒无辜被炸死,脑羞下不管了。然后大厅战可以引出一大票黒衣人来围殴你,但只要够小心还是可以不杀过关。3-2后面红衣机枪男最好是趁早解决,免得他出来扫射害人。3-4保卫狙击战,全灭7人才能启动剧情截止前半叁章敌人死亡数49(理论48)接下来后半...进度 敌人 死亡数(理论最小值)4-1 火龙船 1(1)4-1 爪男 1(1)4-2 双巨人 4(2)塬因不明?4-3 太空飞车 27(27)4-4 圆塔升降梯 16(?)5-1 防守据点 5(5)5-1 铁处女 1(1)5-2 卡车追逐战 16(0?)5-3 U3+克劳萨 2(2)5-4 战场+红巾卡片男 13(1) 4-1火龙船可以先在触动动画之前先打掉钢索就可以少杀两人,而打第叁隻火龙一定会牺牲一个教徒。然后双爪男房间,超简单只有一隻,不杀门打不开,开枪吧! 4-2矿坑很烦,炸弹人超多,点火药还可能把附近的乡民炸死。简单的方法是直接买火箭桶轰碎岩石省事。门后的双巨人不得不杀,但奇怪的是这一关我怎么打都会牺牲4人(理论只有双巨人两人),轰岩石时我很确定没有炸伤无辜...这一点我无解 4-3云霄飞车最后下场一定是乡民全灭27人(因为掉下去了),坚持不对乡民开枪的结果是滑车上坐满二十来位乘客动弹不得,最后要跳跃也变得非常困难(可以试试用狙击枪贯杀,一枪约可爆6~7人的头,爽~XD) 4-4升降梯坐满两人就会停止,所以得不断把教徒赶下去。一枪头部再踹一脚应该不会毙命,但掉下去就不知道了(无奈),因此最后一定是确定留一个不杀。这裡我打完死小孩死亡数是16... 5-1非常长~确定牺牲人数很困难。一开始潜入要塞躲开链砲男就是难关。我的方法是一遭遇立刻丢闪光,按雷射开关后回程再丢一颗;调完第一面镜子往下丢一颗;调整第二面镜子前后各丢一颗,然后赶紧离开。第二面有火箭兵和炸弹人,闪光牵制这两人直奔终点即可。进门后烤箱裡的火焰人巧妙避开赶紧进入下一个门他就不算死。防守据点有两个炸弹人叁个弩兵直接杀掉门才会开。接下来杀铁处女拿牢房卡片,幸运的话死六人就能结束这关 5-2卡车战,这很头痛,因为追来的卡车会把未上车的小兵压死,卡车爆炸后追撞也会波及部分在车上的小兵,所以很难估计一定有几人会死。我的方法是第一波小兵儘量不让他们上车(丢闪光使他跌下车),会有一部分会往回跑掉(?),其他就只好听天由命...我这裡损失16名小兵 5-4pro塬本来渡假的麦克这裡变得异常神勇!他要杀谁不是你能决定的,全力跑吧~我的路线是从右边下去,破门后右转登上第二砲台高台,开门触动链砲男动画后赶紧retry...下一区叁砲台,会互相攻击杀自己人,所以能跑多快就跑多快吧,吾救不了你>o<抢救大作战到此就结束了,最后大魔王杀了不算牺牲数,儘管开枪吧。最后的战场感觉如果是pro的话理论上是可以零死过关的(不过pro不杀人有可能过吗?)我的超简单模式一共牺牲135人,花了3小时41分,但愿你有更好的成绩~加油呗!fifa11 加速键保护球
去年底从实况叛变过来,玩FIFA11一直没发现加速键另一个功能是护球,特别是在前锋拿球后就一直按向前进,结果总是被对方后卫断下,后来发现前锋拿球后不按方向单按加速键的时候,球员会自觉做出背对防守球员护球的动作,这个时候可以把球分出去后,AI的跑位特别好,现在利用背身护球终于可以打出前锋回身拿球再组织的真实技战术组合了...另外有时可以依据形势来做出两种选择,一是按LB向前做想突破的动作,另一个选择就是按RT背身护球.. 另外在边锋拿球时也学会不要只往禁区传,在禁区后卫已经盯上的时候,可试一下用加速的线性功能做变身突破,也可以按LT小幅向后扣球把球导回边后卫再到中场慢慢组织. 还发现2过1的功能未必就是突破对方后防线,如果前锋的回球能力强,做过的2过1不一定是突破,他会做出一个空档给发动的球员进行远射,有时可以加按方向键不一定要回传到发动者脚下,而是传到另一边球员突破边路再传中,发动2过一的球员已经到**接应了! 建议初玩者在与电脑玩的同时多留意一下电脑AI是怎样护球处理球的,因为电脑的控球基本功比较合理,特别是带球传球都会有一些跑动才会做出,很少原地站着传球,建议多利用训练模式的11V11来演练一下,训练模式的电脑对手防守比较松,很利于训练带球,传球等配合..特别要多练习一些普通带球的技七巧,大部分人连2-3星的带球基本功都没活用,只会狂按加速在现实中不可能的情况下按传球键,这样很难玩好FIFA. FIFA11已经做到了很多真实比赛中可以做到的技战术配合了,初玩者有时只顾着猛突猛打未必真正能体会到FIFA11的优点,越来越期待FIFA12到来了!《喋血街头3》保护湿足妇女大战街头视频攻略
湿足妇女福利非高清大图:
更多相关内容请关注:喋血街头3:宣泄专区