專利名稱:為計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)和計(jì)算機(jī)系統(tǒng)的安全,更具體地說,涉及為計(jì)算機(jī)系統(tǒng)上的至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法和系統(tǒng)。
背景技術(shù):
在計(jì)算機(jī)系統(tǒng)上運(yùn)行計(jì)算機(jī)程序提出了挑戰(zhàn)。例如,流氓計(jì)算機(jī)程序能夠在計(jì)算機(jī)系統(tǒng)上執(zhí)行,至少會給人帶來困擾,最糟糕的是可能對計(jì)算機(jī)系統(tǒng)產(chǎn)生不可挽回的損壞。此外,盜版的計(jì)算機(jī)程序可以在計(jì)算機(jī)系統(tǒng)上執(zhí)行。同樣,可以在計(jì)算機(jī)程序上非法(也許是偶然)使用計(jì)算機(jī)程序。還難以確?!霸鲋怠?或部署的)計(jì)算機(jī)程序只在預(yù)期(或目標(biāo))計(jì)算機(jī)系統(tǒng)上執(zhí)行。
需要可靠的執(zhí)行環(huán)境對于通常由信息技術(shù)(IT)組織“管理”的計(jì)算機(jī)程序來說,解決此類問題更緊迫,更有用。此類計(jì)算機(jī)程序管理在企業(yè)中是實(shí)際的,其中用戶幾乎不安裝和維護(hù)自己的所有計(jì)算機(jī)程序。在此類情況中,計(jì)算機(jī)程序的資產(chǎn)管理和許可證跟蹤對用戶來說是棘手、復(fù)雜和麻煩的。此外,策略符合驗(yàn)證或?qū)嵤┦秋@式的(例如,代理必須主動檢查是否符合)。
根據(jù)應(yīng)用二進(jìn)制接口(ABI)生成計(jì)算機(jī)程序執(zhí)行體(包括惡意軟件),這會在此類型的計(jì)算機(jī)系統(tǒng)中提供低級一致性。這樣,惡意軟件(例如,病毒、蠕蟲、特洛伊木馬)將知道它要在其上執(zhí)行的軟件/硬件體系結(jié)構(gòu)?!巴鈦淼摹庇?jì)算機(jī)程序執(zhí)行體必須以計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)可理解的格式存在并且必須符合ABI。因此,來自某一類型的計(jì)算機(jī)系統(tǒng)(平臺)的惡意軟件通常不會影響其他平臺。惡意軟件期望特定的運(yùn)行時環(huán)境。相反地,為使操作系統(tǒng)運(yùn)行計(jì)算機(jī)程序執(zhí)行體,所述執(zhí)行體必須符合計(jì)算機(jī)系統(tǒng)所支持的ABI。具體地說,如果從操作系統(tǒng)的角度,執(zhí)行體是“垃圾”,則不會運(yùn)行所述執(zhí)行體。
現(xiàn)有技術(shù)防御系統(tǒng)如現(xiàn)有技術(shù)的圖1所示,典型的現(xiàn)有技術(shù)防御系統(tǒng)嘗試通過(1)檢測惡意軟件和(2)阻止惡意軟件嘗試執(zhí)行的惡意操作來使惡意軟件無效。此類現(xiàn)有技術(shù)系統(tǒng)可以通過(a)確定地或試探地識別惡意軟件簽名,(b)分析惡意軟件的行為,或者(c)在“沙盒”中運(yùn)行惡意軟件來檢測惡意軟件。不幸地是,如今此類技術(shù)已經(jīng)變得極為復(fù)雜,并且它們都不能滿足需要。因此,需要一種為在計(jì)算機(jī)系統(tǒng)上的至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法和系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明提供了在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境(AxE)的方法和系統(tǒng)。在示例性實(shí)施例中,所述方法和系統(tǒng)包括(1)將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序,以及(2)在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。
在示例性實(shí)施例中,所述轉(zhuǎn)換包括擾亂所述執(zhí)行體。在特定實(shí)施例中,所述擾亂包括將軟件加密方案應(yīng)用于所述執(zhí)行體。在特定實(shí)施例中,所述擾亂包括將硬件輔助的加密方案應(yīng)用于所述執(zhí)行體。在特定實(shí)施例中,所述擾亂包括將硬件加密方案應(yīng)用于所述執(zhí)行體。在示例性實(shí)施例中,所述轉(zhuǎn)換包括將文件系統(tǒng)元數(shù)據(jù)附加到所述執(zhí)行體。
在示例性實(shí)施例中,所述提供包括只有當(dāng)程序符合策略時才在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行所述程序。在示例性實(shí)施例中,所述執(zhí)行包括,如果所述程序被加密并且包括來自所述計(jì)算機(jī)系統(tǒng)的文件系統(tǒng)的元數(shù)據(jù),則根據(jù)所述策略來解擾所述程序。在特定實(shí)施例中,所述解擾包括(a)相對于所述計(jì)算機(jī)系統(tǒng)來驗(yàn)證所述程序的完整性,(b)如果相對于所述計(jì)算機(jī)系統(tǒng)驗(yàn)證了所述程序的完整性,則解擾所述程序,以及(c)如果解擾了所述程序,則在所述計(jì)算機(jī)系統(tǒng)上運(yùn)行所述程序。
在示例性實(shí)施例中,所述執(zhí)行包括,如果所述程序未被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)所述策略來運(yùn)行所述程序。在示例性實(shí)施例中,所述執(zhí)行包括,如果所述程序未被擾亂并且不包括來自所述計(jì)算機(jī)系統(tǒng)的文件系統(tǒng)的元數(shù)據(jù),則根據(jù)所述策略拒絕所述程序的執(zhí)行。
在示例性實(shí)施例中,所述提供包括在將所述環(huán)境加載到所述計(jì)算機(jī)系統(tǒng)上之前阻止惡意代碼在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行。在特定實(shí)施例中,所述阻止包括拒絕對所述計(jì)算機(jī)系統(tǒng)的HKLM注冊表巢(hive)修改請求。在特定實(shí)施例中,所述阻止包括拒絕寫入所述計(jì)算機(jī)系統(tǒng)上的/System/Library/Extensions文件夾。
在示例性實(shí)施例中,所述提供包括只有當(dāng)程序符合策略時才從所述計(jì)算機(jī)系統(tǒng)讀取所述程序。在示例性實(shí)施例中,所述提供包括只有當(dāng)程序符合策略時才在所述計(jì)算機(jī)系統(tǒng)上寫入所述程序。
本發(fā)明還提供了一種可與可編程計(jì)算機(jī)一起使用的其中包含可讀程序代碼的在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的計(jì)算機(jī)程序產(chǎn)品。在示例性實(shí)施例中,所述計(jì)算機(jī)程序產(chǎn)品包括(1)將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序的計(jì)算機(jī)可讀代碼,以及(2)在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境的計(jì)算機(jī)可讀代碼。
本發(fā)明還提供了一種提供服務(wù)以在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法。在示例性實(shí)施例中,所述方法包括(1)將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序,以及(2)在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。
圖1是現(xiàn)有技術(shù)的流程圖;圖2是根據(jù)本發(fā)明的示例性實(shí)施例的流程圖;
圖3A是根據(jù)本發(fā)明的示例性實(shí)施例的轉(zhuǎn)換步驟的流程圖;圖3B是根據(jù)本發(fā)明的特定實(shí)施例的擾亂步驟的流程圖;圖3c是根據(jù)本發(fā)明的特定實(shí)施例的擾亂步驟的流程圖;圖3D是根據(jù)本發(fā)明的特定實(shí)施例的擾亂步驟的流程圖;圖4是根據(jù)本發(fā)明的示例性實(shí)施例的擾亂步驟的流程圖;圖5A是根據(jù)本發(fā)明的示例性實(shí)施例的提供步驟的流程圖;圖5B是根據(jù)本發(fā)明的示例性實(shí)施例的執(zhí)行步驟的流程圖;圖5C是根據(jù)本發(fā)明的特定實(shí)施例的解擾步驟的流程圖;圖5D是根據(jù)本發(fā)明的示例性實(shí)施例的執(zhí)行步驟的流程圖;圖5E是根據(jù)本發(fā)明的示例性實(shí)施例的執(zhí)行步驟的流程圖;圖6A是根據(jù)本發(fā)明的示例性實(shí)施例的提供步驟的流程圖;圖6B是根據(jù)本發(fā)明的特定實(shí)施例的阻止步驟的流程圖;圖6C是根據(jù)本發(fā)明的特定實(shí)施例的阻止步驟的流程圖;圖7是根據(jù)本發(fā)明的示例性實(shí)施例的提供步驟的流程圖;以及圖8是根據(jù)本發(fā)明的示例性實(shí)施例的提供步驟的流程圖。
具體實(shí)施例方式
本發(fā)明提供了在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境(AxE)的方法和系統(tǒng)。在示例性實(shí)施例中,所述方法和系統(tǒng)包括(1)將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序,以及(2)在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。
參考圖2,在示例性實(shí)施例中,本發(fā)明包括將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序的步驟212,以及在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境的步驟214。
轉(zhuǎn)換執(zhí)行體加密執(zhí)行體參考圖3A,在示例性實(shí)施例中,轉(zhuǎn)換步驟212包括擾亂執(zhí)行體的步驟312。接著參考圖3B,在特定實(shí)施例中,擾亂步驟312包括將軟件加密方案應(yīng)用于所述執(zhí)行體的步驟322。接著參考圖3C,在特定實(shí)施例中,擾亂步驟312包括將硬件輔助的加密方案應(yīng)用于所述執(zhí)行體的步驟332。在特定實(shí)施例中,所述硬件輔助的加密方案是IBM公司(在下文中為“IBM”)的信任平臺模塊(TPM)和基于插件的“擾亂方案”。接著參考圖3D,在特定實(shí)施例中,擾亂步驟312包括將硬件加密方案應(yīng)用于所述執(zhí)行體的步驟342。
在示例性實(shí)施例中,擾亂步驟312將所述執(zhí)行體分成頁的集合(每個頁包括4096個字節(jié)),且每個集合包含可變的頁數(shù)。擾亂步驟312然后攪亂所述集合并可選地轉(zhuǎn)換指令的代碼以生成新的文件,即加密的文件。隨后擾亂步驟312將加密的文件的執(zhí)行體標(biāo)頭標(biāo)記為無效,從而確保如果所述攪亂產(chǎn)生了可運(yùn)行的二進(jìn)制文件(binary),該新的文件不會運(yùn)行。
在示例性實(shí)施例中,擾亂步驟312使用有效的擾亂方案,從而只要給出任何元組(即,從其讀取的偏移量,要讀取的字節(jié)數(shù)),解擾所述程序應(yīng)不必處理整個程序文件,也不必處理“從其讀取的偏移量”之前的所有數(shù)據(jù)。在示例性實(shí)施例中,擾亂步驟312使用具有由AxE的使用的上下文指示的特性和所需安全級別的擾亂方案。
附加文件系統(tǒng)元數(shù)據(jù)參考圖4,在示例性實(shí)施例中,轉(zhuǎn)換步驟212包括將文件系統(tǒng)元數(shù)據(jù)附加到所述執(zhí)行體的步驟412。在示例性實(shí)施例中,所述文件系統(tǒng)元數(shù)據(jù)是所述執(zhí)行體的備選數(shù)據(jù)流。在示例性實(shí)施例中,附加步驟412使用IBMTPM將所述元數(shù)據(jù)與計(jì)算機(jī)系統(tǒng)結(jié)合。在示例性實(shí)施例中,附加步驟412使用軟件擾亂方案將所述元數(shù)據(jù)與計(jì)算機(jī)系統(tǒng)結(jié)合。在特定實(shí)施例中,可以通過使用軟件構(gòu)造(如登錄令牌)將軟件擾亂方案與計(jì)算機(jī)系統(tǒng)結(jié)合。在示例性實(shí)施例中,由于IBM TPM的特性或軟件擾亂方案的強(qiáng)度,實(shí)際上無法非法地構(gòu)造所述元數(shù)據(jù)。在示例性實(shí)施例中,附加步驟412將所述執(zhí)行體的文件內(nèi)容的任意強(qiáng)度簽名存儲在所述元數(shù)據(jù)中,以便針對脫機(jī)修改補(bǔ)充對文件內(nèi)容的驗(yàn)證。
提供環(huán)境執(zhí)行程序參考圖5A,在示例性實(shí)施例中,提供步驟214包括只有當(dāng)程序符合策略時才在計(jì)算機(jī)系統(tǒng)上執(zhí)行所述程序的步驟512。在示例性實(shí)施例中,使用所述程序中的所述元數(shù)據(jù)以便能夠執(zhí)行所述程序。使用IBM TPM或軟件擾亂方案保護(hù)元數(shù)據(jù)的結(jié)果是,只能在所述計(jì)算機(jī)系統(tǒng)(所述目標(biāo)計(jì)算機(jī)系統(tǒng))上解開所述元數(shù)據(jù)。
已擾亂的具有元數(shù)據(jù)的程序參考圖5B,在示例性實(shí)施例中,執(zhí)行步驟512包括,如果所述程序被擾亂并且包括來自計(jì)算機(jī)系統(tǒng)的文件系統(tǒng)的元數(shù)據(jù),則根據(jù)策略來解擾所述程序的步驟522。在示例性實(shí)施例中,如果所述程序被擾亂并且包括來自計(jì)算機(jī)系統(tǒng)的文件系統(tǒng)的元數(shù)據(jù),則所述程序?yàn)镋axe二進(jìn)制文件。Eaxe二進(jìn)制文件針對特定的計(jì)算機(jī)系統(tǒng)或一組特定的計(jì)算機(jī)系統(tǒng)。通常由信息技術(shù)人員在部署Eaxe二進(jìn)制文件期間以這種方法確定Eaxe二進(jìn)制文件的目標(biāo)。在示例性實(shí)施例中,使用IBM的TPM來確定Eaxe二進(jìn)制文件的目標(biāo)。作為此確定目標(biāo)的結(jié)果,Eaxe二進(jìn)制文件只能在所述目標(biāo)計(jì)算機(jī)系統(tǒng)或該組目標(biāo)計(jì)算機(jī)系統(tǒng)上運(yùn)行。
接著參考圖5C,在特定實(shí)施例中,解擾步驟522包括驗(yàn)證程序相對于計(jì)算機(jī)系統(tǒng)的完整性的步驟532、如果已驗(yàn)證程序相對于計(jì)算機(jī)系統(tǒng)的完整性,則解擾所述程序的步驟534,以及如果解擾了所述程序,則在計(jì)算機(jī)系統(tǒng)上運(yùn)行所述程序的步驟536。
具有元數(shù)據(jù)且未被擾亂的程序參考圖5D,在示例性實(shí)施例中,執(zhí)行步驟512包括,如果所述程序未被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)策略來運(yùn)行所述程序的步驟542。在示例性實(shí)施例中,如果所述程序未被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則所述程序是Ebase二進(jìn)制文件。Ebase二進(jìn)制文件代表健全的“已知良好”的起點(diǎn)程序。例如,AxE運(yùn)行時程序是Ebase二進(jìn)制文件。
沒有元數(shù)據(jù)且未被擾亂的程序參考圖5E,在示例性實(shí)施例中,執(zhí)行步驟512包括,如果所述程序未被擾亂并且不包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)策略拒絕所述程序的執(zhí)行的步驟552。在示例性實(shí)施例中,如果所述程序未被擾亂并且不包括文件系統(tǒng)元數(shù)據(jù),則所述程序是Erandom二進(jìn)制文件。Erandom二進(jìn)制文件是既未被顯式部署(即Eaxe二進(jìn)制文件)也不是Ebase二進(jìn)制文件的程序。在示例性實(shí)施例中,Erandom二進(jìn)制文件可以遵守下列策略之一1.將始終允許運(yùn)行;2.將始終不允許運(yùn)行;3.將始終提示用戶做出布爾響應(yīng)(運(yùn)行,不運(yùn)行),給出與Erandom二進(jìn)制文件有關(guān)的盡可能多的細(xì)節(jié);4.將始終允許在“沙盒”(如Windows提供的最小特權(quán)環(huán)境)中運(yùn)行。
默認(rèn)情況下,在示例性實(shí)施例中,不允許在計(jì)算機(jī)系統(tǒng)中執(zhí)行Erandom二進(jìn)制文件。在示例性實(shí)施例中,將維護(hù)所述提示的統(tǒng)計(jì)。
阻止惡意代碼參考圖6A,在示例性實(shí)施例中,提供步驟214包括在將所述環(huán)境加載到所述計(jì)算機(jī)系統(tǒng)之前阻止在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行惡意代碼的步驟612。在示例性實(shí)施例中,在運(yùn)行可靠執(zhí)行環(huán)境(AXE)的計(jì)算機(jī)系統(tǒng)上既不能修改Eaxe二進(jìn)制文件也不能修改Ebase二進(jìn)制文件。在示例性實(shí)施例中,以平臺相關(guān)的方式實(shí)現(xiàn)此類阻止修改。這樣,可以主動地維護(hù)Eaxe二進(jìn)制文件和Ebase二進(jìn)制文件的純潔性。
接著參考圖6B,在特定實(shí)施例中,阻止步驟612包括拒絕對計(jì)算機(jī)系統(tǒng)的HKLM注冊表巢修改請求的步驟622。因此,在運(yùn)行MicrosoftCorporation(下文稱為“Microsoft”)的Microsoft Windows(下文稱為“Windows”)操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)上,阻止修改Eaxe二進(jìn)制文件或Ebase二進(jìn)制文件包括拒絕引導(dǎo)時驅(qū)動程序的修改嘗試。接著參考圖6C,在特定實(shí)施例中,阻止步驟612包括拒絕寫入計(jì)算機(jī)系統(tǒng)上的/System/Library/Extensions文件夾的步驟632。因此,在運(yùn)行AppleComputer,Inc.(下文稱為“Apple”)的Mas OS X操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)上,阻止修改Eaxe二進(jìn)制文件或Ebase二進(jìn)制文件包括拒絕引導(dǎo)時驅(qū)動程序的修改嘗試。
讀取程序參考圖7,在示例性實(shí)施例中,提供步驟214包括只有當(dāng)程序符合策略時才從所述計(jì)算機(jī)系統(tǒng)讀取所述程序的步驟712。在示例性實(shí)施例中,讀取步驟712包括,如果所述程序被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則返回?cái)_亂的數(shù)據(jù)。在示例性實(shí)施例中,讀取步驟712包括,如果所述程序未被擾亂,則返回所述程序中的實(shí)際數(shù)據(jù)。
寫入程序參考圖8,在示例性實(shí)施例中,提供步驟214包括只有當(dāng)程序符合策略時才寫入計(jì)算機(jī)系統(tǒng)上的程序的步驟812。在示例性實(shí)施例中,寫入步驟812包括,如果所述程序包括文件系統(tǒng)元數(shù)據(jù),則拒絕寫入請求。在示例性實(shí)施例中,寫入步驟812包括,如果所述程序不包括文件系統(tǒng)元數(shù)據(jù),則允許所述寫入請求。
結(jié)論已完整描述了本發(fā)明的優(yōu)選實(shí)施例和各種可選實(shí)施例,本領(lǐng)域的技術(shù)人員將認(rèn)識到,通過此處的教導(dǎo),存在大量不偏離本發(fā)明的可選物和等效物。因此,本發(fā)明并非旨在由上述說明進(jìn)行限制,而僅由所附權(quán)利要求來限制。
權(quán)利要求
1.一種在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法,所述方法包括將所述執(zhí)行體轉(zhuǎn)換為目標(biāo)是所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序;以及在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。
2.根據(jù)權(quán)利要求1的方法,其中所述轉(zhuǎn)換包括擾亂所述執(zhí)行體。
3.根據(jù)權(quán)利要求2的方法,其中所述擾亂包括將軟件加密方案應(yīng)用于所述執(zhí)行體。
4.根據(jù)權(quán)利要求2的方法,其中所述擾亂包括將硬件輔助的加密方案應(yīng)用于所述執(zhí)行體。
5.根據(jù)權(quán)利要求2的方法,其中所述擾亂包括將硬件加密方案應(yīng)用于所述執(zhí)行體。
6.根據(jù)權(quán)利要求1的方法,其中所述轉(zhuǎn)換包括將文件系統(tǒng)元數(shù)據(jù)附加到所述執(zhí)行體。
7.根據(jù)權(quán)利要求1的方法,其中所述提供包括只有當(dāng)所述程序符合策略時才在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行所述程序。
8.根據(jù)權(quán)利要求7的方法,還包括,如果所述程序被擾亂并且包括來自所述計(jì)算機(jī)系統(tǒng)的所述文件系統(tǒng)的元數(shù)據(jù),則根據(jù)所述策略來解擾所述程序。
9.根據(jù)權(quán)利要求8的方法,其中所述解擾包括相對于所述計(jì)算機(jī)系統(tǒng)驗(yàn)證所述程序的完整性;如果相對于所述計(jì)算機(jī)系統(tǒng)驗(yàn)證了所述程序的完整性,則解擾所述程序;以及如果解擾了所述程序,則在所述計(jì)算機(jī)系統(tǒng)上運(yùn)行所述程序。
10.根據(jù)權(quán)利要求7的方法,還包括,如果所述程序未被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)所述策略來運(yùn)行所述程序。
11.根據(jù)權(quán)利要求7的方法,還包括,如果所述程序未被擾亂并且不包括來自所述計(jì)算機(jī)系統(tǒng)的所述文件系統(tǒng)的元數(shù)據(jù),則根據(jù)所述策略拒絕所述程序的執(zhí)行。
12.根據(jù)權(quán)利要求1的方法,其中所述提供包括在將所述環(huán)境加載到所述計(jì)算機(jī)系統(tǒng)之前阻止在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行惡意代碼。
13.根據(jù)權(quán)利要求12的方法,其中所述阻止包括拒絕對所述計(jì)算機(jī)系統(tǒng)的HKLM注冊表巢修改請求。
14.根據(jù)權(quán)利要求12的方法,其中所述阻止包括拒絕寫入所述計(jì)算機(jī)系統(tǒng)上的/System/Library/Extensions文件夾。
15.根據(jù)權(quán)利要求1的方法,其中所述提供包括只有當(dāng)所述程序符合策略時才從所述計(jì)算機(jī)系統(tǒng)讀取所述程序。
16.根據(jù)權(quán)利要求1的方法,其中所述提供包括只有當(dāng)所述程序符合策略時才寫入所述計(jì)算機(jī)系統(tǒng)上的所述程序。
17.一種在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的系統(tǒng),所述系統(tǒng)包括配置為將所述執(zhí)行體轉(zhuǎn)換為目標(biāo)是所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序的轉(zhuǎn)換模塊;以及配置為在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境的提供模塊。
18.根據(jù)權(quán)利要求17的系統(tǒng),其中所述轉(zhuǎn)換模塊包括配置為擾亂所述執(zhí)行體的擾亂模塊。
19.根據(jù)權(quán)利要求18的系統(tǒng),其中所述擾亂模塊包括配置為將軟件加密方案應(yīng)用于所述執(zhí)行體的應(yīng)用模塊。
20.根據(jù)權(quán)利要求18的系統(tǒng),其中所述擾亂模塊包括配置為將硬件輔助的加密方案應(yīng)用于所述執(zhí)行體的應(yīng)用模塊。
21.根據(jù)權(quán)利要求18的系統(tǒng),其中所述擾亂模塊包括配置為將硬件加密方案應(yīng)用于所述執(zhí)行體的應(yīng)用模塊。
22.根據(jù)權(quán)利要求17的系統(tǒng),其中所述轉(zhuǎn)換模塊包括配置為將文件系統(tǒng)元數(shù)據(jù)附加到所述執(zhí)行體的附加模塊。
23.根據(jù)權(quán)利要求17的系統(tǒng),其中所述提供模塊包括配置為只有當(dāng)所述程序符合策略時才在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行所述程序的執(zhí)行模塊。
24.根據(jù)權(quán)利要求23的系統(tǒng),還包括配置為如果所述程序被擾亂并且包括來自所述計(jì)算機(jī)系統(tǒng)的所述文件系統(tǒng)的元數(shù)據(jù),則根據(jù)所述策略來解擾所述程序的解擾模塊。
25.根據(jù)權(quán)利要求24的系統(tǒng),其中所述解擾模塊包括配置為相對于所述計(jì)算機(jī)系統(tǒng)驗(yàn)證所述程序的完整性的驗(yàn)證模塊;配置為如果相對于所述計(jì)算機(jī)系統(tǒng)驗(yàn)證了所述程序的完整性,則解擾所述程序的解擾模塊;以及配置為如果解擾了所述程序,則在所述計(jì)算機(jī)系統(tǒng)上運(yùn)行所述程序的運(yùn)行模塊。
26.根據(jù)權(quán)利要求23的系統(tǒng),還包括配置為如果所述程序未被擾亂并且包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)所述策略來運(yùn)行所述程序的運(yùn)行模塊。
27.根據(jù)權(quán)利要求23的系統(tǒng),還包括配置為如果所述程序未被擾亂并且不包括文件系統(tǒng)元數(shù)據(jù),則根據(jù)所述策略拒絕所述程序的執(zhí)行的拒絕模塊。
28.根據(jù)權(quán)利要求17的系統(tǒng),其中所述提供模塊包括配置為在將所述環(huán)境加載到所述計(jì)算機(jī)系統(tǒng)之前阻止在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行惡意代碼的阻止模塊。
29.根據(jù)權(quán)利要求28的系統(tǒng),其中所述阻止模塊包括配置為拒絕對所述計(jì)算機(jī)系統(tǒng)的HKLM注冊表巢修改請求的拒絕模塊。
30.根據(jù)權(quán)利要求28的系統(tǒng),其中所述阻止模塊包括配置為拒絕寫入所述計(jì)算機(jī)系統(tǒng)上的/system/Library/Extensions文件夾的拒絕模塊。
31.根據(jù)權(quán)利要求17的系統(tǒng),其中所述提供模塊包括配置為只有當(dāng)所述程序符合策略時才從所述計(jì)算機(jī)系統(tǒng)讀取所述程序的讀取模塊。
32.根據(jù)權(quán)利要求17的系統(tǒng),其中所述提供模塊包括配置為只有當(dāng)所述程序符合策略時才寫入所述計(jì)算機(jī)系統(tǒng)上的所述程序的寫入模塊。
33.一種可與可編程計(jì)算機(jī)一起使用的其中包含可讀程序代碼的在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括用于將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序的計(jì)算機(jī)可讀代碼;以及用于在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境的計(jì)算機(jī)可讀代碼。
34.一種提供服務(wù)以在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境的方法,所述方法包括將所述執(zhí)行體轉(zhuǎn)換為用于所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序;以及在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。
全文摘要
本發(fā)明提供了在計(jì)算機(jī)系統(tǒng)上為至少一個計(jì)算機(jī)程序執(zhí)行體創(chuàng)建可靠的執(zhí)行環(huán)境(AxE)的方法和系統(tǒng)。在示例性實(shí)施例中,所述方法和系統(tǒng)包括(1)將所述執(zhí)行體轉(zhuǎn)換為目標(biāo)是所述計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)程序,以及(2)在所述計(jì)算機(jī)系統(tǒng)上提供其中可以訪問所述程序的環(huán)境。在示例性實(shí)施例中,所述轉(zhuǎn)換包括擾亂所述執(zhí)行體。在示例性實(shí)施例中,所述轉(zhuǎn)換包括將文件系統(tǒng)元數(shù)據(jù)附加到所述執(zhí)行體。在示例性實(shí)施例中,所述提供包括只有當(dāng)所述程序符合策略時才在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行所述程序。在示例性實(shí)施例中,所述提供包括在將所述環(huán)境加載到所述計(jì)算機(jī)系統(tǒng)之前阻止在所述計(jì)算機(jī)系統(tǒng)上執(zhí)行惡意代碼。
文檔編號G06F21/00GK1987883SQ20061014707
公開日2007年6月27日 申請日期2006年11月14日 優(yōu)先權(quán)日2005年12月24日
發(fā)明者A·辛格, A·夏爾馬 申請人:國際商業(yè)機(jī)器公司