top
Loading...
Asp的安全管理(12)
附錄 C:網絡安全的最佳方案
Steve Riley,Microsoft Communications Industry Solutions Group Consulting Practice

2000 年 8 月 7 日

這篇短文論述了網絡設計和安全的最佳方案。盡管網絡的設計和安全保護方法很多,但只有某些方法和步驟深受許多業內人士的喜歡。

篩選路由器 — 第一道防線
應當使用篩選路由器來保護任何面向 Internet 的防火墻。這種路由器只有兩個接口:一個與 Internet 相連而另一個與外部防火墻(或必要時與負載平衡的防火墻群集)相連。所有攻擊中,將近 90% 涉及到 IP 地址失竊,或改變源地址以使數據包看起來如同來自內部網絡。傳入數據包沒有什么理由可以來自內部網絡。另外,由于一個網絡的安全性通常取決于所連接網絡的安全性,因此最好能避免您的網絡被用作假數據包的來源。篩選路由器是實現這些目的的理想方法。

應當將篩選路由器配置為“allow all except that which is specifically denied”(允許通過特別拒絕以外的所有通信)狀態。這樣,ACL 就執行下列操作:

定義一個進入篩選器,它拒絕任何源地址為內部網絡地址的傳入通信。
定義一個外出篩選器,它拒絕源地址非內部網絡的傳出通信。
拒絕 RFC 1918 中所確定的任何專用地址范圍內源地址或目標地址的所有傳入或傳出通信。
允許所有其它的傳入和傳出通信。
這可阻止大多數攻擊,因為竊取內部地址幾乎是所有攻擊的基本條件。將篩選路由器后面的防火墻配置為“deny all except that which is specifically allowed”(拒絕除特別允許之外的所有通信)狀態。

(這部分信息的依據為 RFC 2267,“Network ingress filtering: Defeating denial of service attacks which employ IP source address spoofing”,1998 年 1 月。)

對可用性要求較高的環境,可使用兩個篩選路由器,并將二者連接到一對防火墻負載平衡設備上。

防火墻 — 分層保護
典型的非軍事區 (DMZ) 有兩個防火墻。外部防火墻配置為只允許 Internet 和 DMZ 之間連接所需的通信。內部防火墻的配置要能夠保護內部網絡不受 DMZ 的影響 — DMZ 是非信任網絡,因此有必要對內部網絡實施保護。

什么是 DMZ?看看世界上僅有的政治方面的 DMZ:南北朝鮮之間的區域。DMZ 由其保護邊界確定 — 在這種情況下,兩個地理邊界,分別由單獨的保護實體進行監視和保護。網絡中的 DMZ 與此非常類似:某單獨的網絡部分經過單獨的物理防火墻與(通常)兩個其它網絡相連。

DMZ 與屏蔽子網。常見的方法是使用具有多個接口的單一物理防火墻。一個接口連接 Internet,第二個接口連接到內部網絡,第三個接口連接到通常稱為 DMZ 的區域。這種體系結構不是真正的 DMZ,因為單個設備負責多個保護區域。這種方案的確切名稱是屏蔽子網。屏蔽子網具有嚴重缺陷 — 單個攻擊就可破壞整個網絡,因為所有網絡段都與該防火墻相連。

DMZ 的優點。為什么部署 DMZ?網絡攻擊日趨增加 — 有些只是出于好玩、炫耀自己的惡作劇能力,還一些是嚴重的、有目的的公司間諜和破壞。有效的安全體系結構是攻擊的一道屏障,同時該結構具有可調整能力。真正的 DMZ 結構具有下列優點:

具有針對性的安全策略。每個防火墻實施與保護對象對應的策略。
深入防御。在安全遭到破壞時,設備的多個物理構件為安全管理員提供更多時間來做出反應。這是為什么要部署真正的 DMZ 而不是屏蔽子網的唯一、也是最重要的原因。
改進性能。兩設備間通信檢查的職責分開,每個特定保護區配置一臺設備。
可擴展性。可根據需要擴展防火墻 — 外部防火墻處理的負載通常必須比內部防火墻高很多。像 RadWare's FireProof 這樣的技術可以跨防火墻農場而平衡負載。
消除故障點。為了獲得高可用性,應當至少部署與一對防火墻完全適用的一對防火墻負載平衡器。這樣防火墻即可與 DMZ 核心交換機完全匹配。

防火墻類型
目前有三種防火墻:

基本數據包篩選器。
狀態檢測數據包篩選器。
應用程序代理。
基本數據包篩選器。把簡單的數據包篩選作為一種防火墻已不常見,因為幾乎所有的路由器都可執行此功能。數據包篩選只是簡單地按照一組規則比較傳出和傳入數據包的端口、協議和地址。不符合規則的數據包被防火墻終止。基本的數據包篩選提供很少的安全性,因為很多種攻擊可輕易地繞過它。

