企業用戶如何應對系統補丁管理難題
2006年,卡內基?梅隆大學軟件工程學會的計算機緊急響應小組(CERT)報道了需要軟件補丁的應用程序漏洞超過8000個——這個數字比2005年增加了30%還多。盡管多年來我們在這個方面下了很大力氣,但補丁問題仍在引起許多人的憂慮。我們經常看到許多公司在補丁程序發布了一個多月后,還沒有打上補丁,因而給病毒和安全破壞留下了可趁之機。為什么面臨這種風險呢?這是因為許多IT部門缺少有效打上補丁的工具、流程和資源。
至少有14家廠商在期望改善這種形勢。每個產品各有其強項和弱項,本文希望作一簡單評述。
理想情況下,補丁管理只是大公司內部全面的配置管理或者軟件分發系統當中的一個組件。小公司也可以使用獨立工具,但許多公司需要幾種功能單一的單點產品,滿足給不同類型的應用程序和設備打補丁的需要。但無論你如何管理,自動化極其重要,變更記錄、確保補丁不干擾其他應用程序的測試以及避免堵塞網絡的部署策略也極其重要。
微軟的做法
雖然自從有了計算機,就需要給應用程序打補丁,但大量出現的Windows更新程序以及微軟在市場上的主導地位使人們對補丁問題引起了注意。自推出 Windows 98以來,微軟就致力于能夠自動給Windows服務器和桌面機打補丁。最新版本的更新程序:Windows服務器更新服務(WSUS)提供了本地管理的軟件更新服務,這是除本地微軟更新系統之外的一種選擇。IT人員使用WSUS,就可以從中心服務器,自動分發補丁和更新程序給客戶機。
最新版本的更新程序擴大了它能更新的軟件的范圍,它與使用微軟的Windows更新網站相比是一大進步。因為單臺計算機不必連接到外部服務器,所以可以節省帶寬、時間和磁盤空間。在Windows Server 2008中,應用程序本身帶有這項功能。WSUS則可以從微軟網站免費下載。
免費確實不錯,但大多數公司的環境使用的不僅僅是微軟的桌面機和服務器。微軟的免費工具也提供不了大公司所需要的那種靈活性或者擴展性。
補丁管理工具通常都包含在軟件分發、供應及配置管理套件中——這些套件盡管開始時相對昂貴,但能根據需要進行擴展。購買這種工具是否值得,這取決于你需要部署哪種類型的補丁。如果你負責給服務器、桌面機以及其他網絡設備打補丁,購買能夠處理所有這些設備的工具也許是值得的,比如惠普公司的Opsware。如果你只關注給桌面機打補丁,不妨考慮使用功能較單一的工具,比如冠群公司的補丁管理(Patch Management)產品。而如果你需要給服務器打補丁,那還得看情況:單單運行Windows?還是同時運行Unix、Linux或者虛擬系統?
自動化極其重要。手工打補丁這項工作需要大量的人力。要列一份詳細的清單,列出補丁流程的每一個步驟,包括收集補丁信息、確定嚴重性和優先級、進行詳細測試以便發現補丁會不會影響其他系統,以及確定哪些端點設備需要更新。你要問清楚考慮購買的某款軟件能否實現所有這些步驟的自動化。
因為與補丁管理密切相關,所以變更控制也很重要。你每過多久打補丁、何時打補丁?誰可以部署以及/或者授權更新?如何測試補丁?哪些情況下需要恢復原狀(rollback)?你在考慮選購補丁軟件時,知道自己目前管理著多少設備、在可預見的將來會有多少設備也很重要。市面上有不同軟件,有的可以管理50 到100個設備,有的最多可以管理成百上千個設備。大公司在考慮與配置有關的產品(如軟件分發或者配置管理數據庫)時,應當確保產品含有可靠成熟的補丁管理功能。如果你有資產清查系統,就要檢查是否集成了補丁管理功能,否則最后你不得不完成發現資產的工作。
考慮到不管你愿不愿都要打補丁可能會給用戶和網絡帶來負面影響,因而需要了解補丁產品如何發揮作用,以及如何處理打補丁時未連接到網絡上的設備。它能實現多播分發、高級壓縮、檢查和重啟等功能嗎?要是通信鏈路出現了故障,終端設備是一臺未聯網的筆記本電腦,或者由于某種原因未能成功打上補丁,該軟件會如何處理?理想情況下,軟件會有一套辦法來試圖再次打補丁;如果屢屢失敗,就會發出通知和報警。
報告功能也很重要。需要確保產品能支持通知和審計功能。在受到《薩班斯-奧克斯利法案》監管的許多上市公司,這是一項嚴格要求;稍有疏忽就會招致巨額罰款。
軟件廠商挺身相救?
通常來說,根據打補丁的對象以及使用代理的方式,補丁管理產品可分為四類:Windows桌面機和服務器使用可選代理;Windows桌面機和服務器使用必選代理;多平臺系統使用必選代理;多平臺系統使用必選代理,并且關注虛擬化支持/數據中心。下面簡要介紹一下相關的部分產品。
·Windows桌面機和服務器使用可選代理
許多公司愿意專門投入資源給成百上千臺Windows桌面機和服務器打上補丁,以免病毒或者惡意代碼在整個網絡上傳播,從而導致網絡長時間停運。 Shavlik Technologies公司的 NetChk Protect結合了補丁和間諜軟件管理功能以及這個選項:使用基于代理或者不使用代理的架構。除了Windows操作系統外,它還能給近700種應用程序打上補丁。包括BMC、微軟和賽門鐵克在內的許多廠商都在各自的補丁管理套件中使用了Shavlik的產品。
與NetChk Protect一樣,Ecora Software公司的補丁管理器(Patch Manager)讓IT管理員可以使用代理,也可以不用代理直接運行。Ecora側重于Windows工作站和服務器上的資產發現、補丁評估及補丁安裝,所以使用帶寬遏制(bandwidth throttling)功能來限制專門用于打補丁的網絡資源。Ecora承諾可提供諸多重要功能,比如補丁恢復原狀、網絡喚醒,以及在部署到生產環境之前能夠指定打補丁所用的測試環境;另外包括有助于審計及法規遵從的各種報告。
·Windows 桌面機和服務器使用必選代理
代理通常用于這樣的環境:IT部門可能沒有專門投入資源給得到管理的設備,比如偶爾連接到公司網絡上的筆記本電腦。如果你需要分發與打補丁有關的網絡流量,代理也可能比較方便;它們往往可以對設備提供比較嚴格的控制。
Kaseya公司的補丁管理(Patch Management)軟件可自動發現缺少的補丁和更新程序;還能按設定的時間表自動部署及安裝補丁。一旦初始掃描完畢,IT部門就能審查每臺機器的掃描結果,并確定是否需要打上每個缺少的補丁或者更新程序,以及何時及如何打上補丁。IT管理員還可以跟蹤及批準補丁,用于審計和報告功能。
Novell公司的Zenworks配置管理(Zenworks Configuration Management)軟件側重于出現新的安全更新程序時,通知IT人員;并確保更新程序經過測試之后再分發出去。Novell設有安全專家小組,負責跟蹤軟件廠商的支持網站,為公司客戶提供最新的更新程序。
IBM的配置管理器(Configuration Manager)為分布式環境提供了微軟客戶機和服務器軟件自動補丁功能。配置管理器還能掃描客戶機,查找缺少的補丁、制訂補丁計劃,并且分發所需補丁到客戶機。與IBM一樣,冠群Unicenter的補丁管理(Patch Management)軟件也側重于Windows——不過是針對桌面機環境。冠群的產品可以監控最近可用的補丁,并對可用補丁進行驗證。
·多平臺使用必選代理
如果你的環境包括Unix、Linux以及/或者Mac OS,就需要求助于支持跨平臺應用程序和操作系統的廠商。BigFix公司除了提供一系列較廣泛的策略管理產品外,還為常見應用程序及主流操作系統提供了補丁管理和安全更新程序分發功能;它還可以管理5萬多個設備。你需要在Windows上運行BigFix服務器(BigFix Server),并且在每個被管理的節點上部署代理。
藍代斯克公司的補丁管理器(Patch Manager)包括了一項訂購服務,可以收集及分析異構環境下的補丁。與其他套件一樣,它可以掃描被管理的設備,并認別應用程序和操作系統存在的漏洞;一旦發現了問題,你可以下載相關補丁,并查看補丁的相關要求、依賴關系、相互影響及已知問題。藍代斯克產品可以監控每個安裝補丁的狀態,并提供帶寬遏制、測試及詳細的策略與法規遵從報告等功能。
以前名叫Marimba的BMC補丁管理器(BMC Patch Manager)提供了測試功能,讓管理員可以通過分析補丁對端點設備的影響,從而盡量降低風險。BMC補丁管理器策略引擎便于補丁的初始安裝,可不斷監控補丁,以確保它們未被卸載。Lumension公司的 PatchLink補丁管理(PatchLink Patch Management)套件可自動收集及分析軟件補丁,并且把補丁分發到眾多操作系統。它還側重于報告功能。
其他廠商部署了配置管理數據庫來管理及控制補丁。Configuresoft公司的企業配置管理器(Enterprise Configuration Manager)可按指定的間隔時間自動發現新系統、跟蹤配置變化,從而確保獲得最新的補丁信息。它可以按功能或者角色對機器進行分組,并且支持對不同配置的機器進行補丁測試。該軟件可不斷更新所有機器的補丁狀態,維護補丁部署的審計歷史記錄,這對法規遵從報告極其有用。同樣,賽門鐵克的Altiris 補丁管理(Altiris Patch Management)軟件側重于集中、可擴展的存儲庫。
·多平臺使用必選代理,并且關注虛擬化支持/數據中心
許多公司在向數據中心合并和虛擬機先鋒,以便降低成本、提高效率,因而確保IT部門能維護那些合并的服務器是關鍵。補丁管理極其重要,必須注重與這樣的廠商合作:能夠支持復雜、異構的操作系統環境,包括在VMware上運行Windows、Linux和Unix的諸多服務器。惠普的Opsware/ SAS和BladeLogic非常適合這種環境。
BladeLogic比較側重于數據中心服務器環境,而不是桌面機環境,它支持諸多操作系統、服務器組件(如中間件、實用程序和系統軟件)以及虛擬化環境下的中間層軟件。BladeLogic配置管理器使用基于策略的方法:先是改變策略,然后與目標服務器進行同步。該公司聲稱,這種雙向方法大大減少了與管理服務器有關的成本和錯誤。配置服務器還擁有跨平臺的命令行界面,可支持使用各種驗證協議的單點登錄方式。所有通信都被加密;用戶的所有行為都被記入日志,可以根據角色來授權行為;這對需要高度安全的環境而言很重要;中檔產品可能不具備這樣的功能。
Opsware SAS 可自動發現服務器硬件、配置及軟件。借助全面的配置和供應功能,SAS除了可創建及執行補丁策略外,還能識別數量眾多的服務器,并打上補丁。SAS還使用審計方面的最佳實踐及設定的補救辦法,以便能夠迅速應對需要打補丁的安全或者法規遵從方面的漏洞。
小貼士:詢問廠商的七大問題
1、你的軟件側重于桌面機還是服務器?對這些設備而言,得到支持的是哪些具體的操作系統和版本?
2、軟件在打補丁時能夠控制網絡帶寬嗎?
3、你的產品如何處理未能成功打上補丁的情況?
4、軟件如何發現環境中有哪些應用程序和操作系統?
5、產品能夠與其他資產清查或者配置管理產品集成嗎?
6、它能報告成功和失敗、并且為我提供所有補丁的全面審計日志嗎?
7、產品如何知道有補丁可用、如何知道補丁的輕重緩急?
打補丁方面的七大錯誤
1、沒有在部署補丁之前進行測試。有些補丁與其他應用程序不兼容,甚至會完全干擾其他程序。
2、沒有恢復原狀方案。要是未能成功打上補丁,你就需要能夠輕松恢復到原狀。
3、破壞網絡。同時在網絡上部署多個補丁會導致其他應用程序停止運行,激起用戶的怒火。
4、正常工作時間“需要重啟”。許多補丁需要用戶重新啟動系統。盡可能在工作時間之外部署這些補丁。
5、缺少補丁。常常是用戶提出了要求或者出現了病毒,才拼命尋找缺少的補丁。要隨時了解最新版本,盡量減少停運時間。
6、沒有補丁審計跟蹤。如果你經常打補丁,就要跟蹤打上了哪些補丁、何時打上,用于審計和跟蹤。
7、沒有正式的補丁流程。事先定義策略來指定誰可以批準補丁、并指定補丁部署規程,這對補丁管理的成功至關重要。