專利名稱:用于保護以防未授權(quán)使用計算機資源的方法和代理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機安全管理。具體涉及一種用于防止通過惡意的應用程序?qū)τ嬎銠C資源使用的訪問的方法和代理。
背景技術(shù):
自從幾年前開始,因特網(wǎng)在內(nèi)容和應用程序技術(shù)方面都發(fā)展很大。在因特網(wǎng)初期,網(wǎng)站僅包括文本,不久以后就引入了圖像。隨著因特網(wǎng)的發(fā)展,許多壓縮標準,如圖像、聲音和錄像文件,連同用于播放它們的程序(稱為播放器)都得到了發(fā)展。最初,這種文件在用戶的請求下被下載到用戶工作站,并只能由由適當?shù)牟シ牌髟谟脩舻奶囟ǖ囊笙陆鈮骸?br>
在環(huán)球網(wǎng)發(fā)展的自然進程中,當開始尋找一種方法能顯示出更好的、交互式的、生動的網(wǎng)頁時,Sun Microsystems Inc開發(fā)了Java,一種語言允許萬維網(wǎng)站點管理員編寫程序(一列命令-網(wǎng)絡可執(zhí)行命令),多數(shù)時候被下載到用戶工作站上而該用戶并不知道,并被其工作站上的瀏覽器執(zhí)行。這些可執(zhí)行命令用于,如提供圖像動畫和網(wǎng)絡漫游者屏幕上的其它圖像。這種可執(zhí)行命令含有接近用戶工作站資源的途徑,這將導致重大的安全問題。盡管某種程度的安全在Java語言中得到定義,但是不久巨大的安全漏洞就在此語言中被發(fā)現(xiàn)。
自從開發(fā)了Java后,Microsoft開發(fā)了ActiveX,它是另一種網(wǎng)絡可執(zhí)行格式,也被下載到工作站上。ActiveX也具有同類的安全問題。
因特網(wǎng)上充滿了網(wǎng)絡可執(zhí)行命令,用戶在知道或不知道的情況下被下載到組織內(nèi)的工作站上。這些代碼通常含有無害的函數(shù)。盡管通常是安全的,但是他們不能滿足組織內(nèi)被要求的安全策略。
一旦執(zhí)行,代碼可能堵塞網(wǎng)絡,引起對本地數(shù)據(jù)庫,工作站和服務器的嚴重的不可恢復的破壞,或?qū)е聦碜苑掌?工作站的信息未經(jīng)授權(quán)的檢索。這些部件可能出現(xiàn)在Java小應用程序程序、ActiveX組件、動態(tài)連接庫和其它目標代碼中,它們的使用正在以不平行的速度增加。這些小應用程序程序中的大多數(shù)未經(jīng)請求和未經(jīng)控制被下載到組織中。企業(yè)沒有辦法了解它們的存在或執(zhí)行,而且沒有系統(tǒng)適用于早期檢測并防止代碼被執(zhí)行。
在某些情況下,由于內(nèi)聯(lián)網(wǎng)和局域網(wǎng)的存在,該問題被惡化,這種網(wǎng)絡可以被未經(jīng)授權(quán)的人員使用訪問工作站并在其中實行惡意的行為。
安全問題被瀏覽器制造商部分地解決了,制造商讓用戶禁止使用可執(zhí)行程序。當然這不是合理的解決方法,因為所有的電子商務和廣告都是基于可執(zhí)行命令的使用。
在同一申請人的三個共同未決的專利申請中,1997年3月10日提交的IL 120420,1997年9月22日提交的IL 121815,和1997年11月27日提交的IL 122314,它們整體在此作為參考。描述了用于防止不需要的可執(zhí)行目標滲透到我們工作的局域網(wǎng)/廣域網(wǎng)和最終的工作站和服務器的方法和裝置。IL 122314更進一步地提供了一種方法,用于加強安全策略,有選擇性地防止在個人工作站中下載和執(zhí)行非期望的可執(zhí)行目標。
盡管在上述提到的保護個人工作站的專利申請中已經(jīng)做了許多工作,但是仍有一個問題待于解決通過已經(jīng)通過任何初期安全檢查(如網(wǎng)關(guān)安全策略)的應用程序而對本地資源惡意地使用。因為這些應用程序未違反這種安全策略,或是未通過初期的檢查點(如前面提到的以色列的專利申請中說明的配有安全策略檢查的網(wǎng)關(guān))的應用程序,因為這種初期檢驗點是不可用的,或是因為這些應用程序被直接在工作站上下載。對CPU資源這種惡意的使用會導致對工作站的數(shù)據(jù)、操作和硬件的破壞,在上述考慮到的情況下,直到破壞完成才能被發(fā)覺。
本發(fā)明的一個目的是提供一種能夠克服現(xiàn)有技術(shù)方法前述的缺點在工作站一級上提供有效的保護的方法和代理。
本發(fā)明的另一個目標是提供一種能夠被用于有效地防止通過工作站內(nèi)運行的應用程序而對該工作站資源惡意的使用的方法和代理。
該發(fā)明的其它目標和優(yōu)勢在下面的說明中顯而易見。
發(fā)明概述一方面,本發(fā)明是一種用于防止工作站內(nèi)運行的應用程序?qū)τ嬎銠C資源惡意使用的方法。該方法包括以下步驟a)提供服務列表,未指定的應用程序不允許訪問這些服務;b)當這種未指定的應用程序在工作站內(nèi)運行時,防止該應用程序直接訪問任何資源;c)分析訪問特定服務的任何直接或間接的請求,根據(jù)上面a)中定義的服務列表確定這種請求是否是被允許的;d)如果請求是允許的,就允許工作站處理它;和e)如果請求是不允許的,就禁止未指定的應用程序訪問被請求的資源。
其中該資源可能是任何的本地或遠程資源,包括,但不限于,存儲器分配,文件,目錄,對文件和目錄的操作如復制、刪除或壓縮,或任何其它的會導致工作站或其外圍設(shè)備中發(fā)生改變的操作。說明的但未限定的這種操作的實例包括訪問系統(tǒng)文件、配置信息、網(wǎng)絡通信、硬件設(shè)備(磁盤、調(diào)整解調(diào)器等)、CMOS數(shù)據(jù)(時間、日期等),或是使用資源如存儲器分配,過程創(chuàng)建,線程創(chuàng)建,以及使用剩余的CPU時間,剩余的磁盤空間,剩余的網(wǎng)絡通信,剩余圖形資源和系統(tǒng)或應用程序配置。
根據(jù)本發(fā)明的優(yōu)選實施方案服務列表作為查詢表被提供。
“未指定的應用程序”是指未被特別定義在預先設(shè)定的應用程序列表中的應用程序。根據(jù)發(fā)明的優(yōu)選實施方案,該預先設(shè)定的應用程序列表包括每個應用程序可利用資源的列表。
另一方面,本發(fā)明是一種用于保護工作站以防該工作站內(nèi)運行的未指定的應用程序?qū)τ嬎銠C資源惡意使用的代理。該代理包括a)用于檢測在工作站中運行的未經(jīng)指定的應用程序或應用程序模塊的裝置;b)用于確定被該未指定的應用程序使用的資源的請求的裝置;c)用于識別對資源利用的鏈式請求的裝置,其中該鏈式請求包括被未經(jīng)指定的應用程序所調(diào)用的資源生成的請求;d)用于確定該未經(jīng)指定的應用程序直接生成的請求是否是允許的裝置;e)用于確定該未經(jīng)指定的應用程序間接生成的作為鏈式請求的請求是否是不允許的裝置;f)如果確定請求是不允許的或經(jīng)未指定的應用程序所直接生成的請求是不允許的,那么用于防止該鏈式請求被處理,否則就允許其被處理的裝置。
根據(jù)本發(fā)明的優(yōu)選實施方案,用于確定是該未經(jīng)指定的應用程序直接或間接生成的請求是允許的裝置包括查詢表,表中包括未經(jīng)指定的應用程序所不允許訪問的服務的列表。在發(fā)明的另一優(yōu)選實施方案中,代理包括預先設(shè)定的應用程序列表,該應用程序列表包括可以被各種應用程序利用的資源的列表。
上述提到的和許多其它的本發(fā)明的特征和優(yōu)點可以參考附圖通過下面優(yōu)選實施方案的說明性而非限定性的實例得到更好的理解。
附圖簡述
圖1示意地說明了不同的應用程序和它們的請求及相關(guān)的操作;圖2示意地說明該能導致機器出錯的應用程序的細節(jié);圖3說明嘗試間接的不允許的資源利用的情況。
優(yōu)選實施方案詳細說明這些情況的實例在圖1-3中被示出。參考圖1,三個不同的應用程序被表示出來,被標為“應用1”到“應用3”。進程發(fā)生在三個不同的層次上用戶模式(標識為“U.M.”),內(nèi)核模式(標識為“K.M.”)和硬件(標識為“H.W.”)。這三個不同的模式在圖上用直線示意性的分離開?!皯?”、“應用2”和“應用3”應用程序在用戶模式下操作?!皯?”是“打開文件”輸入/輸出請求。這一請求被傳遞到輸入/輸出管理器,此管理器反過來引用磁盤執(zhí)行這一被請求的操作。過濾器(在圖中標識為“S7過濾器”)分析請求以確定根據(jù)安全策略它是否允許的。如果是允許的,它就被允許繼續(xù)進行到輸入/輸出管理器,它處理對磁盤的請求。
另一方面,“應用2”生成一個包括網(wǎng)絡的請求,即“打開到文件服務器的連接”的請求。僅僅在過濾器S7確定請求被允許時,網(wǎng)絡管理器才被允許處理這一請求。同樣地,“應用3”生成存儲器分配請求,該請求被過濾器檢測,如果是被允許的,它就被傳遞到存儲器管理器然后對存儲器進行操作。
內(nèi)核模式和與此相對的硬盤中各種請求的操作,在經(jīng)過過濾器檢測并允許它們以后,與日常計算機的傳統(tǒng)操作是一致的,并為本領(lǐng)域的技術(shù)人員所熟知,因此為了簡化這里不再詳細說明。
參看圖2,能引起機器出錯的示例性應用程序的細節(jié)被示出。在這一實例中,“應用1”生成1000個新的進程的請求。如果本發(fā)明中的系統(tǒng)不存在,這1000個請求將被過程管理器傳遞給CPU,并使用CPU的所有資源,這樣阻塞機器的操作。然而,如果發(fā)明中的過濾器存在,過濾器可以預先設(shè)定同一應用程序允許生成僅僅有限數(shù)量的進程。因此,如果大量新的進程被單一的應用程序所請求,這些進程超出了預先設(shè)定的界限,那么過濾器S7將不允許該應用程序向過程管理器傳遞,這樣以避免耗盡機器資源。
圖3說明了嘗試間接的不被允許的資源利用的情況。在這一實例中,“應用1”是一種不允許把請求發(fā)送給輸入/輸出管理器的類型。如果“應用1”嘗試這樣做,它將被S7過濾器阻斷,除非請求遵循S7預先設(shè)定的安全策略。因此,“應用1”可以被編程以便實現(xiàn)過程間通信,即將其請求通知給更進一步的進程APPX,APPX被允許生成“應用1”所不允許生成的對輸入/輸出管理器的請求。在這種情況下,用戶模式和內(nèi)核模式之間的S7過濾器被繞過。為了防止這種情況,更進一步的過濾器S7被設(shè)置在所有的通信進程之間,并阻止被從一個過程傳遞到另一個過程的任何請求(在例子中,從“應用1”到APPX),這種請求在第一個過程中不被允許直接生成。
當然,過濾器S7不是物理過濾器,而是邏輯過濾器,這一點對于技術(shù)人員是顯然的。通過使用多種不同的、根據(jù)系統(tǒng)涉及的特定要求由技術(shù)人員預先確定的分析過程和標準,這種邏輯過濾器可以以多種方式實現(xiàn)。
因此,所有上面的說明和實例僅僅為了說明而被提供,除附加的權(quán)利要求所定義的以外,并非意欲在任何方面限定本發(fā)明。
權(quán)利要求
1.一種防止工作站內(nèi)運行的應用程序程序?qū)τ嬎銠C資源的惡意使用的方法,該方法包括下列步驟a)提供服務列表,未指定的應用程序不允許訪問這些服務;b)當這種未指定的應用程序在工作站內(nèi)運行時,防止該應用程序直接訪問任何資源;c)分析訪問特定服務的任何直接或間接的請求,根據(jù)上面a)中定義的服務列表確定這種請求是否是被允許的;d)如果請求是允許的,就允許工作站處理它;和e)如果請求是不允許的,就禁止未指定的應用程序訪問被請求的資源。其中該資源可能是任何的本地或遠程資源,包括,但不限于,存儲器分配,文件,目錄,對文件和目錄的操作如復制、刪除或壓縮,或任何其它的會導致工作站或其外圍設(shè)備中發(fā)生改變的操作。
2.根據(jù)權(quán)利要求1中的方法,其中服務列表作為查詢表而被提供。
3.根據(jù)權(quán)利要求1或2中的方法,其中未經(jīng)指定的應用程序是在預先設(shè)定的應用程序列表中未被特別定義的應用程序。
4.根據(jù)權(quán)利要求3的方法,其中預先設(shè)定的應用程序列表包括各種應用程序都可利用的資源列表。
5.一種保護工作站以防該工作站內(nèi)運行的未經(jīng)指定的應用程序?qū)τ嬎銠C資源惡意使用的代理,包括a)檢測在工作站中運行的未經(jīng)指定的應用程序的裝置;b)確定被該未經(jīng)指定的應用程序使用的資源的請求的裝置;c)識別對資源利用的鏈式請求的裝置,其中該鏈式請求包括被未經(jīng)指定的應用程序所調(diào)用的資源生成的請求;d)確定該未經(jīng)指定的應用程序直接生成的請求是否是允許的裝置;e)確定該未經(jīng)指定的應用程序間接生成的作為鏈式請求的請求是否是不允許的裝置;f)如果確定請求是不允許的或是未經(jīng)指定的應用程序所直接生成的請求是不允許的,那么用于防止該鏈式請求被處理,否則就允許其被處理的裝置。
6.根據(jù)權(quán)利要求5的代理,其中用于確定該未經(jīng)指定的應用程序直接或間接生成的請求是否是允許的裝置包括一個查詢表,該表包括未經(jīng)指定的應用程序不允許訪問的服務的列表。
7.根據(jù)權(quán)利要求5或6的代理,其中該資源可以是,但并不限于,任何的本地或遠程資源,包括存儲器分配,文件,目錄,對文件和目錄的操作如復制、刪除或壓縮,或任何其它會導致工作站或其外圍設(shè)備中永久改變的操作。
8.根據(jù)權(quán)利要求5至7中任一個的代理,包括應用程序預先設(shè)定的列表,它包含每個應用程序可利用資源的列表。
全文摘要
防止工作站內(nèi)運行的應用程序?qū)τ嬎銠C資源惡意使用的方法和代理。確定未指定的應用程序不允許訪問的服務的列表,而且當這種未指定的應用程序在工作站內(nèi)運行時,應用程序被阻止直接訪問任何資源。對特定服務的訪問的任何直接或間接的請求被分析,以確定根據(jù)此服務列表是否這種請求是允許的。如果它是允許的,工作站就處理該請求。如果請求是不允許的,則阻止未指定的應用程序訪問被請求的資源。資源可以是任何本地資源或遠程資源,例如存儲器分配,文件,目錄,對目錄和文件的操作如復制、刪除或壓縮,或其它導致工作站或其外圍設(shè)備永久改變的操作。查詢表包括未指定的應用程序不允許訪問的服務列表,該表用于確定未指定的應用程序生成的直接或間接的請求是否是允許的。代理包括預先設(shè)定的應用程序列表,該列表包括各種應用程序可以利用的資源列表。
文檔編號G06F21/22GK1299478SQ99805763
公開日2001年6月13日 申請日期1999年2月25日 優(yōu)先權(quán)日1998年3月2日
發(fā)明者D·埃爾格雷斯, F·本阿德雷特 申請人:電腦相關(guān)想象公司