專利名稱:實時修復(fù)重要計算機文件的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用來抵御試圖訪問存儲在計算機中的文件的黑客的安全系統(tǒng),并且具體涉及一種用于實時修復(fù)重要計算機文件的系統(tǒng)。
背景技術(shù):
一般,在網(wǎng)絡(luò)環(huán)境中,系統(tǒng)管理員是被授權(quán)來修改在計算機本身上或者來自中心監(jiān)控計算機的一些重要程序和系統(tǒng)文件的唯一的人。越來越多的敵意黑客試圖危及(compromise)這些文件,以便以后訪問該系統(tǒng)。新的系統(tǒng)漏洞定期地被發(fā)現(xiàn),從而導(dǎo)致所謂的“利用(exploit)”,即允許幾乎任何人—來自公司內(nèi)部或來自公司外部—得到系統(tǒng)管理員特權(quán)一段時間。那些方式可以包括—但是不限于—“竟態(tài)條件”、緩沖器溢出、堆棧溢出等。
入侵者(pirate)一獲得系統(tǒng)管理員特權(quán)訪問,他們就將修改一些系統(tǒng)文件和/或數(shù)據(jù)文件,以便以后更容易地進入該系統(tǒng),因為他們知道他們進入所利用的突破口有一天將被修補好(colamted)。他們可以例如通過尤其是在源碼開放(open-source)的系統(tǒng)上、謹(jǐn)慎地修改用戶和/或系統(tǒng)目錄(和/或權(quán)限),或者通過重新編譯一些系統(tǒng)文件,來引入“后門”。他們甚至可以在被危及的系統(tǒng)上修改編譯器,使得任何利用其編譯的程序可以自動包括這樣的后門。
檢測這種入侵的方案是(a)在計算機被連接到任何網(wǎng)絡(luò)前的計算機安裝時,計算所有重要文件的“MD5簽名”(或者類似的簽名方法,如SHA-1,其更好,但是也較慢),和(b)將這些MD5簽名存儲在安全的地方(例如,在將被設(shè)置成一次寫入只讀的磁盤上;在CD/R上;或者通過將它們安全地發(fā)送到網(wǎng)絡(luò)上的另一臺計算機上,在其上它們將被加密)。
在此方法中,周期地監(jiān)控數(shù)據(jù)處理系統(tǒng),檢查具有被修改的MD5簽名的文件和沒有MD5簽名數(shù)據(jù)庫中的MD5簽名的文件,可以指示不期望的修改的存在。每當(dāng)這些情況中的一個或多個發(fā)生時,就要采取補救措施。“補救”一般采取給系統(tǒng)管理員或安全管理員的一個或多個消息的形式,所述消息指示沒有MD5簽名和/或具有被修改的MD5簽名的文件的列表。
盡管MD5簽名是個好方法,以致當(dāng)修改此文件時必定改變文件的MD5簽名,但是此方案需要定期檢查所有文件,這要通過在每臺計算機上應(yīng)用自動檢查過程并且收集要由系統(tǒng)管理員或者軟件工具進行分析的安全日志上的結(jié)果來進行。更具體而言,(a)如果檢查進行的太頻繁,則頻繁請求計算機資源。相反,(b)如果以較長的時間間隔進行檢查,那么入侵者在他/她被檢測到之前將擁有更多可用時間來對所危及的系統(tǒng)進行實驗。在大多數(shù)環(huán)境中,這些檢查每夜都進行,例如在上午3點左右,從而給入侵者留出平均12個小時來在系統(tǒng)上造成麻煩,而且,在檢查開始之前,他/她還得到大量時間來恢復(fù)神志清楚的(sane)狀態(tài)。
應(yīng)當(dāng)注意當(dāng)入侵者擁有系統(tǒng)管理員的訪問時,甚至可以修改與對每個文件的最后的操作相關(guān)聯(lián)的系統(tǒng)時戳,從而覆蓋他/她的蹤跡。本地系統(tǒng)日志具有相同的脆弱性。
因此,需要一種實時檢測攻擊性入侵的方法。在所引用的IBM專利中請FR 920020083中描述的這種方法是在引導(dǎo)時向在引導(dǎo)時啟動的程序聲明計算機的重要文件,并且其啟動對有關(guān)所聲明的重要文件的任何修改的守護程序(daemon)檢測。在檢測到這種系統(tǒng)調(diào)用時,該方法產(chǎn)生中斷并且向管理員計算機發(fā)送消息。幾秒鐘之后,其識別重要計算機文件產(chǎn)生的該系統(tǒng)調(diào)用并且在第二消息中將其發(fā)送。盡管這種方法使管理員實時知道何時存在黑客入侵,但是其不提供修復(fù)已經(jīng)被攻擊的重要計算機文件的解決方案。
發(fā)明內(nèi)容
因此,本發(fā)明的主要目的在于提供一種能夠?qū)崟r修復(fù)已經(jīng)被黑客入侵的、不論程序還是數(shù)據(jù)的重要計算機文件的系統(tǒng)。
本發(fā)明因此涉及一種在包括傳輸網(wǎng)絡(luò)的數(shù)據(jù)傳輸系統(tǒng)中的實時修復(fù)系統(tǒng),所述修復(fù)系統(tǒng)和至少是具有要防止遭受入侵者入侵的重要文件的數(shù)據(jù)處理設(shè)備被連接到所述傳輸網(wǎng)絡(luò)。這種修復(fù)系統(tǒng)包括系統(tǒng)修復(fù)器,其包括用于存儲重要文件的部件;用于識別使能對重要文件的修改的條件的部件,用于當(dāng)重要文件之一已經(jīng)被修改時進行檢測的部件;和用于當(dāng)對數(shù)據(jù)處理設(shè)備中的重要文件的修改沒有滿足所需條件時、將原始重要文件回拷(copy back)到數(shù)據(jù)處理設(shè)備中的部件。
根據(jù)另一方面,本發(fā)明涉及一種用于在包括網(wǎng)絡(luò)的數(shù)據(jù)傳輸系統(tǒng)中實時修復(fù)具有至少重要文件的計算機的方法,所述網(wǎng)絡(luò)連接有修復(fù)層,該方法在于在包括在修復(fù)層中的系統(tǒng)修復(fù)器中存儲重要文件;在系統(tǒng)修復(fù)器中識別使能對重要文件的修改的條件;當(dāng)重要文件已經(jīng)被修改時進行檢測;和當(dāng)修改沒有滿足所需條件時,將重要文件回拷到相應(yīng)的數(shù)據(jù)處理設(shè)備中。
通過結(jié)合附圖閱讀下面對本發(fā)明的更具體的描述,將更好地理解本發(fā)明的以上和其它方面、特征和優(yōu)點,其中圖1是其中實現(xiàn)了根據(jù)本發(fā)明的修復(fù)系統(tǒng)的數(shù)據(jù)傳輸系統(tǒng)的方框圖;圖2是表示在被監(jiān)控的計算機上的引導(dǎo)過程的流程圖;和圖3是表示當(dāng)檢測文件修改時系統(tǒng)修復(fù)器使用的方法的步驟的流程圖。
具體實施例方式
此后描述的發(fā)明最好利用運行諸如Windows或Linux那樣的操作系統(tǒng)的計算機來實現(xiàn),但是也可以利用具有操作本發(fā)明所必須的等同特性的任何操作系統(tǒng)來使用本發(fā)明。根據(jù)本發(fā)明的修復(fù)系統(tǒng)包括傳輸網(wǎng)絡(luò)10,例如互聯(lián)網(wǎng);普通局域網(wǎng)(LAN)12,其通過防火墻14連接到傳輸網(wǎng)絡(luò);和多臺要被監(jiān)控的計算機,例如連接到LAN12的計算機16和18,或者屬于虛擬專用網(wǎng)(VPN)并且直接連接到傳輸網(wǎng)絡(luò)10的計算機20和22。
專用網(wǎng)絡(luò)24通過防火墻26連接到傳輸網(wǎng)絡(luò)10,所述專用網(wǎng)絡(luò)24或者是真實的,例如專用LAN,或者是虛擬的(與VPN相關(guān)聯(lián)的一組服務(wù))所謂的修復(fù)層。應(yīng)當(dāng)最好例如通過使用專用適配器和/或建立子網(wǎng)絡(luò)(subnetting),來將修復(fù)層與網(wǎng)絡(luò)的其余部分物理地、邏輯地或者物理和邏輯地隔離開,此外,將構(gòu)成本發(fā)明的主要特征的系統(tǒng)修復(fù)器28連接到修復(fù)層24。這種系統(tǒng)修復(fù)器是專用“計算機”,負(fù)責(zé)遠程修補正被監(jiān)控的計算機的重要文件,所述計算機例如直接連接到修復(fù)層的計算機16和18,或者連接到網(wǎng)絡(luò)10的計算機20和22。必須注意系統(tǒng)修復(fù)器28也被用作被監(jiān)控的計算機的所有重要文件的原始副本連同它們的MD5簽名的存儲庫,以便加速處理。
如所提到的那樣,最好將系統(tǒng)修復(fù)器托管在專用計算機中。也可以將其通過虛擬化機制實現(xiàn)為被隔離的程序,或者甚至將其實現(xiàn)為提供一些稍后將要具體說明的預(yù)防措施的守護程序(駐留程序)。在這兩種情況下,由于系統(tǒng)恢復(fù)器呈現(xiàn)為只有它的系統(tǒng)恢復(fù)端口打開的“裸的(bare)”的黑盒,所以系統(tǒng)恢復(fù)器能夠不僅恢復(fù)其它系統(tǒng)而且同樣能夠恢復(fù)自身—除非系統(tǒng)恢復(fù)器被實現(xiàn)為現(xiàn)有計算機上的守護程序而沒有虛擬化(可能但不是優(yōu)選的實現(xiàn)),否則無論如何極不可能需要修復(fù)其自身。
對于系統(tǒng)修復(fù)器,優(yōu)選的隔離是像z系列(390)計算機線上的z/VM的虛擬化系統(tǒng),在支持它的硬件上的VMWARE(TM)(目前為Intel和AMD32位線計算機,和可能其它類型)。另一種隔離類型,盡管復(fù)雜并且服從競態(tài)條件,可能將有多組包含修復(fù)數(shù)據(jù)和系統(tǒng)的文件(具有隨機、隱藏的名稱),并且將它們作為重要文件自身來監(jiān)控。在內(nèi)核或內(nèi)核模塊中受保護的MD5表將允許確定未改變的(多個)副本。
這里假設(shè)被監(jiān)控的計算機可以是任何數(shù)據(jù)處理設(shè)備,例如通用計算機、有人值守或無人值守的用戶工作站、文件服務(wù)器、名稱服務(wù)器、數(shù)據(jù)庫服務(wù)器、網(wǎng)關(guān)、網(wǎng)絡(luò)服務(wù)器或在操作系統(tǒng)的控制下運行的任何其它類型的服務(wù)程序和服務(wù)程序組,其能夠當(dāng)其重要文件之一被修改時進行檢測。
在監(jiān)控計算機中,必須組織引導(dǎo)文件,使得修復(fù)層總是在系統(tǒng)的任何其它部分之前打開并且在修復(fù)層允許之前沒有系統(tǒng)的其它部分啟動。這暗示任何被監(jiān)控的計算機的引導(dǎo)將根據(jù)圖2的流程圖所示的方法來進行。
開始,啟動計算機的操作系統(tǒng)(步驟30)。然后,打開修復(fù)層(步驟32)并且計算機向系統(tǒng)修復(fù)器發(fā)送它的標(biāo)識和憑證(步驟34),所述系統(tǒng)修復(fù)器確定計算機是否被識別(步驟36)。如果沒有,終止此過程(步驟38)。如果計算機被識別,則有系統(tǒng)修復(fù)器向計算機給出OK,以便繼續(xù)引導(dǎo)過程(步驟40)。在此階段,計算機向系統(tǒng)修復(fù)器給出控制,以便在它的可能已經(jīng)被攻擊的計算機的所有重要文件的數(shù)據(jù)庫中進行替換(步驟42)。最后,繼續(xù)引導(dǎo)(步驟44)。
必須注意當(dāng)計算機第一次被連接到修復(fù)層時,并且在其被連接到任何其它類型的網(wǎng)絡(luò)之前,所有其重要文件的副本被發(fā)送到系統(tǒng)修復(fù)器,以便將它們作為“原始”文件存儲在它的數(shù)據(jù)庫中。
總之,修復(fù)層用來專門承載-用于識別的在被監(jiān)控的計算機和系統(tǒng)修復(fù)器之間的握手機制,-從可能被攻擊的計算機到系統(tǒng)修復(fù)器的重要文件通知改變,-從系統(tǒng)修復(fù)器到可能被攻擊的計算機的、并且如果必要,停止其通信行為的強制命令。注意這些命令由對所有其它進程具有強優(yōu)先權(quán)的本地守護程序在被攻擊的計算機上控制。
-被修改的文件到系統(tǒng)修復(fù)器的傳送,以用于攻擊后的分析,-重要文件的完整副本到被攻擊的計算機的傳送;以及-在極端情況下,在徹底的計算機清理之后關(guān)閉或重啟被攻擊的計算機自身。這將或者當(dāng)被攻擊的計算機沒有它預(yù)期的行為時或者當(dāng)一些文件由于操作系統(tǒng)將它們視作由不可停止的進程“正在使用”而不能被替換時需要。
還要注意重要文件,即使具有相同的名稱和路徑,對于給定的計算機(例如UNIX系統(tǒng)上的口令等)也是特有的,但是它們中的多數(shù)(系統(tǒng)程序)不是這樣的。所以,系統(tǒng)修復(fù)器對于具有相同名稱(除路徑之外)和相同MD5簽名的文件將只存儲一個副本。曾經(jīng)具有相同簽名的兩個文件的偶然情況的可能性據(jù)估計包括在2^47分之一和2^128分之一(對于SHA-1而言,2^160分之一)之間,并且我們只比較具有相同名稱的文件的MD5密鑰的事實使得沖突的風(fēng)險更低。此外,在不同計算機上具有相同名稱、但是不同MD5簽名—這是對于給定系統(tǒng)或程序的不同發(fā)布的情況—的文件將不會混淆。
使用用于參考副本的數(shù)目的計數(shù)器系統(tǒng)。其每當(dāng)加入新的參考副本時就遞增,而當(dāng)此數(shù)目減少時就遞減。當(dāng)計數(shù)器達到零時副本自身可以被壓縮,公知技術(shù)“無用單元收集”。
每當(dāng)文件被修改時,系統(tǒng)修復(fù)器都確定此修改是否已經(jīng)被計劃(系統(tǒng)或應(yīng)用程序升級、系統(tǒng)補丁、新軟件的安裝和卸載),并且因此是否已經(jīng)—根據(jù)安全所需的粒度和維護方便的需要—在存儲在文件和數(shù)據(jù)庫中的表中聲明。在所有其它情況中,所有被修改的文件都被恢復(fù)到它們的初始狀態(tài),其副本被保存在修復(fù)器系統(tǒng)中。
表(在文件或數(shù)據(jù)庫中)中每項的結(jié)構(gòu)為下面的一種(1)注冊自身到系統(tǒng)修復(fù)器作為進行修復(fù)的候選者的計算機的說明(specification)、憑證和指紋(這可以使用計算機名稱或網(wǎng)絡(luò)地址—IP、IPX、MAC或者將被認(rèn)為是對于所考慮的計算機組和連接它們的安全網(wǎng)絡(luò)來說最安全的無論哪個命名);(2)已經(jīng)被授權(quán)修改的每個重要文件的完整路徑(這些文件的列表通常用于在Windows及Linux包(RPM、DEB和其它格式)以及無格式(plain)UNIX tarball(“tar tvftarball-名稱”)的安裝/卸載包中很容易得到);(3)已經(jīng)授權(quán)此修改的經(jīng)計劃的時間窗,就是說,將只產(chǎn)生信息消息和普通行蹤日志(regular trace log),而不產(chǎn)生告警,并且起動自動修復(fù)過程。值得注意的是時間的知曉不需要精確到秒或者甚至分鐘,所以這里時間服務(wù)器(其可能自身包含安全缺陷)的使用不是強制的。
例如,表的邏輯結(jié)構(gòu)可能如下a.已經(jīng)被計劃修改的計算機的識別(例如,IP地址),b.包括其路徑和文件名的要被修改的文件的名稱(一般在提供給軟件的卸載表中可以找到),c.預(yù)期的改變類型(將被創(chuàng)建、修改、刪除或者“忽略(do not care)”),d.預(yù)期監(jiān)控(可以被改變,不必、必須改變一次或多次,必須只改變一次),e.最先允許的修改,f.最后允許的修改,g.用于在給定延遲中文件的修改的次數(shù)的計數(shù)器。
必須注意e和f項由系統(tǒng)管理員根據(jù)他想要安裝或更新系統(tǒng)的時間以成批的方式(in bulk mode)來填寫。在一些瑣細(xì)的但是經(jīng)常發(fā)生的情況中—例如添加、刪除或者改變關(guān)于用戶或者系統(tǒng)中的文件訪問參數(shù)的信息,這樣的項可以由在系統(tǒng)修復(fù)器中進行表插入和對目標(biāo)系統(tǒng)進行想要的修改的小(trivial)腳本來自動添加,對目標(biāo)系統(tǒng)進行想要的修改根據(jù)系統(tǒng)修復(fù)器對遠程系統(tǒng)的命令在例如一分鐘之后進行。
現(xiàn)在參照圖3來描述修復(fù)過程。當(dāng)在可能被攻擊的計算機的重要文件之一上檢測到“刪除”或“為修改而打開”調(diào)用時(步驟48),本發(fā)明的原理在于檢查是否存在常規(guī)的改變(步驟50),以便發(fā)出或不發(fā)出告警。此檢查最好由產(chǎn)生被異步例行程序(稱為守護程序)所捕獲的自動中斷的計算機實時地進行,所述異步例行程序向系統(tǒng)修復(fù)器發(fā)送消息。然而,該檢查也可以通過使用諸如Enterprise System Manager(ESM)of Symantec那樣的專用軟件周期性地掃描重要文件來延期地執(zhí)行(批處理方式)。
當(dāng)系統(tǒng)修復(fù)器收到可能被攻擊的計算機的調(diào)用或者來自批監(jiān)控安全系統(tǒng)的調(diào)用時,與可能被攻擊的計算機有關(guān)的表的一部分被調(diào)入主存儲器。在可能的替換實現(xiàn)中,可以通過大約每分鐘激活的精密計時程序(cron)或者象精密計時程序一樣(cron-like)的工作將包含當(dāng)前時間的表的所有行保存在存儲器中。
被修改的重要文件的名稱一到達,系統(tǒng)修復(fù)器就根據(jù)上述表檢查相應(yīng)的改變是否被計劃。受傷害的計算機和系統(tǒng)修復(fù)器的完全地相互識別由達到最新技術(shù)發(fā)展水平的技術(shù)來保證,所述達到最新技術(shù)發(fā)展水平的技術(shù)包括一但是不限于—MAC地址識別、IP地址控制、詢問/回答口令、最終公共密鑰識別的使用。盡管由于所有權(quán)的低的總費用(TCO)和此方案的高隔離度—因此安全—而導(dǎo)致修復(fù)層最好擁有和使用其自己的專用物理網(wǎng)絡(luò),但是可以考慮在現(xiàn)有的LAN、VPN中使用子網(wǎng)絡(luò),或者甚至通過上述的適當(dāng)?shù)母綦x在相同的物理計算機上共存。出于安全的理由,系統(tǒng)修復(fù)器不應(yīng)當(dāng)認(rèn)同任何遠程登錄企圖,并且最好不提供除了此修復(fù)服務(wù)之外的任何其它外部服務(wù),應(yīng)當(dāng)為此修復(fù)服務(wù)保留端口并且關(guān)閉所有其它端口。此系統(tǒng)修復(fù)器理想地應(yīng)當(dāng)為黑盒,并且其操作系統(tǒng)安裝在CD、CD/R、DVD或DVD-RW/DVD+RW,例如“àlaKnoppix”(Knoppix是只從CD運行而不使用硬盤的Linux系統(tǒng)),其恰好具有存儲其數(shù)據(jù)文件的足夠的可寫非易失性存儲器(小硬盤、閃存卡或者USB密鑰存儲器)以便存儲其數(shù)據(jù)文件。由于系統(tǒng)修復(fù)器必須保證無停止的操作,所以優(yōu)選的解決方案是具有兩個工作的系統(tǒng)修復(fù)器—主系統(tǒng)修復(fù)器和備用系統(tǒng)修復(fù)器,每當(dāng)主單元失效時備用系統(tǒng)修復(fù)器接管。兩個單元并行存儲信息,在正常情況下只有主單元答復(fù),當(dāng)主單元在超時延遲內(nèi)沒有答復(fù)時備用單元接管。
如果當(dāng)前時間落在實時系統(tǒng)的所計劃的時間周期之外,或者在批處理安全系統(tǒng)的情況下、那個周期不包括在此次運行和前一個運行之間的時間內(nèi),則系統(tǒng)修復(fù)器上產(chǎn)生告警。另外,運行所述改變。注意不使用與每個文件相關(guān)聯(lián)的時戳,因為如果入侵者得到超級用戶訪問,則它們不可靠。
技術(shù)人員將理解可以以任何形式產(chǎn)生告警,例如在計算機顯示器上和/或者過程的開始的特定消息。
如果所請求的文件的修改對應(yīng)于常規(guī)改變,該進程在所修改的文件已經(jīng)被復(fù)制到系統(tǒng)修復(fù)器的數(shù)據(jù)庫中以替換文件的以前的版本之后被返回到下一次調(diào)用的檢測(步驟52)。
在此階段,提到三種將要被考慮的重要文件是有用處的,這三種重要文件為一般數(shù)據(jù)文件、守護程序文件和核心系統(tǒng)文件。因此,該過程確定文件是否是一般數(shù)據(jù)文件(步驟54)。如果是,那么所有可以使用此文件的過程一被取消,就用存儲在系統(tǒng)修復(fù)器中的副本來替換該文件(步驟56)并且此過程返回到開始。
如果它不是一般數(shù)據(jù)文件,則確定該文件是否相當(dāng)于具有數(shù)據(jù)部分(配置文件)和可執(zhí)行部分(守護程序本身)的守護程序文件(步驟58)。在第一種情況中,不僅將必須恢復(fù)配置文件,而且也必須檢查和更新守護程序的可執(zhí)行部分,這意味著它重新讀取它的配置文件以便相應(yīng)地動作(步驟60)。在第二種情況中,將必須停止或者最終取消守護程序,從系統(tǒng)修復(fù)器帶回新的副本,并且重啟守護程序。
如果它不是守護程序文件,則確定該文件是否相當(dāng)于沒有重新引導(dǎo)就不能被安全地改變的核心系統(tǒng)文件(步驟62)。如果是,則用系統(tǒng)修復(fù)器中存儲的副本來替換該文件,但是此副本必須從系統(tǒng)修復(fù)器被下載到專用目錄(步驟64),從所述專用目錄它將在重新引導(dǎo)的時候被更新(這是在操作系統(tǒng)上可使用的一般方案,所以它們可以加載它們自己的更新。在Windows中,例如,要被重新引導(dǎo)文件列表存儲在注冊項中“System\CurrentControlSet\Control\SessionManager[PendingFileRenameOperations]”)。
如果它不是核心系統(tǒng)文件,則最后的情況是確定該文件是否是上面已經(jīng)提到的卸載文件之一(步驟66)。哈希表可以用來快速確定此情況。如果文件名存在于卸載文件中,則它由存儲在系統(tǒng)修復(fù)器中的副本來替換(步驟68)。如果不是這種情況,在將該文件復(fù)制到用于由系統(tǒng)管理員或安全管理員事后分析的SH之后,刪除該文件(步驟70)。在兩種情況中,該過程被返回到開始。
在任何情況中,當(dāng)已經(jīng)檢測到入侵時,有必要取消使用被攻擊的文件的所有進程(包括入侵者的會話),所述被攻擊的文件可以由系統(tǒng)表中的搜索來識別。對待此情況的另一種方法是在從多用戶方式適度地退出之后將受傷害的計算機臨時回復(fù)到只識別修復(fù)層的單用戶方式。系統(tǒng)修復(fù)器處于只讀訪問方式,以便避免對所復(fù)制的文件的任何修改或者避免當(dāng)復(fù)制原始文件時的任何文件創(chuàng)建。每當(dāng)啟動修復(fù)進程,除了對系統(tǒng)修復(fù)器的通信之外拒絕所有連接到被入侵的計算機的通信。所有通信被(適度地)關(guān)閉并且直到自愈過程結(jié)束才恢復(fù),以便防止另一個有害的干擾和/或入侵。在多數(shù)情況中,此過程將不需要重新引導(dǎo)。
一旦文件被復(fù)制,系統(tǒng)管理員進行所有改變以便保持和/或用適當(dāng)?shù)奈募湓谌肭种耙馕吨嘉募獊砀孪到y(tǒng)修復(fù)器機器,同時除了在內(nèi)核表(Linux和其它源碼開放系統(tǒng))或被監(jiān)控的文件(Windows和其它專用系統(tǒng))中聲明的通信連接之外、所有到被入侵的計算機的通信連接都被關(guān)閉并且中斷修復(fù)特征。當(dāng)被入侵的計算機的維護/更新結(jié)束時,將由被授權(quán)的系統(tǒng)管理員引入的改變復(fù)制到系統(tǒng)修復(fù)器,其然后從只讀訪問方式切換到可寫方式,并且當(dāng)此過程結(jié)束時返回到只讀方式。
注意盡管本發(fā)明是在網(wǎng)絡(luò)系統(tǒng)的情況下描述的,但是本領(lǐng)域的那些技術(shù)人員應(yīng)理解本發(fā)明的機制能夠作為各種形式的程序產(chǎn)品而被分布到任何類型的信息處理系統(tǒng),并且其可以等同地應(yīng)用而不用考慮用來實際執(zhí)行所述分布的信號承載介質(zhì)的特定類型。信號承載介質(zhì)的示例包括,而不是限制于,可記錄型介質(zhì),例如軟盤或CD ROM,和傳輸型介質(zhì),例如模擬或數(shù)字通信鏈路。
盡管已經(jīng)參照優(yōu)選實施例特別示出和描述了本發(fā)明,但是本領(lǐng)域的那些技術(shù)人員應(yīng)理解在不偏離本發(fā)明的精神和范圍的情況下可以在其中進行形式和細(xì)節(jié)上的各種修改。
權(quán)利要求
1.一種在包括傳輸網(wǎng)絡(luò)(10)的數(shù)據(jù)傳輸系統(tǒng)中的實時修復(fù)系統(tǒng),所述修復(fù)系統(tǒng)和至少具有需要防止遭受入侵者入侵的重要文件的數(shù)據(jù)處理設(shè)備(16、18、20或22)被連接到所述傳輸網(wǎng)絡(luò);所述修復(fù)系統(tǒng)特征在于它包括主系統(tǒng)修復(fù)器(28),其包括用于存儲所述重要文件的部件、用于識別使能對所述重要文件的修改的條件的部件、用于當(dāng)所述重要文件之一已經(jīng)被修改時進行檢測的部件、和用于當(dāng)對所述數(shù)據(jù)處理設(shè)備中的所述重要文件的修改沒有滿足所述條件時將原始重要文件回拷到所述數(shù)據(jù)處理設(shè)備中的部件。
2.根據(jù)權(quán)利要求1所述的實時修復(fù)系統(tǒng),包括所述系統(tǒng)修復(fù)器(28)連接到其上的修復(fù)層(24),其是物理和/或邏輯上與所述傳輸網(wǎng)絡(luò)(10)隔離的專用網(wǎng)絡(luò)。
3.根據(jù)權(quán)利要求2所述的實時修復(fù)系統(tǒng),其中所述修復(fù)層(24)是專用局域網(wǎng)(LAN)。
4.根據(jù)權(quán)利要求2所述的實時修復(fù)系統(tǒng),其中所述系統(tǒng)修復(fù)器(28)或者是通過虛擬化機制被隔離的程序或者是守護程序。
5.根據(jù)權(quán)利要求4所述的實時修復(fù)系統(tǒng),其中所述系統(tǒng)修復(fù)器(28)托管在專用計算機中。
6.根據(jù)權(quán)利要求5所述的實時修復(fù)系統(tǒng),其中所述數(shù)據(jù)處理設(shè)備是當(dāng)其重要文件之一被修改時能夠檢測的計算機、有人值守或無人值守的工作站、文件服務(wù)器、名稱服務(wù)器、數(shù)據(jù)庫服務(wù)器、網(wǎng)絡(luò)服務(wù)器或者在操作系統(tǒng)的控制下運行的任何類型的服務(wù)或服務(wù)組。
7.根據(jù)權(quán)利要求1至6中的任何一項所述的實時修復(fù)系統(tǒng),其中所述用于存儲被監(jiān)控的數(shù)據(jù)處理設(shè)備的重要文件的部件被適配為當(dāng)幾個數(shù)據(jù)處理設(shè)備使用所述重要文件時只存儲重要文件的一個副本,并且包括計數(shù)器,其每當(dāng)存儲新數(shù)據(jù)文件時遞增而當(dāng)所存儲的數(shù)據(jù)文件的數(shù)目減少時遞減。
8.根據(jù)權(quán)利要求7所述的實時修復(fù)系統(tǒng),其中所述用于識別使能對所述重要文件的修改的條件的部件包括表,其包括所監(jiān)控的數(shù)據(jù)處理設(shè)備的標(biāo)識和憑證、被授權(quán)修改的每個重要文件的完整路徑和在其中被授權(quán)此修改的經(jīng)計劃的時間窗。
9.根據(jù)權(quán)利要求1至8中的任何一項所述的實時修復(fù)系統(tǒng),其中所述重要文件是一般的數(shù)據(jù)文件、守護程序文件、核心系統(tǒng)文件或卸載文件。
10.根據(jù)權(quán)利要求1至9中的任何一項所述的實時修復(fù)系統(tǒng),還包括備份系統(tǒng)修復(fù)器,其存儲與主系統(tǒng)修復(fù)器相同的信息并且每當(dāng)所述主系統(tǒng)修復(fù)器故障時接管。
11.一種用于在包括傳輸網(wǎng)絡(luò)(20)的數(shù)據(jù)傳輸系統(tǒng)中實時修復(fù)至少一數(shù)據(jù)處理設(shè)備的方法,修復(fù)層和一個或多個具有需要防止遭受入侵者入侵的重要文件的數(shù)據(jù)處理設(shè)備(16、18、20、22)被連接到所述傳輸網(wǎng)絡(luò);所述方法特征在于包括以下步驟-在包括在所述修復(fù)層中的系統(tǒng)修復(fù)器(28)中存儲所述重要文件;-在所述系統(tǒng)修復(fù)器中識別使能對每個重要文件的修改的條件;-當(dāng)所述重要文件之一已經(jīng)被修改時進行檢測;和-當(dāng)對此文件的修改沒有滿足所述條件時,將所述所存儲的重要文件回拷到相應(yīng)的數(shù)據(jù)處理設(shè)備中。
12.根據(jù)權(quán)利要求11所述的方法,其中所述修復(fù)層(24)在數(shù)據(jù)傳輸系統(tǒng)的任何其它部分之前打開,并且在被所述修復(fù)層允許之前沒有系統(tǒng)的其它部分啟動。
13.根據(jù)權(quán)利要求12所述的方法,其中要被監(jiān)控的任何數(shù)據(jù)處理設(shè)備的引導(dǎo)過程包括步驟在啟動所述數(shù)據(jù)處理設(shè)備的操作系統(tǒng)并且打開所述修復(fù)層之后,向所述系統(tǒng)修復(fù)器(28)發(fā)送所述數(shù)據(jù)處理設(shè)備的標(biāo)識和憑證以用于控制。
14.根據(jù)權(quán)利要求11、12或13中的任何一項所述的方法,其中在檢測到所述修改時,所述系統(tǒng)修復(fù)器(28)在包含所述重要文件的修改的條件的表中檢查該修改是否滿足所述條件。
15.根據(jù)權(quán)利要求14所述的方法,其中所述檢測響應(yīng)于在所述數(shù)據(jù)處理設(shè)備中產(chǎn)生并且被發(fā)送到所述系統(tǒng)修復(fù)器(28)的中斷。
16.根據(jù)權(quán)利要求15所述的方法,其中當(dāng)修改的時間與被授權(quán)這種修改的經(jīng)計劃的時間窗不對應(yīng)時啟動修復(fù)過程,在所述修復(fù)過程中,存儲在所述系統(tǒng)修復(fù)器(28)中的重要文件的原始副本被回拷到相應(yīng)的數(shù)據(jù)處理設(shè)備中。
17.根據(jù)權(quán)利要求16所述的方法,其中重要文件是守護程序文件,并且還包括在所述守護程序文件的原始副本已經(jīng)被回拷之后更新所述守護程序文件的步驟。
18.根據(jù)權(quán)利要求16所述的方法,其中所述重要文件是核心系統(tǒng)文件,并且還包括在所述核心系統(tǒng)文件的原始副本已經(jīng)被回拷之后重新引導(dǎo)所述核心系統(tǒng)文件的步驟。
全文摘要
一種在包括傳輸網(wǎng)絡(luò)(10)的數(shù)據(jù)傳輸系統(tǒng)中的實時修復(fù)系統(tǒng),所述修復(fù)系統(tǒng)和至少是具有要防止遭受入侵者入侵的重要文件的數(shù)據(jù)處理設(shè)備(16、18、20或22)被連接到所述傳輸網(wǎng)絡(luò)。這種修復(fù)系統(tǒng)包括主系統(tǒng)修復(fù)器(28),其包括用于存儲重要文件的部件;用于識別使能對所述重要文件的修改的條件的部件、用于當(dāng)所述重要文件之一已經(jīng)被修改時進行檢測的部件、和用于當(dāng)對所述數(shù)據(jù)處理設(shè)備中的所述重要文件的修改沒有滿足所需條件時將原始重要文件回拷到所述數(shù)據(jù)處理設(shè)備中的部件。
文檔編號G06F21/56GK1823318SQ200480020255
公開日2006年8月23日 申請日期2004年4月23日 優(yōu)先權(quán)日2003年5月13日
發(fā)明者佛朗哥伊斯-多米尼克·阿明高德, 費爾南多·D·佩德拉佐利帕佐斯 申請人:國際商業(yè)機器公司