逗游網(wǎng):值得大家信賴的游戲下載站!
發(fā)布時(shí)間:2012-03-28 19:01 來源:互聯(lián)網(wǎng) 作者:佚名
管理員模式運(yùn)行CMD進(jìn)入DOS模式,輸入"bcdedit /set nx OptIn"(雙引號(hào)內(nèi)文字),然后重啟計(jì)算機(jī)。
DEP的安全機(jī)制
DEP(Data Execution Prevention)即“數(shù)據(jù)執(zhí)行保護(hù)”,這是Windows的一項(xiàng)安全機(jī)制,主要用來防止病毒和其他安全威脅對(duì)系統(tǒng)造成破壞。微軟從Windows XP SP2引入了該技術(shù),并一直延續(xù)到此后的Windows Server 2003、Windows Server 2008中。毫無例外,在Windows 7中DEP也作為一項(xiàng)安全機(jī)制被引入進(jìn)來。本文將對(duì)Windows 7下的DEP進(jìn)行一番解析。
1、DEP的安全機(jī)制
可以說,溢出是操作系統(tǒng)(應(yīng)用軟件)永遠(yuǎn)的痛,Windows 7自然也不例外。所謂溢出主要指緩沖區(qū)溢出,就是利用系統(tǒng)(應(yīng)用軟件)漏洞從只有Windows和其他程序可以使用的內(nèi)存位置執(zhí)行惡意代碼從而達(dá)到控制系統(tǒng)的目的。如前所述,緩沖區(qū)溢出攻擊經(jīng)常在其它程序的內(nèi)存緩沖區(qū)寫入可執(zhí)行的惡意代碼,然后誘騙程序執(zhí)行惡意代碼。使用DEP的目的是阻止惡意插入代碼的執(zhí)行,其運(yùn)行機(jī)制是,Windows利用DEP標(biāo)記只包含數(shù)據(jù)的內(nèi)存位置為非可執(zhí)行(NX),當(dāng)應(yīng)用程序試圖從標(biāo)記為NX的內(nèi)存位置執(zhí)行代碼時(shí),Windows的DEP邏輯將阻止應(yīng)用程序這樣做,從而達(dá)到保護(hù)系統(tǒng)防止溢出。
2、DEP的實(shí)現(xiàn)方式
微軟DEP實(shí)現(xiàn)采用了兩種方式,即硬件強(qiáng)制DEP和軟件強(qiáng)制DEP。硬件強(qiáng)制DEP,這需要處理器的支持,不過現(xiàn)在大多數(shù)處理器是支持DEP的。軟件強(qiáng)制DEP,這是由Windows操作系統(tǒng)在系統(tǒng)內(nèi)存中為保存的數(shù)據(jù)對(duì)象自動(dòng)添加的一組特殊指針提供。如何知道自己的處理器是否支持DEP呢?右鍵單擊桌面上的“計(jì)算機(jī)”圖標(biāo),選擇“屬性”,在打開的“系統(tǒng)”窗口中點(diǎn)擊“高級(jí)系統(tǒng)設(shè)置”鏈接打開“系統(tǒng)屬性”面板。在“高級(jí)”選項(xiàng)卡頁(yè)面中的“性能”下點(diǎn)擊“設(shè)置”打開“性能選項(xiàng)”面板。點(diǎn)擊“數(shù)據(jù)執(zhí)行保護(hù)”選項(xiàng)卡,在該頁(yè)面中我們可確認(rèn)自己計(jì)算機(jī)的處理器是否支持DEP。如果支持會(huì)在底部的一行顯示“你的計(jì)算機(jī)處理器支持基于硬件的DEP。”,反之會(huì)顯示“你的計(jì)算機(jī)處理器不支持基于硬件的DEP,不過,Windows能使用DEP軟件防止一些類型的攻擊?!?圖1)
3、DEP的運(yùn)行級(jí)別
在Windows 7中,DEP默認(rèn)是激活的。不過,DEP不能保護(hù)系統(tǒng)中所有運(yùn)行的應(yīng)用程序,實(shí)際DEP能夠保護(hù)的程序列表由DEP的保護(hù)級(jí)別定義。DEP支持兩種保護(hù)級(jí)別:級(jí)別1,只保護(hù)Windows系統(tǒng)代碼和可執(zhí)行文件,不保護(hù)系統(tǒng)中運(yùn)行的其它微軟或第三方應(yīng)用程序;級(jí)別2,保護(hù)系統(tǒng)中運(yùn)行的所有可執(zhí)行代碼,包括Windows系統(tǒng)代碼和微軟或第三方應(yīng)用程序。默認(rèn)情況下,Windows 7的DEP運(yùn)行在級(jí)別1的保護(hù)狀態(tài)下。在“數(shù)據(jù)執(zhí)行保護(hù)”配置面板中,我們能夠設(shè)置DEP的保護(hù)級(jí)別。如圖所示筆者的Windows 7默認(rèn)“只為基本的Windows程序和服務(wù)激活了DEP”,即DEP保護(hù)級(jí)別為1。當(dāng)然,我們也可選擇“除了以下所選擇的,為所有程序和服務(wù)打開DEP” 切換到DEP保護(hù)級(jí)別2。
在保護(hù)級(jí)別Level 2可以選擇特定的應(yīng)用程序不受DEP保護(hù)。在實(shí)際應(yīng)用中,這個(gè)功能非常重要,因?yàn)橐恍├系膽?yīng)用程序在激活DEP時(shí)無法正常運(yùn)行。 例如,我我們?cè)谑褂肳ord進(jìn)行文本編輯時(shí),它會(huì)自動(dòng)被排除在DEP保護(hù)之外。需要注意的是,在將DEP保護(hù)切換到級(jí)別2之前,必須運(yùn)行應(yīng)用程序兼容性測(cè)試,確保所有的應(yīng)用程序在DEP激活時(shí)能正常運(yùn)行。從DEP中排除應(yīng)用程序, 需要在DEP配置頁(yè)面使用“添加”按鈕,將應(yīng)用程序的可執(zhí)行文件加入到排除列表中。(圖2)
除了上述方法外,我們還可以通過一個(gè)工具排除應(yīng)用程序的DEP保護(hù)。這個(gè)工具就是DisableNX,它是微軟應(yīng)用程序兼容性套件(Microsoft Application Compatibility Toolkit )中的一個(gè)工具,該套件的最新版本為5.5,大家可以訪問微軟官方網(wǎng)站下載獲得,下載地址是:http://www.microsoft.com/downloa ... 0-b45e-492dd6da2971。
該工具的使用比較簡(jiǎn)單,大家可根據(jù)命令幫助完成排錯(cuò)操作。
4、查看應(yīng)用程序是否受到DEP保護(hù)
在Windows 7中,我們?nèi)绾沃缿?yīng)用程序是否受到DEP保護(hù)呢?其實(shí),通過任務(wù)管理器我們可以查看到我們想要知道的信息。不過,默認(rèn)情況下Windows 7的任務(wù)管理器并不顯示應(yīng)用程序的DEP列,需要手動(dòng)操作將其調(diào)出來。在任務(wù)欄上單擊鼠標(biāo)右鍵選擇“啟動(dòng)任務(wù)管理器”,在Windows 任務(wù)管理器窗口中單擊“查看”菜單選擇“選擇列”,然后從選擇進(jìn)程頁(yè)列中找到并勾選“數(shù)據(jù)執(zhí)行保護(hù)”項(xiàng)即可。這樣就會(huì)在任務(wù)管理器中添加“數(shù)據(jù)執(zhí)行保護(hù)”列,在其下面我們可以看到進(jìn)程的DEP狀態(tài)(啟用或者停用)。筆者的Windows 7系統(tǒng)選擇的是級(jí)別1,可以看到所有的系統(tǒng)進(jìn)程進(jìn)程都是啟用了DEP保護(hù),而非系統(tǒng)進(jìn)程比如“WinRar”則DEP狀態(tài)為“停用”。不過,筆者這里要說明一下:雖然有些非系統(tǒng)的應(yīng)用程序,但其DEP狀態(tài)為“啟用”(比如筆者系統(tǒng)中運(yùn)行的“Windows 7優(yōu)化大師”),這是因?yàn)檫@些應(yīng)用程序在安裝過程中會(huì)創(chuàng)建并注冊(cè)成系統(tǒng)服務(wù),所以在Windows看來它也是系統(tǒng)進(jìn)程,當(dāng)然也就會(huì)執(zhí)行DEP保護(hù)。(圖3)
5、如何關(guān)閉DEP保護(hù)
需要提醒的是,當(dāng)DEP運(yùn)行在保護(hù)級(jí)別為2時(shí),由于需要在處理器和系統(tǒng)內(nèi)存運(yùn)行所有的DEP檢查,會(huì)影響系統(tǒng)性能,使得系統(tǒng)運(yùn)行將會(huì)變慢一些,所以在某些情況下我們可以考慮完全關(guān)閉DEP保護(hù)。我們知道在DEP設(shè)置面板中是不提供關(guān)閉DEP選項(xiàng)的,那如何關(guān)閉呢?如果是Vista以前的系統(tǒng),我們可以通過修改Boot.ini文件,在其中添加NoExecute=Always0ff語(yǔ)句來關(guān)閉。而在Windows Vista、Windows Server 2008和Windows 7中,boot.ini文件已經(jīng)被啟動(dòng)配置數(shù)據(jù)(Boot Configuration Data)即BCD文件所代替,不過我們可以使用微軟提供的命令行工具bcdedit.exe來編輯BCD文件。
我們?cè)诿钐崾痉逻\(yùn)行不帶有任何參數(shù)的bcedit命令,可以看到當(dāng)前的啟動(dòng)配置,如圖所示顯示了在Windows 7下運(yùn)行bcdedit的結(jié)果,其中最后一行顯示nx OptIn,表示當(dāng)前的DEP保護(hù)級(jí)別為1,如果顯示為OptOut則表示當(dāng)前的EDP保護(hù)級(jí)別為2。如果我們要關(guān)閉DEP,只需將nx設(shè)置為Always0ff即可。在命令行下執(zhí)行命令“bcdedit /set nx alwaysoff”,重啟系統(tǒng)后Windows 7的DEP就關(guān)閉了。反之,如果要開啟所有服務(wù)和應(yīng)用程序的DEP,執(zhí)行命令“bcdedit /set nx alwayson”就可以了。(圖4)
總結(jié):其實(shí)DEP并不是醫(yī)治Windows系統(tǒng)緩沖區(qū)溢出問題的萬能解藥,它的意義在于使得惡意軟件難以利用緩沖區(qū)溢出。而且DEP提供的緩沖區(qū)溢出保護(hù)也有一定的副作用,就是是被DEP阻止的應(yīng)用程序通常將被掛起,即使DEP停止了惡意程序執(zhí)行惡意代碼,但是這種情況為惡意程序啟動(dòng)DOS攻擊創(chuàng)造了新的機(jī)會(huì)。最后說明一點(diǎn),本文有關(guān)DEP的解析雖然以Windows 7為例,但大部分也適用于Windows Vista和Windows Server 2008。希望本文對(duì)于大家認(rèn)識(shí)DEP和理解Windows的安全機(jī)制有所幫助。
《罪惡都市》決定版數(shù)據(jù)在Steam后臺(tái)更新
《Apex英雄》日蝕戰(zhàn)斗通行證預(yù)告 全新傳說皮膚等
《霍格沃茨之遺》登上Steam愿望單排行榜榜首
《布蘭博:山丘之王》試玩Demo上線 2023年發(fā)售
《刀劍神域》“今日正式發(fā)售” 官方發(fā)布周年紀(jì)念禮盒
《七龍珠:破界斗士》公布賽季更新路線圖
《獵天使魔女3》通過NS模擬器 在PC上以4K/60幀運(yùn)行
《刺客信條:幻景》樂曲“Into the light”欣賞
《獵天使魔女3》首日更新 改進(jìn)防走光模式調(diào)整平衡
《生化危機(jī)8》云游戲版發(fā)售預(yù)告公布 今日登陸Switch
《榮譽(yù)勛章》PC 多人連線疑問解答
游戲地域《榮譽(yù)勛章》BETA聯(lián)機(jī)實(shí)錄
《榮譽(yù)勛章》全流程視頻攻略9-10關(guān)
《榮譽(yù)勛章》全流程視頻攻略7-8關(guān)
《榮譽(yù)勛章》全流程視頻攻略5-6關(guān)
03-08《榮譽(yù)勛章》全流程視頻攻略3-4關(guān)
03-08《榮譽(yù)勛章》全流程視頻攻略1-2關(guān)
03-08榮譽(yù)勛章--攻略全集總結(jié)
03-07《榮譽(yù)勛章》一級(jí)特勤部隊(duì)的神秘面紗-狼群
03-06榮譽(yù)勛章--種種讓人感動(dòng)的細(xì)節(jié)
03-06解謎探險(xiǎn)游戲《艾瑞克與破碎王國(guó)》6月30日正式發(fā)售
《午夜殺生重制版》吸血鬼獵人克里斯托夫預(yù)告片公開
《美國(guó)卡車模擬》新DLC“內(nèi)布拉斯加”公開發(fā)行日期
《開拓者:正義之怒》最終DLC假面之舞六月正式上線
復(fù)古動(dòng)作《GladMort》開啟眾籌 致敬經(jīng)典游戲魔界村
《東京料理》即將登陸Switch平臺(tái) 模擬經(jīng)營(yíng)壽司店
玩家自制《光環(huán)》大型戰(zhàn)役模式MOD 支持最多4人合作
Switch重制版《路易鬼屋2HD》開場(chǎng)動(dòng)畫視頻公開
Epic“喜加16”游戲名單曝出!最后一款為
馮驥發(fā)文表達(dá)TGA典禮感想 被部分國(guó)外玩家
雙人成行團(tuán)隊(duì)新作《幻裂奇境》開放預(yù)購(gòu)
《彩虹六號(hào)》國(guó)內(nèi)直播正式解禁 B站發(fā)布直
曝拉瑞安總監(jiān)斯溫并未陰陽(yáng)《黑神話》同
《仙劍奇?zhèn)b傳四》重制版公布 由虛幻引擎5
《FF7:重生》總監(jiān)喊話 尊重mod但不要制
《波斯王子》擊敗《黑神話》獲IGN年度最
《最終幻想7:重生》PC畫面對(duì)比PS5 女角
《黑神話:悟空》獲TGA兩個(gè)獎(jiǎng)項(xiàng) 中國(guó)外交