狀態檢測數據包篩選器。這些防火墻除檢查單獨的數據包外還對流程進行檢查。狀態檢查引擎跟蹤每個連接的啟動并確保啟動與某個先前登錄的連接相應的所有通信。符合防火墻規則但無法映射到任何連接的未經請求數據包將被終止。狀態檢查比基本數據包篩選更為安全,但還是可能受到能夠通過防火墻可用協議(如 HTTP)的入侵的襲擊。兩類數據包篩選器都無法分析任何數據包的內容。另外,兩類數據包篩選防火墻幾乎都無法在按照規則集進行計算之前將碎片數據包重新組裝起來。于是,某些類型的攻擊得以用高超技巧制作的數據包碎片進行成功傳遞。

應用程序代理。應用程序代理提供最高的安全級別。連接不通過代理,而傳入連接在代理處被中截,并由代理實現與目標服務器的連接。應用程序代理檢查有效載荷并可確定它是否符合協議。例如,正常的 HTTP 請求有確定的特征。通過 HTTP 傳遞的攻擊將與這些特征有所出入(最顯著的是通過 HTTP 請求傳遞的通信具有過多傳入信息量),并將被終止。應用程序代理還不易受到碎片的攻擊。由于為應用程序代理施加了負載,因此它在三類防火墻技術中速度最慢。

如此說來,哪種技術最好呢?答案取決于您所需的安全級別。一些狀態檢查防火墻開始加入應用程序代理功能;Checkpoint 的 Firewall-1 就是這樣的實例。

基于主機的防火墻保護。徹底防御應當是任何安全方案的設計目標。篩選路由器和傳統的 DMZ 提供三層保護,它們通常足以保護大多數網絡服務。對于高度安全的環境,基于主機的防火墻還可提供另一層的保護。基于主機的防火墻允許安全管理員確定詳細周全的安全策略,以使服務器的 IP 棧只對該服務器上應用程序所要求的端口和協議開放。一些基于主機的防火墻還實施傳出保護,以幫助確保某臺遭到破壞的機器不會影響同一網絡上的其它機器。當然,基于主機的防火墻確實增加了普通系統管理的負擔。應考慮僅對那些包含至關重要數據的服務器增加基于主機的保護。

DMZ 體系結構 — 安全和性能
另一類常見的攻擊是從線路上窺探數據包。盡管有最近出現的防窺探工具(可能經常不可靠),但用簡單集線器構建的網絡還是很容易受到這種攻擊。(并且反防窺探工具也可能使它成為一項重要議題。) 使用交換機替代集線器可消除此弱點。在共享介質網絡(即用集線器構建的網絡)中,所有的設備可看見所有的通信。通常網絡接口對非發給它的數據幀不進行處理。混雜模式的接口將把每一幀的內容向上傳到計算機的協議棧。該信息對于有協議分析器的攻擊者可能非常有價值。

交換網絡可以實際杜絕這種情況的發生。交換網絡中任何機器的網絡接口將只能看到特別發給該接口的那些幀。在這里混雜模式沒有什么不同,因為 NIC 不識別其它任何網絡通信。攻擊者窺探交換網絡的唯一已知方法是:攻擊者破壞交換機本身并更改其操作,這樣交換機至少在一個端口充斥了所有通信。破壞交換機很難,并且很快會被網絡管理員發現。

交換網絡還免去了使用雙主機 DMZ 服務器的必要。雙主機提供不了更多的附加保護;附加的 NIC 不能防止來自已破壞計算機的攻擊。但是在需要高可用性或高性能情況下,使用兩個 NIC 可能更加適合。

消除故障點。在需要高可用性的環境中有必要使用兩個 NIC。一種切實可行的設計方案是在核心部分包括兩臺交換機,并在每臺服務器中包括兩個 NIC。一個 NIC 連接到一臺交換機,另一個 NIC 連接到另一臺交換機。

內部網絡的情況如何?出于同樣的原因,內部網絡也應當用交換機來構建。如果需要高可用性,請遵照 DMZ 中同樣的原則。

群集互連。無論在 DMZ 還是在內部網絡中,都使用集線器連接所有群集。Microsoft 不建議使用跨接電纜,因為它們不能提供確保介質敏感型操作正常工作所需的電子信號。

IPSec — 信任 DMZ 的一種更安全的選擇
如果所有的服務器都在運行 Windows 2000,則應當使用 Internet 協議安全 (IPSec) 來保護 DMZ 和內部網絡之間所有通訊的安全。IPSec 提供下列功能:

