專利名稱:用于分發(fā)安全策略的方法和系統(tǒng)的制作方法
(1)技術(shù)領域所述技術(shù)大致涉及防止對計算機系統(tǒng)漏洞的利用的系統(tǒng)。
(2)背景技術(shù)雖然因特網(wǎng)已經(jīng)在幫助計算機系統(tǒng)通信以及電子商務上獲得了巨大的成功,連接到因特網(wǎng)的計算機系統(tǒng)已經(jīng)處在黑客幾乎持續(xù)的攻擊之下,以尋求破壞它們的運行。許多攻擊尋求利用包括在這些計算機系統(tǒng)上執(zhí)行的應用程序和其它計算機程序的軟件系統(tǒng)的漏洞。軟件系統(tǒng)的開發(fā)者以及企業(yè)計算機系統(tǒng)的管理者花費大量人力和財力以求識別并移除漏洞。然而由于軟件系統(tǒng)的復雜性,事實上不可能在軟件系統(tǒng)發(fā)布前識別并移除所有的漏洞。當軟件系統(tǒng)發(fā)布后,開發(fā)者可以通過各種方式得知漏洞。無惡意的小組可以識別出一個漏洞并可以悄悄地告知開發(fā)者,這樣該漏洞可以在被黑客識別并利用之前就被移除。如果黑客首先識別出了一個漏洞,開發(fā)者可能無法了解到該漏洞,直到它被利用——某些時候帶有災難性的后果。
不論開發(fā)者如何得知一個漏洞,開發(fā)者通常會開發(fā)并向系統(tǒng)管理者分發(fā)“補丁”或?qū)浖到y(tǒng)升級以移除漏洞。如果漏洞還沒有被利用(如,可能沒有被黑客所知),這樣開發(fā)者可以設計、實施、測試并通過正常渠道分發(fā)一個補丁。如果該漏洞已經(jīng)被廣泛利用了,這樣開發(fā)者就會匆忙地發(fā)布一個補丁,不帶有通常情況下所用的顧慮。當補丁被分發(fā)到計算機系統(tǒng)的管理者時,它們負責安排并安裝補丁以移除漏洞。
不幸的是,管理者通常因為各種各樣的原因延遲了為了移除漏洞的補丁安裝。當補丁被安裝后,軟件系統(tǒng)和/或執(zhí)行它的計算機系統(tǒng)可能需要關(guān)機并重新啟動。如果該漏洞是存在于對組織的成功至關(guān)重要的軟件系統(tǒng)中的,那么管理者需要分析保持軟件系統(tǒng)帶著遭受攻擊的風險繼續(xù)和運行以及關(guān)閉企業(yè)的關(guān)鍵資源來安裝補丁之間的權(quán)衡。一些管理者會延遲補丁的安裝因為他們害怕由于草率的發(fā)布,軟件可能沒有被適當?shù)臏y試并帶有非預期的副作用。如果補丁含有非預期的副作用,那么該軟件系統(tǒng)、該計算機系統(tǒng),或者一些其他受到補丁影響的軟件組件可能會被補丁本身關(guān)閉。在決定是否安裝補丁時,管理者需要把非預期副作用考慮進去。這些管理者會延遲安裝補丁直到來自其他的經(jīng)驗表明沒有嚴重的非預期副作用。
入侵檢測系統(tǒng)已經(jīng)發(fā)展到可被用來識別一個企圖是否被用來利用一個已知的還未被修補的漏洞。這些入侵檢測系統(tǒng)可被用于防止對最近發(fā)現(xiàn)的還沒有開發(fā)或安裝過補丁的漏洞的利用。這些入侵檢測系統(tǒng)會為每種利用漏洞的方法定義一個“簽名”。例如,如果一個漏洞可被通過發(fā)送一個特定類型的含有特定屬性的信息來利用,那么用于這個利用的簽名會詳細說明該類型和屬性。當一個安全執(zhí)行事件發(fā)生時,諸如接收信息,入侵檢測系統(tǒng)檢查它的簽名以判斷是否有任何簽名匹配該安全執(zhí)行事件。如果有,入侵檢測系統(tǒng)會采取動作來防止該利用,諸如丟棄該信息。
用于對最近發(fā)現(xiàn)的漏洞的利用的簽名可通過多種方式生成。入侵檢測系統(tǒng)的開發(fā)者在他們得知了新的利用時會創(chuàng)建并分發(fā)新的簽名。管理者然后可安裝新的簽名以防止該利用。然而開發(fā)者可能不會為所有已知的利用提供簽名。例如,漏洞可能在一個開發(fā)者不支持的特定用途的引用程序中。為了防止對這些漏洞的利用,入侵檢測系統(tǒng)會允許管理者創(chuàng)建他們自己的簽名。
一組一個或多個簽名被認為是一個安全策略。入侵檢測系統(tǒng)的開發(fā)者會提供多種安全策略。例如,開發(fā)者會提供一個定義操作系統(tǒng)漏洞的簽名的安全策略以及許多特定用于一個應用程序或一類應用程序的其他安全策略。同樣地,管理者會定義一個特定用于企業(yè)使用的定制應用程序的安全策略。
由于入侵會發(fā)生在任何一個操作系統(tǒng)或應用程序內(nèi)的各個點,入侵檢測系統(tǒng)已經(jīng)被開發(fā)為檢測并防止在這些點處的漏洞的利用。例如,一入侵檢測系統(tǒng)會被開發(fā)為防止對可在通信協(xié)議的網(wǎng)絡層的上被檢測到的漏洞的利用,同時另一個入侵檢測系統(tǒng)會被開發(fā)為防止對可在訪問文件時被檢測到的漏洞的利用。每個入侵檢測系統(tǒng)的開發(fā)者可提供他們自己的執(zhí)行過程以及安全策略,這些需要被分發(fā)到每個需要被保護的計算機系統(tǒng)。此外,任何對執(zhí)行過程或安全策略的升級同樣需要被分發(fā)到需要被保護的計算機系統(tǒng)。
用于擁有大量計算機系統(tǒng)的企業(yè)的安全策略的分發(fā)以及升級可能是一件復雜而且耗時的任務。每個安全策略需要被提供給每個計算機系統(tǒng)并隨后被提供給安裝在計算機系統(tǒng)內(nèi)的合適的入侵檢測系統(tǒng)。由于入侵檢測系統(tǒng)的開發(fā)者通常互相獨立地開發(fā)他們自己的系統(tǒng),每個入侵檢測系統(tǒng)會具有專有的定義和分發(fā)安全策略的機制。企業(yè)的系統(tǒng)管理者可能需要了解這些機制中的每一個以便有效地使用該入侵檢測系統(tǒng)。
需要一種能提供統(tǒng)一的方式在計算機系統(tǒng)分發(fā)安全策略給負責執(zhí)行安全策略的組件的機制。
(3)發(fā)明內(nèi)容提供了一種分發(fā)和執(zhí)行安全策略的方法和系統(tǒng)。一種分布式的防火墻系統(tǒng)包括一策略服務器組件、防火墻代理以及執(zhí)行引擎。在需要被保護的主機計算機系統(tǒng)執(zhí)行的防火墻代理從策略服務器組件為負責在主機計算機系統(tǒng)執(zhí)行安全策略的執(zhí)行引擎接收安全策略。安全策略含有規(guī)則,每個規(guī)則提供了一個條件以及當條件被滿足時將要執(zhí)行的動作。一個規(guī)則也含有一規(guī)則類型(也被稱為是安全類型),它被防火墻代理用來識別負責執(zhí)行規(guī)則的執(zhí)行引擎。防火墻代理可分發(fā)安全策略給操作在用戶態(tài)和核心態(tài)的執(zhí)行引擎。執(zhí)行引擎可為安全執(zhí)行提供分層接入。為了分發(fā)已經(jīng)在主機計算機系統(tǒng)接收到的安全策略,防火墻代理根據(jù)規(guī)則類型的一部分識別出一個規(guī)則是應用于哪個執(zhí)行引擎。防火墻代理然后將規(guī)則分發(fā)給識別出的執(zhí)行引擎,然后執(zhí)行引擎執(zhí)行規(guī)則。
(4)
圖1示出了一則實施例中的分布式的防火墻系統(tǒng)框圖。
圖2示出了一則實施例中在主機計算機系統(tǒng)上執(zhí)行的分布式防火墻系統(tǒng)的一部分組件的框圖。
圖3示出了一則實施例中防火墻代理的分發(fā)策略組件的處理過程流程圖。
圖4示出了一則實施例中流管理器組件的處理過程流程圖。
圖5示出了一則實施例中用于特定層的執(zhí)行引擎的處理過程流程圖。
(5)具體實施方式
提供了一種分發(fā)并執(zhí)行安全策略的方法和系統(tǒng)。一個分布式的防火墻系統(tǒng)包括一策略服務器組件、防火墻代理以及執(zhí)行引擎。在需要被保護的主機計算機系統(tǒng)執(zhí)行的防火墻代理從策略服務器為負責在主機計算機系統(tǒng)執(zhí)行安全策略的執(zhí)行引擎接收安全策略。安全策略含有一執(zhí)行范圍以及相關(guān)規(guī)則。執(zhí)行范圍定義了相關(guān)規(guī)則被應用到的一個處理或應用的屬性。規(guī)則提供了一個條件以及當條件被滿足時將要采取的動作。規(guī)則也含有一規(guī)則類型(也被稱為是安全類型),它被防火墻代理用來識別負責執(zhí)行規(guī)則的執(zhí)行引擎。防火墻代理可分發(fā)安全策略給操作在用戶態(tài)和核心態(tài)的執(zhí)行引擎。執(zhí)行引擎可為分布式防火墻提供分層處理。例如,執(zhí)行引擎可被安裝在主機計算機系統(tǒng)以防止在ISO-7層參考模型中的多個層上的入侵。網(wǎng)絡層、傳輸層、以及會話層各自可以擁有一個執(zhí)行引擎,它被開發(fā)用于檢測在那一層的入侵企圖。為了分發(fā)已經(jīng)在主機計算機系統(tǒng)接收到的安全策略,防火墻代理根據(jù)規(guī)則類型的一部分識別出一個規(guī)則是應用于哪個執(zhí)行引擎。防火墻代理然后將規(guī)則分發(fā)給識別出的執(zhí)行引擎,然后執(zhí)行引擎執(zhí)行規(guī)則。當接收到一個規(guī)則時,執(zhí)行引擎可以分發(fā)該規(guī)則給它的適當?shù)淖咏M件。例如,防火墻代理可分發(fā)所有的指向核心態(tài)執(zhí)行引擎的規(guī)則給一個單獨的核心態(tài)安全組件,然后核心態(tài)安全組件分發(fā)這些規(guī)則給執(zhí)行引擎。這樣,分布式防火墻系統(tǒng)提供了一個用于主機計算機系統(tǒng),向為不同層提供保護的執(zhí)行引擎分發(fā)安全策略規(guī)則的單獨機制。
在一則實施例中,一個安全策略包括指定條件、動作以及任選項外的規(guī)則。例如,一個規(guī)則可指出一個應用程序不能在除了端口80以外的任何網(wǎng)絡端口上接收信息。該規(guī)則的條件可在當從除了端口80以外的網(wǎng)絡端口上收到一個信息時被滿足,并且該動作會導致信息被丟棄。另一個例子是,一個規(guī)則可指出當一個應用程序試圖在網(wǎng)絡端口80上發(fā)送信息時,將索要一個來自該規(guī)則所執(zhí)行的計算機系統(tǒng)的用戶的授權(quán)。該規(guī)則可被根據(jù)他們的行為來分類成規(guī)則類型或安全類型。例如,帶有網(wǎng)絡安全類型的規(guī)則可被導向至用于網(wǎng)絡通信的安全執(zhí)行。每個安全類型可含有它自己的安全組件,用于執(zhí)行該安全類型的規(guī)則。用于指定安全策略的語言被描述在美國專利申請?zhí)朜o.10/882,438,題為“表達安全策略的語言”(Languages for Expressing Security Policies),遞交于2004年7月1日,結(jié)合在此作為參考,。
規(guī)則的條件、動作以及例外可被指定為表達式。規(guī)則可被語義上表示為“IF條件THEN動作EXCEPT例外”。一個規(guī)則的條件為執(zhí)行規(guī)則的安全執(zhí)行動作時的環(huán)境表達式。一個動作是當條件被滿足時將要執(zhí)行的行動的表達式。一個規(guī)則可含有多個動作。一個例外是即使條件滿足時也不會執(zhí)行動作的表達式。一個條件可為靜態(tài)的或動態(tài)的。一個靜態(tài)的條件是一個涉及,例如,硬編碼的文件列表。一個動態(tài)條件可以是一個,例如,執(zhí)行一個詢問來判斷一個文件列表是否匹配一個預先提供的準則。安全執(zhí)行動作可包括允許一個產(chǎn)生安全執(zhí)行事件的請求、拒絕該請求、索要用戶的輸入、通知用戶、以及諸如此類。其他規(guī)則結(jié)構(gòu)也是可能的。例如,一個“else”結(jié)構(gòu)可被添加以當條件為假時執(zhí)行另外選擇的動作。
圖1示出了一則實施例中的分布式的防火墻系統(tǒng)的框圖。一個企業(yè)可以擁有一個網(wǎng)絡系統(tǒng)100,它包括策略服務器計算機系統(tǒng)110以及主機計算機系統(tǒng)120。一系統(tǒng)管理者使用策略服務器計算機系統(tǒng)的一個策略服務器組件111來準備并向主機計算機系統(tǒng)分發(fā)存儲在安全策略存儲器112中的安全策略。每個主機計算機系統(tǒng)包括一個防火墻代理121、執(zhí)行引擎122以及一個策略存儲器123。防火墻代理提供了一個中央機制,通過它主機計算機系統(tǒng)接收并分發(fā)安全策略給該主機計算機系統(tǒng)的執(zhí)行引擎。當接收到來自安全服務器計算機系統(tǒng)的安全策略時,主機計算機系統(tǒng)的防火墻代理將安全策略存儲在策略存儲單元中。防火墻代理隨后就按照順序原則處理安全策略并將規(guī)則提供給合適的執(zhí)行引擎。防火墻代理可組合多種安全策略、排序安全策略的規(guī)則、并動態(tài)將對安全策略的改動或會影響到安全策略執(zhí)行的系統(tǒng)配置通知執(zhí)行引擎。這些組合、排序、以及通知被描述在美國專利申請?zhí)朜o.10/966,800,題為“組合安全策略的方法和系統(tǒng)”(Method and System for Merging Security Policies),遞交于2004年10月14日,結(jié)合在此作為參考。執(zhí)行引擎然后執(zhí)行規(guī)則,通過將它們應用到網(wǎng)絡事件。執(zhí)行引擎可提供各種類型的安全執(zhí)行。一個執(zhí)行引擎可檢測一個企圖執(zhí)行特定行為并阻擋該企圖。例如,一個被病毒感染的應用程序會企圖刪除操作系統(tǒng)的特定文件。一個和應用程序執(zhí)行在相同進程空間的安全引擎可檢測并阻擋刪除文件的企圖。一個用于執(zhí)行行為阻擋的安全引擎被描述在美國專利申請?zhí)朜o.10/832,798,題為“一種通過安全虛擬機執(zhí)行安全策略的方法和系統(tǒng)”(A Method and System for Enforcing a Security Policyvia a Security Virtual Machine),遞交于2004年4月27日,結(jié)合在此作為參考。執(zhí)行引擎可適應于將規(guī)則應用到各種協(xié)議的網(wǎng)絡事件中,例如IP、ICMP、TCP、FTP、DNS、HTTP、RPC,以及諸如此類。防止對漏洞利用的技術(shù)被描述在美國專利申請?zhí)朜o.10/955,963,題為“過濾通信以防止對軟件漏洞的利用的方法和系統(tǒng)”(Method and System for Filtering Communications toPrevent Exploitation of a Software Vulnerability),遞交于2004年9月30日,結(jié)合在此作為參考。
圖2示出了一則實施例中在主機計算機系統(tǒng)上執(zhí)行的分布式防火墻系統(tǒng)的組件的框圖。主機計算機系統(tǒng)包括防火墻代理組件220、核心態(tài)組件230、以及應用程序用戶態(tài)組件240。防火墻代理組件包括一接收策略組件221、一解析策略組件222、以及一分發(fā)策略組件223。防火墻代理組件也包括一策略存儲器224以及一配置管理器225。接收策略組件接收由策略服務器組件系統(tǒng)提供的安全策略并將策略存儲在策略存儲器中。解析策略組件從策略存儲器中檢索策略并將它們轉(zhuǎn)換為用于執(zhí)行引擎處理的低級語言。分發(fā)策略組件接收到已解析的安全策略并將安全策略的規(guī)則分發(fā)給合適的執(zhí)行引擎。配置管理器提供用于根據(jù)當前主機計算機系統(tǒng)的配置判斷哪個規(guī)則該被分發(fā)給哪個執(zhí)行引擎的配置信息。
核心態(tài)組件包括執(zhí)行引擎231。流管理器組件233,以及協(xié)議鉤234。組件可被分層從第0層至第N層,它們相應于ISO 7層參考模型。每一層可含有一個相關(guān)的協(xié)議鉤、流管理器、以及特定于層的執(zhí)行引擎,特定于層的解析網(wǎng)絡事件、并且對那一層執(zhí)行由防火墻代理提供的規(guī)則。用于每一層的規(guī)則被存儲在一個特定于那層的規(guī)則存儲器232中。流管理器組件負責攔截網(wǎng)絡事件并且調(diào)用相應的執(zhí)行引擎來執(zhí)行規(guī)則。每個流管理器組件從負責在相應層檢測網(wǎng)絡事件的相應的協(xié)議鉤接收網(wǎng)絡事件。應用程序用戶態(tài)組件可被提供為一個動態(tài)連接庫,它連接到一個應用程序,使用一種在整體體系結(jié)構(gòu)上類似核心態(tài)組件的方法提供分層安全。
實現(xiàn)分發(fā)系統(tǒng)的計算機設備可包括一個中央處理單元、存儲器、輸入設備(如,鍵盤和指針設備)、輸出設備(如,顯示設備)、以及存儲設備(如,磁盤驅(qū)動器)。存儲器以及存儲設備是計算機可讀介質(zhì),它可包括實現(xiàn)分發(fā)系統(tǒng)的指令。此外,數(shù)據(jù)結(jié)構(gòu)以及信息結(jié)構(gòu)可被存儲或通過數(shù)據(jù)傳輸介質(zhì)傳輸,諸如在通信鏈路上的信號。各種通信鏈路可被使用,諸如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)、點對點撥號連接以及蜂窩電話網(wǎng)絡,等等。
分發(fā)系統(tǒng)可實現(xiàn)在多種操作環(huán)境中包括個人計算機、服務器計算機、手持或膝上設備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程消費品電器、數(shù)字相機、網(wǎng)絡PC、小型機、大型機計算機、包括任何上述系統(tǒng)或設備的分布式計算環(huán)境,等等。主機計算機系統(tǒng)可為蜂窩電話、個人數(shù)字助理、智能電話、個人計算機、可編程消費品電器、數(shù)字相機,等等。
分發(fā)系統(tǒng)可被描述為計算機可執(zhí)行指令的通常格式,諸如由一個或多個計算機或其他設備執(zhí)行的程序模塊。通常有,程序模塊包括執(zhí)行特定任務或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)、以及諸如此類。典型地,程序模塊的作用可按照各種實施例的要求被組合或分散。
圖3示出了一則實施例中防火墻代理的分發(fā)策略組件的處理過程流程圖。當從解析策略組件接收到策略后,組件識別了規(guī)則要應用到的執(zhí)行引擎并將規(guī)則分發(fā)到識別出的執(zhí)行引擎。在塊301-307中,組件循環(huán)選擇安全策略。在塊301中,組件選擇了下一個安全策略。在判斷塊302中,如果所有安全策略都已經(jīng)被選擇,那么組件完成,否則組件繼續(xù)到塊303。在塊303-307中,組件循環(huán)處理所選擇的安全策略中的每個規(guī)則。在塊303中,組件選擇了所選擇的安全策略中的下一個規(guī)則。在判斷塊304中,如果所選擇的安全策略中的所有規(guī)則都已經(jīng)被選擇了,那么組件循環(huán)至塊301以選擇下一個安全策略,否則組件繼續(xù)到塊305。在塊305中,組件識別了所選擇的安全規(guī)則的組件類型(或是安全類型)。在塊306中,組件識別了負責執(zhí)行所識別出的規(guī)則類型的執(zhí)行引擎。在塊307中,組件將所選擇的規(guī)則提供給已識別的組件并且隨后循環(huán)到塊303以選擇所選擇的安全策略中的下一個規(guī)則。
圖4示出了一則實施例中流管理器組件的處理過程流程圖。流管理器組件被遞送了一個網(wǎng)絡事件并調(diào)用合適的執(zhí)行引擎用以處理該網(wǎng)絡事件。流管理器組件可被實現(xiàn)為用于每一層的并只為該層處理網(wǎng)絡事件的分開的流管理器,或是可被實現(xiàn)為替所有層的處理網(wǎng)絡事件的單個流管理器組件。在示出的實施例中,流管理器組件為所有的層處理所有網(wǎng)絡事件。在判別塊401-403中,組件識別了網(wǎng)絡事件要應用到的層。在塊411-413,組件隨后為那一層調(diào)用相關(guān)聯(lián)的執(zhí)行引擎。組件隨后完成。流管理器可為每個網(wǎng)絡連接保持一個單獨的流。執(zhí)行引擎以及流管理器可特定于層以及層實現(xiàn)的協(xié)議。例如,當一個連接在分組層使用傳輸控制協(xié)議(TCP)或用戶數(shù)據(jù)報協(xié)議(UDP)時,流管理器調(diào)用合適該協(xié)議的執(zhí)行引擎。被調(diào)用的執(zhí)行引擎可為追蹤從一個動作到下一個動作的狀態(tài)信息創(chuàng)建數(shù)據(jù)結(jié)構(gòu)。每個由用戶態(tài)執(zhí)行引擎保護的應用程序可同樣具有一個帶有用于每個連接的單獨流的流管理器。
圖5示出了一則實施例中用于特定層的執(zhí)行引擎的處理過程流程圖。作為分布式防火墻系統(tǒng)一個組件的執(zhí)行引擎被提供了一個網(wǎng)絡事件;識別應用于該事件的規(guī)則;判斷該規(guī)則的條件是否被滿足;如果滿足,執(zhí)行規(guī)則相關(guān)的動作。在塊501-504中,組件循環(huán)選擇了與執(zhí)行引擎中相關(guān)聯(lián)的層的每一個規(guī)則。在塊501中,組件選擇了下一個規(guī)則。在判斷塊502中,如果所有規(guī)則都已經(jīng)被選擇了,那么組件完成,否則組件繼續(xù)到塊503。在判斷塊503中,如果規(guī)則的條件被滿足了,那么組件繼續(xù)到塊504,否則組件循環(huán)到塊501以選擇下一個規(guī)則。在塊504,組件執(zhí)行了與規(guī)則相關(guān)聯(lián)的動作并且隨后循環(huán)到塊501以選擇下一個規(guī)則。每個執(zhí)行引擎可被改編以處理合適于層的網(wǎng)絡事件和規(guī)則。例如,一個用于網(wǎng)絡層的執(zhí)行引擎可解析網(wǎng)絡封包并且執(zhí)行涉及網(wǎng)絡封包的規(guī)則。一個用于應用層的執(zhí)行引擎可檢測未經(jīng)授權(quán)的訪問或修改涉及該程序的文件的企圖。
從上述中,可以被理解的是在此描述的分布式防火墻系統(tǒng)的特定實施例是為了解釋目的,但是可以在不脫離本發(fā)明精神和范圍下進行多種修改。相應地,本發(fā)明不受限于附加權(quán)利要求。
權(quán)利要求
1.一種在計算機系統(tǒng)內(nèi)的方法,向用于執(zhí)行安全策略的執(zhí)行引擎分發(fā)安全策略的規(guī)則,其特征在于,該方法包括在所述計算機系統(tǒng)提供實現(xiàn)安全執(zhí)行的不同層的執(zhí)行引擎;在所述計算機系統(tǒng)上接收和存儲了具有規(guī)則的安全策略,每個規(guī)則具有規(guī)則類型;在所述計算機系統(tǒng)上執(zhí)行的防火墻代理的控制下,檢索存儲的安全策略;并對于所檢索到的安全策略的規(guī)則根據(jù)規(guī)則的規(guī)則類型識別規(guī)則要應用到的執(zhí)行引擎;并且將規(guī)則提供給識別出的執(zhí)行引擎;并且在所述執(zhí)行引擎的控制下,執(zhí)行由防火墻代理提供給所述執(zhí)行引擎的規(guī)則;其中所述防火墻代理提供用于向所述計算機系統(tǒng)內(nèi)的多個執(zhí)行引擎分發(fā)所述規(guī)則的機制。
2.如權(quán)利要求1所述的方法,其特征在于,從向多個計算機系統(tǒng)分發(fā)安全策略的策略計算機系統(tǒng)接收所述安全策略。
3.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行引擎提供了分層的防火墻。
4.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行引擎包括行為阻擋安全組件。
5.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行引擎包括子組件并且當被提供規(guī)則時,所述執(zhí)行引擎將所述規(guī)則提供給子組件。
6.如權(quán)利要求1所述的方法,其特征在于,至少一個執(zhí)行引擎執(zhí)行在核心態(tài)中并且至少一個執(zhí)行引擎執(zhí)行在用戶態(tài)中。
7.如權(quán)利要求1所述的方法,其特征在于,所述防火墻代理包括用戶態(tài)子組件以及核心態(tài)子組件,并且所述用戶態(tài)子組件分發(fā)規(guī)則給用于提供規(guī)則給在核心態(tài)執(zhí)行的執(zhí)行引擎的所述核心態(tài)子組件。
8.如權(quán)利要求1所述的方法,其特征在于,流管理器組件在不同層攔截網(wǎng)絡事件并調(diào)用與層相關(guān)聯(lián)的執(zhí)行引擎來執(zhí)行該層的規(guī)則。
9.如權(quán)利要求8所述的方法,其特征在于,單個的流管理器組件處理來自多個層的網(wǎng)絡事件。
10.如權(quán)利要求8所述的方法,其特征在于,流管理器組件僅處理來自一個層的網(wǎng)絡事件。
11.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行引擎在網(wǎng)絡協(xié)議棧的各層提供安全性。
12.如權(quán)利要求11所述的方法,其特征在于,所述不同執(zhí)行引擎的層用于不同的連接。
13.一種分發(fā)安全策略的計算機系統(tǒng)結(jié)構(gòu),其特征在于包括策略服務器計算機系統(tǒng),用于建立安全策略,所述安全策略具有帶有規(guī)則類型的規(guī)則,也用于向主機計算機系統(tǒng)提供安全策略,以在所述主機計算機系統(tǒng)上執(zhí)行安全策略;以及多個主機計算機系統(tǒng),包括用于在所述主機計算機系統(tǒng)執(zhí)行一類安全性的執(zhí)行引擎;以及防火墻代理,從所述策略服務器計算機系統(tǒng)接收所述安全策略,根據(jù)規(guī)則類型以及執(zhí)行引擎類型識別所述規(guī)則要被應用到的執(zhí)行引擎,并將所述規(guī)則提供給識別出的執(zhí)行引擎,以執(zhí)行所述安全規(guī)則。
14.如權(quán)利要求13所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述執(zhí)行引擎被分層使得當一個執(zhí)行引擎確定提供給它的規(guī)則不能應用到網(wǎng)絡事件時,另一個執(zhí)行引擎確定提供給它的所述規(guī)則是否應用于所述網(wǎng)絡事件。
15.如權(quán)利要求14所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述層包括協(xié)議攔截鉤以及執(zhí)行引擎。
16.如權(quán)利要求13所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述防火墻代理向在用戶態(tài)執(zhí)行的執(zhí)行引擎分發(fā)規(guī)則。
17.如權(quán)利要求13所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述防火墻代理向在核心態(tài)執(zhí)行的執(zhí)行引擎分發(fā)規(guī)則。
18.如權(quán)利要求13所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述執(zhí)行引擎被分層并且包括在每一層攔截網(wǎng)絡事件并在網(wǎng)絡事件上調(diào)用該層執(zhí)行引擎的執(zhí)行該層規(guī)則的流管理器組件。
19.如權(quán)利要求18所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述流管理器組件為多個層攔截網(wǎng)絡事件。
20.如權(quán)利要求18所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述流管理器為單個層攔截網(wǎng)絡事件。
21.一種主機計算機系統(tǒng),向用于執(zhí)行所述主機計算機系統(tǒng)安全策略的執(zhí)行引擎分發(fā)安全策略規(guī)則,其特征在于包括多個執(zhí)行引擎,通過接收和執(zhí)行安全策略的規(guī)則而在所述主機計算機系統(tǒng)實現(xiàn)不同層的防火墻安全執(zhí)行;組件,在所述主計算機系統(tǒng)接收具有規(guī)則的安全策略,每個規(guī)則包含一規(guī)則類型;以及組件,根據(jù)所述規(guī)則的規(guī)則類型識別所述規(guī)則要被應用到的執(zhí)行引擎并向識別出的執(zhí)行引擎提供所述規(guī)則;其中提供一種機制,向所述主機計算機系統(tǒng)上的分層執(zhí)行引擎分發(fā)所述規(guī)則。
22.如權(quán)利要求21所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述安全策略是從向多個主機計算機系統(tǒng)分發(fā)所述安全策略的策略服務器系統(tǒng)接收到的。
23.如權(quán)利要求21所述的計算機系統(tǒng)結(jié)構(gòu),其特征在于,所述執(zhí)行引擎包括行為阻擋安全組件。
24.如權(quán)利要求21所述的計算機系統(tǒng)結(jié)構(gòu),所述執(zhí)行引擎包括子組件并且當被提供規(guī)則時,所述執(zhí)行引擎將所述規(guī)則提供給子組件。
25.如權(quán)利要求21所述的計算機系統(tǒng),其特征在于,至少一個執(zhí)行引擎執(zhí)行在核心態(tài)中并且至少一個執(zhí)行引擎執(zhí)行在用戶態(tài)中。
26.如權(quán)利要求21所述的計算機系統(tǒng),其特征在于,向所述執(zhí)行引擎提供規(guī)則的組件包括用戶態(tài)子組件以及核心態(tài)子組件,并且所述用戶態(tài)子組件分發(fā)規(guī)則給用于提供規(guī)則給在核心態(tài)執(zhí)行的執(zhí)行引擎的所述核心態(tài)子組件。
27.如權(quán)利要求21所述的計算機系統(tǒng),其特征在于,包括流管理器組件,它在不同層攔截網(wǎng)絡事件并調(diào)用與層相關(guān)聯(lián)的執(zhí)行引擎來執(zhí)行該層的規(guī)則。
28.如權(quán)利要求27所述的計算機系統(tǒng),其特征在于,單個的流管理器組件處理來自多個層的網(wǎng)絡事件。
29.如權(quán)利要求27所述的計算機系統(tǒng),其特征在于,流管理器組件僅處理來自一個層的網(wǎng)絡事件。
30.一種計算機可讀介質(zhì),包括用于通過一種方法控制主機計算機系統(tǒng)向執(zhí)行引擎分發(fā)安全策略以執(zhí)行所述安全策略的指令,其特征在于,所述方法包括在所述主機計算機系統(tǒng)上接收并存儲具有規(guī)則的安全策略,每個規(guī)則具有規(guī)則類型;在所述主機計算機系統(tǒng)上執(zhí)行的防火墻代理的控制下,檢索存儲的安全策略;并對于所檢索到的安全策略的規(guī)則根據(jù)規(guī)則的規(guī)則類型識別規(guī)則要應用到的執(zhí)行引擎;并且將規(guī)則提供給識別出的執(zhí)行引擎;以及在所述執(zhí)行引擎的控制下,執(zhí)行由分發(fā)組件提供給所述執(zhí)行引擎的規(guī)則。
全文摘要
提供了一種分發(fā)并執(zhí)行安全策略的方法和系統(tǒng)。執(zhí)行在要被保護的主機計算機系統(tǒng)上的一防火墻代理為負責在所述主機計算機系統(tǒng)上執(zhí)行安全策略的執(zhí)行引擎接收安全策略。一安全策略具有規(guī)則,該規(guī)則中的每一條提供了一個條件以及當條件被滿足時要執(zhí)行的動作。一個規(guī)則也含有一個規(guī)則類型,規(guī)則類型由所述分發(fā)系統(tǒng)使用來識別負責執(zhí)行規(guī)則的安全組件。為了分發(fā)在主機計算機系統(tǒng)接收到的安全策略,防火墻代理根據(jù)規(guī)則類型的一部分識別哪個規(guī)則要被應用到的執(zhí)行引擎。防火墻代理隨后將所述規(guī)則分發(fā)給識別出的執(zhí)行引擎,執(zhí)行引擎隨后執(zhí)行所述規(guī)則。
文檔編號H04L12/24GK1777179SQ200510116308
公開日2006年5月24日 申請日期2005年10月11日 優(yōu)先權(quán)日2004年11月19日
發(fā)明者E·帕里歐洛古, E·E·洋格布魯特, M·A·埃凡諾弗, N·R·S·S·納加姆帕利, S·C·謝斯, S·R·科蒂, 凌云 申請人:微軟公司