Bit9報(bào)告發(fā)現(xiàn)大量“嚴(yán)重”Java漏洞
端點(diǎn)安全公司Bit9近日對(duì)Java及其漏洞進(jìn)行了深度研究,結(jié)果發(fā)現(xiàn),近一半的企業(yè)安裝了兩個(gè)以上版本的Java。Java在企業(yè)環(huán)境非常普遍,企業(yè)通常沒有刪除舊版本,這增加了威脅攻擊面,讓這些端點(diǎn)很容易成為攻擊者的目標(biāo)。
眾所周知,Java是“一次編寫,到處運(yùn)行”的平臺(tái),幾乎所有計(jì)算設(shè)備上都安裝了Java。很多網(wǎng)站和web應(yīng)用需要Java才能正常運(yùn)行,如果不信,你可以嘗試關(guān)閉瀏覽器中的Java,看看有多少應(yīng)用無法使用。
在2012年,這個(gè)流行的平臺(tái)出現(xiàn)了很多漏洞,它成為攻擊者最常利用的技術(shù)。在Bit9剛剛發(fā)布的《Java漏洞報(bào)告:一次編寫,到處禍害》一文中向我們介紹了Java問題的嚴(yán)重程度。
Java問題很特殊
Bit9公司安全研究人員Dan Brown表示,Java經(jīng)常受到抨擊,很多人都建議企業(yè)應(yīng)該禁用環(huán)境中的Java。Brown表示:“但人們并沒有聽從這些人的建議而刪除Java,因?yàn)樗麄儾徽J(rèn)為Java與其他容易受攻擊的軟件有什么不同。但Java確實(shí)不同,攻擊者青睞Java是有原因的。”現(xiàn)在有很多不同版本的Java,你很難安裝所有補(bǔ)丁和更新。一般企業(yè)的網(wǎng)絡(luò)中都有“超過50個(gè)不同版本的Java”,但只有“不到1%的企業(yè)使用最新版本。”
根據(jù)Bit9的報(bào)告顯示,最流行的Java版本(version 6, update 20)有96個(gè)漏洞被評(píng)為“嚴(yán)重”,這是96個(gè)非常嚴(yán)重的漏洞。那這些Java安全漏洞出現(xiàn)的速度有多快呢?Brown表示:“很快。在version 7, update 21和version 7, update 25之間的幾個(gè)月間,這些到處安裝的軟件出現(xiàn)了38個(gè)嚴(yán)重漏洞。”
雖然人們一直在宣揚(yáng)Java很有問題,但Bit9希望讓人們知道,Java不僅有問題,而且是非常特殊的問題。Brown表示:“人們不知道安裝Java并不會(huì)移除較舊的版本。所以,企業(yè)應(yīng)該確保在升級(jí)時(shí),不要再次安裝舊版本。這是企業(yè)端點(diǎn)中存在如此多Java版本的原因之一。”
端點(diǎn)保留較舊版本的Java究竟有什么不妥呢?“Java安全漏洞有多種形式,”Brown解釋說,“其中一種是典型的漏洞利用,允許攻擊者擺脫沙箱的束縛。在瀏覽器中運(yùn)行的Java虛擬機(jī)(VM)基本上有一個(gè)隔離沙箱層。攻擊者可以找到和使用漏洞來讓Java表現(xiàn)得像是成熟的Java應(yīng)用(具有所有特權(quán)和權(quán)利),而不是限制在瀏覽器沙箱中。”
另一個(gè)漏洞與甲骨文或其他公司部署的控制有關(guān),這些公司希望警告用戶小應(yīng)用正在試圖訪問較舊版本的Java。“攻擊者基本上可以讓其代碼在較舊的更易受攻擊的版本中運(yùn)行,”Brown表示,“這是個(gè)困難的問題,這與企業(yè)平常對(duì)付的漏洞類型完全不同。如果每個(gè)企業(yè)可以輕按一個(gè)開關(guān),擺脫環(huán)境中的Java漏洞,他們就可能會(huì)更安全。”
Java是一個(gè)功能強(qiáng)大的黑盒子
從威脅的角度來看,Java與眾不同的地方在于,它是一個(gè)強(qiáng)大的可行的黑盒子。當(dāng)攻擊者獲取對(duì)Java VM的控制后,他們就擁有了很多功能,包括編寫腳本。
如果他們可以利用其中一個(gè)漏洞來簡(jiǎn)單地突破沙盒,或者提升他們VM中的權(quán)限,他們下載的任何代碼都將由Java VM來執(zhí)行,并且企業(yè)的安全控制基本不知道這種行為。
“Java并不像Adobe Acrobat,Adobe Acrobat是一個(gè)固定功能程序,并不能為攻擊者提供很多軟件功能,”Brown解釋說,“對(duì)于Java,攻擊者可以根據(jù)需要使用所有Java VM的功能,并且,他們可以在Java的環(huán)境中做所有這些事情。”
通常當(dāng)人們?cè)趯ふ覑阂廛浖?、惡意可?zhí)行文件時(shí),他們只會(huì)尋找Java.exe,我們都喜歡和信任這種可執(zhí)行文件,但是注意,它是在內(nèi)部運(yùn)行代碼。“內(nèi)部代碼基本上可以讓Java.exe執(zhí)行各種惡意操作,”Brown表示,“它能夠提供這些功能,讓Java VM像一個(gè)黑盒子,這樣,安全控制就其無效。我不認(rèn)為所有人都知道這事,這也讓Java成為很容易攻擊目標(biāo)。”
企業(yè)如何能夠降低Java漏洞利用的風(fēng)險(xiǎn)?
一些企業(yè)可以從其環(huán)境中完全移除Java,而不會(huì)影響到其業(yè)務(wù)。但對(duì)于其他企業(yè)來說,在很長(zhǎng)一段時(shí)間內(nèi),業(yè)務(wù)用例中都將需要使用Java。“企業(yè)可能沒有資源來修改他們?cè)贘ava編寫的舊代碼,”Brown表示,“但你仍然需要注意這些代碼,并想辦法處理這些代碼。第一步是確定Java在你企業(yè)中的普及度,你有多少版本的Java,以及它們?cè)谀睦?,并確定你可以刪除多少版本。”另一個(gè)步驟是刪除web瀏覽器中的Java,“從瀏覽器刪除Java幾乎可以消除所有攻擊面。”
如果你的業(yè)務(wù)需要使用Java,特別是需要在瀏覽器的環(huán)境中運(yùn)行Java時(shí),Bit9建議你隔離那個(gè)環(huán)境,Brown指出:“使用沙箱瀏覽器,或者VM,或者某種隔離技術(shù)來完全隔離桌面網(wǎng)絡(luò)中的Java。”Bit9建議,如果可以的話,企業(yè)最好刪除Java。如果你的企業(yè)必須使用Java,離了它不行的話,則應(yīng)該盡可能地減少Java在企業(yè)的使用,或者進(jìn)行隔離。