身份驗證。 可以確定這樣的策略,使得只有那些需要彼此通訊的計算機才可以互相通訊。
加密。 已經侵入到 DMZ 的入侵者無法將通信解釋進或解釋出內部網絡。
保護。 IPSec 保護網絡避免重放攻擊、人為干預攻擊以及通過標準協議(如 ICMP 或 HTTP)進行的攻擊(這些攻擊可通過基本防火墻和狀態檢查數據包篩選器防火墻)。
啟用 IPSec 后,內部防火墻必須只允許 IPSec、IKE、Kerberos 以及 DNS 通信,這樣進一步加強了內部網絡的安全性。內部防火墻中不會有其它漏洞。對于各種應用程序有漏洞的標準防火墻規則,入侵者可以通過 Firewalk 這樣的工具確定防火墻的策略;而將所有通信封裝在 IPSec 中并只許使用該協議,可隱藏對攻擊者可能有用的實施細節(但是還應參見下面的“可能的安全含意”)。下表列出了應當在防火墻中開啟的服務: 服務
位置
說明

Domain

端口 53/tcp 和 53/udp

域名服務


kerberos

端口 88/tcp 和 88/udp

Kerberos v.5 身份驗證


isakmp

端口 500/udp

Internet 密鑰交換


esp

協議 50

IPSec 封裝的安全有效載荷


ah

協議 51

IPSec 驗證的標頭


請注意不需要證書授權;IPSec 策略將用 Kerberos (本機的 Windows 2000 身份驗證機制)作為建立 IKE 主模式安全關聯的基礎。

可能的安全含意。如前所述,對 DMZ 和內部網絡之間的通信加密后不可能再檢查內部防火墻中的通信。并非所有的網絡或安全管理員都對此方法滿意。ESP 的加密提供了進入內部網絡的封裝路徑,一旦某臺 DMZ 機器被破壞,它就可能被利用。使用 IPSec AH 替代 ESP 將使較為簡單的防火墻配置顯示其優勢,同時由于 AH 數據包有效載荷未經加密,還可進行通信檢查。

入侵檢測 — 早期的警告系統
入侵檢測系統正在成為與 Internet 連接的任何網絡的必要組件。盡管它不能替代防火墻詳細不間斷的檢查和服務器日志,但是入侵檢測系統能夠提早識別潛在入侵,為您提供更多的時間以對事故采取相應措施。請在 DMZ 中安裝入侵檢測系統。

