用EMET防范0day漏洞溢出攻擊
要說最恐怖的黑客攻擊是什么,答案肯定是緩沖區(qū)溢出攻擊。當(dāng)年Windows爆發(fā)RPC溢出漏洞后,網(wǎng)絡(luò)上每天有數(shù)百萬臺(tái)計(jì)算機(jī)被黑客入侵。黑客利用溢出漏洞無需復(fù)雜的技術(shù),只需利用工具一個(gè)命令即可進(jìn)入目標(biāo)的計(jì)算機(jī)中,史上最強(qiáng)計(jì)算機(jī)病毒“震蕩波”也正是利用PRC溢出漏洞進(jìn)行傳播的。而殺毒軟件面對(duì)溢出攻擊,卻束手無策,這就是溢出攻擊的恐怖之處。那么什么是溢出攻擊?我們又該如何防范溢出攻擊呢?請看本文。
什么是溢出攻擊?
溢出,顧名思義和水溢出的原理相當(dāng)。我們來舉個(gè)簡單的例子:有一桶干凈的水,水面剛好和桶口齊平,我們將一杯污水倒入到這個(gè)桶中,這時(shí)水會(huì)發(fā)生溢出,但這不是重要的,重要的是已經(jīng)有部分污水混入了干凈的水,這時(shí)這桶水已經(jīng)不再是一桶干凈的水了。
把這個(gè)原理搬到溢出攻擊中后可以這樣理解:我們將一段惡意代碼通過漏洞插入到程序正常的代碼當(dāng)中,由于代碼長度是固定的,這段代碼會(huì)有一部分正常代碼被溢出,也就是說我們的惡意代碼代替了正常的程序代碼。在程序要調(diào)用這段代碼的時(shí)候,它會(huì)將我們插入的惡意代碼當(dāng)作正常代碼調(diào)用,這時(shí)溢出攻擊就完成了。這段惡意代碼可實(shí)現(xiàn)的作用是任意的,例如提升用戶權(quán)限、造成程序崩潰等等。
本文相關(guān)軟件
Enhanced Mitigation Experience Toolkit
軟件版本:2.0.0.3
軟件大?。?.66MB
軟件語言:中文
應(yīng)用平臺(tái):Windows XP/Vista/7
注:在安裝之前,首先要安裝.net framework 2.0。
下載軟件:http://down.51cto.com/data/169420
由于溢出攻擊屬于黑客攻擊行為,并不是什么病毒木馬,因此殺毒軟件在溢出攻擊面前毫無招架之力,所以在電腦上安裝殺毒軟件并不能防御溢出攻擊,而必須借助一些專業(yè)的防溢出安全軟件。
防范溢出是一項(xiàng)比較復(fù)雜的工作,如果對(duì)系統(tǒng)進(jìn)行防溢出配置,那需要花費(fèi)大量的時(shí)間,并且需要一定的技術(shù),因此借助于防溢出安全工具無疑是最好的選擇。微軟的防溢出工具Enhanced Mitigation Experience Toolkit(簡稱EMET)可以說是配置最簡單也最有效的防溢出工具(誰讓W(xué)indows是溢出漏洞大戶呢)。EMET不僅可以防范Windows上的各種0day漏洞,還能防范第三方軟件的0day漏洞,在漏洞補(bǔ)丁沒有發(fā)布之前,EMET可以有效保護(hù)計(jì)算機(jī)不被黑客攻擊。
EMET主界面
EMET可以提供數(shù)據(jù)執(zhí)行保護(hù)功能(DEP),這是自XP SP2起加入的安全功能。DEP可以強(qiáng)制阻止位于內(nèi)存中的可執(zhí)行代碼運(yùn)行,僅允許純數(shù)據(jù)內(nèi)容,這樣就能預(yù)防常見的漏洞利用方式。而通過EMET就可以讓原本不具備DEP功能的應(yīng)用程序獲得這項(xiàng)功能。#p#
安裝完畢后我們雙擊運(yùn)行,EMET的界面可以說是相當(dāng)之簡潔。上半部分為系統(tǒng)全局狀況,下半部分則是當(dāng)前所有運(yùn)行中的進(jìn)程,可以查看是否支持DEP,是否被EMET強(qiáng)化過。上半部分的系統(tǒng)全局設(shè)置Configure System選項(xiàng),對(duì)于Windows 7用戶采用默認(rèn)設(shè)置即可;對(duì)于XP用戶,建議采用“Maximum Security Settings”,因?yàn)閄P本身不具備SEHOP和ALSR(克服地址空間布局隨機(jī)化限制,防止dll溢出)功能。
全局保護(hù)設(shè)置
而應(yīng)用程序方面,鑒于目前被利用的絕大多數(shù)0day都來自與網(wǎng)絡(luò)有關(guān)的應(yīng)用程序,比如IE,所以我們要重點(diǎn)關(guān)照一下這些程序。點(diǎn)擊“Configure Apps”,接著點(diǎn)“Add”,添加你希望保護(hù)的程序。完成后運(yùn)行你剛才添加的程序(如果該程序添加前已經(jīng)在運(yùn)行則需要關(guān)閉重啟之),此時(shí),在EMET主界面上就會(huì)看到受保護(hù)的程序在“Running EMET”一欄里有了標(biāo)識(shí)。
添加對(duì)單個(gè)程序的保護(hù)
以后只要網(wǎng)絡(luò)上公布了Windows或某軟件的0day漏洞,我們就可以通過EMET對(duì)其進(jìn)行設(shè)置,這樣即可臨時(shí)解決溢出問題。當(dāng)然,最終的解決辦法還是安裝漏洞補(bǔ)丁,這樣才能一勞永逸。
【編輯推薦】