入侵檢測系統和防病毒實用程序相似,它們都是在檢測到它們識別的東西時向管理員發出警報。入侵檢測系統包含一個攻擊特征數據庫,但是并非所有的入侵檢測系統都同樣可以識別不同類型的攻擊或保持最新狀態(各個 IDS 廠商都將他們的特征數據庫和更新機制當作商業機密)。目前有兩種值得關注的檢測系統,它們是:RealSecure by Internet Security Systems (http://www.iss.net) 和 Network Flight Recorder ( http://www.nfr.net )。

基于主機的入侵檢測。大多數入侵檢測系統在網絡級別工作,在網絡被破壞后向管理員發出警報。最近出現了一種新的入侵檢測系統類型:基于主機的入侵檢測系統。這些工具本身在服務器上運行,并在特定計算機遭到破壞時向管理員發出警報。這種警報機制對于包含有重要操作數據的計算機(如后端數據庫服務器)尤為重要。

將基于網絡的入侵檢測系統和基于主機的入侵檢測系統結合起來,并且讓訓練有素的安全專家定期檢查系統日志是保護網絡、收集證據和處理安全事故的最有效方法。

DNS — 確保客戶到達正確的地方
常見的 DNS 實施(包括如圖所示的實施)稱為拆分 DNS 實施。外部服務器用來解決 Internet 對 DMZ 中計算機的查詢,并解決 DMZ 計算機對其它 DMZ 計算機的查詢。內部服務器用來解決內部網絡對內部計算機的查詢,對 DMZ 中或 Internet 上計算機的查詢將被轉發到外部服務器。但是拆分 DNS 不能保護 DNS 高速緩存免受攻擊。

在 DNS 高速緩存的侵害中,攻擊者會破壞另一網絡的 DNS 高速緩存。當受害者試圖在破壞的網絡中確定地址時,該高速緩存返回攻擊者在高速緩存中放入的無效信息。通常攻擊者這樣做是為了把受害者重新定向到攻擊者的計算機。

最安全的 DNS 實施稱為 拆分 — 拆分 DNS 實施。在 DMZ 中有兩臺 DNS 服務器。一臺服務器(例如 DMZDNS-IN)只接受對 DMZ 中計算機的傳入查詢 — 并只接受 Internet 上計算機的查詢。另一臺服務器(如 DMZDNS-OUT)只允許解決對 Internet 的傳出查詢,以及 DMZ 計算機對其它 DMZ 計算機的查詢。DMZDNS-IN 是 DMZ 的 DNS 區域的主 DNS 服務器,DMZDNS-OUT 是輔助 DNS 服務器,使用 IPSec 進行區域傳輸。內部網絡中的 DNS 服務器僅是內部網絡的主 DNS 服務器,并且將對 DMZ 或 Internet 的請求轉發到 DMZDNS-OUT。這消除了使網絡易于受到已被襲擊的 DNS 高速緩存攻擊的條件。

來自 Internet 的 DNS 查詢不可能通過 DMZ 進入內部網絡來獲取答案。一些近期的攻擊使用 DNS 來傳遞其有效載荷。Internet 上的用戶沒有必要對內部網絡上的服務器進行查詢。

消除故障點。在高可用性環境中,只需簡單倍增 DNS 服務器的數量即可。

硬件負載平衡 — 保持服務器的最佳性能
Windows 2000 Advanced Server 包括一種稱為“網絡負載平衡服務”或 NLBS 的功能。NLBS 為 Web 站點管理員提供了在相同配置的服務器農場中進行服務器負載分配的方法。NLBS 對不需要復雜狀態維護或性能監視的應用程序來說非常適用。但對于需要這些工作的應用程序來說,則應選擇硬件負載平衡。這些設備有時稱為第 7 層交換機。

像 F5 網絡的 BigIP Content Switch(非官方認可,只是行業中認同它是最好產品之一)這樣的設備在 OSI 模型的第 2 到第 7 層工作。BigIP Content Switch 檢測應用程序的狀態和運行情況,在 Web 服務器之間提供負載平衡和真實容錯。若要消除任何單一的故障點,需使用兩個與所有 Web 服務器完全相符的負載平衡設備。F5 還提供了支持加密套接字協議層 (SSL) 的 BigIP Content Switch 版本。SSL 會話在 BigIP SSL Accelerator中終止,然后確定由哪臺 Web 服務器執行該工作。BigIP Accelerator 進行下列操作:

卸載 Web 服務器的 SSL 處理,提高其性能。
集中管理證書。將證書安裝在 SSL 加速器上,而不是每一臺 Web 服務器上。它還可使多個 BigIP 控制器之間的證書同步。
啟用 HTTP 主機標頭。
解決 AOL 客戶端 IP 地址共享問題。
消除故障點。如果目標僅僅是平衡服務器的負載,一臺負載平衡設備足矣。但是若要提供真實容錯功能,則需多臺配置完全匹配的設備。

存儲區域網絡 — 對內部網絡的集中存儲
存儲區域網絡技術已非常成熟,只要是配備有大存儲容量的地方都可使用。SAN 將存儲功能從通用服務器移到為傳輸大量數據而特別設計的高速網絡上。這有助于:

通過將磁盤陣列移出機柜來優化服務器機柜空間。
通過將數據存儲在單獨的、不易遭受目前所知類型攻擊的網絡中,增加數據的安全性。
通過在數據網絡之外保留通信備份,提供不受 LAN 約束的備份。
最初,使用光纖通道仲裁環 (FC-AL) 來建立 SAN。較新的光纖通道交換機提供更高水平的吞吐量,并使管理員可以設計沒有單一故障點的 SAN。

交換光纖通道 SAN 至少包括:

兩臺位于核心相互連接的 FC 交換機。
幾臺位于外圍的交換機 — 每個 LAN 有一臺與 SAN 連接的交換機。每臺外圍交換機都與兩臺核心交換機連接。
每臺服務器中的 FC 接口與其本地的 SAN 交換機相連。
SAN 磁盤群集有一臺交換機與兩臺核心交換機連接。
SAN 備份設備的一臺交換機,與兩臺核心交換機連接。
消除故障點。倍增核心以外的所有設備:在每臺服務器中使用兩個光纖通道適配器、每個 LAN 中使用兩臺外圍交換機、對 SAN 磁盤群集使用兩臺外圍交換機,以及對 SAN 備份設備使用兩臺外圍交換機。始終將兩臺外圍交換機與兩臺核心交換機相連。

網絡附加存儲的有關情況?Microsoft 不支持 NAS 存儲 Exchange 文件。Exchange 要求所有的文件都保存本地設備上。Exchange 在光纖連接的 SAN 設備上運行良好,這些設備對 Windows 2000 表現為本地設備。

© 2000 Microsoft Corporation。版權所有。

本文檔所包含的信息代表了在發布之日,Microsoft Corporation 對所討論問題的當前看法。因為 Microsoft 必須順應不斷變化的市場條件,故該文檔不應理解為 Microsoft 一方的承諾,Microsoft 不保證所給信息在發布之日以后的準確性。

本文檔僅供參考。在本文檔中,MICROSOFT 不做任何明示的或默示的保證。

Microsoft、BackOffice、MS-DOS、Outlook、PivotTable、PowerPoint、Microsoft Press、Visual Basic、Windows、Windows NT 和 Office 徽標是 Microsoft 在美國和/或其它國家(或地區)的注冊商標或商標。

北斗有巢氏 有巢氏北斗