410 likes | 478 Views
資訊安全─入門手冊. 第 10 章 防火牆. 第 10 章 防火牆. 防火牆是一種用來控制網路存取的設備,並阻絕所有不允許放行的流量。 防火牆的定義和路由器不同,路由器是用來快速將流量傳送到指定目標的網路設備。 防火牆和路由器之間最好的說法 - 防火牆是一種可以適度允許流量通過的安全設備,而路由器是一種可以設定阻絕特定流量的網路設備。. 防火牆通常會提供更多精細的組態設定等級。 防火牆也可以設定成依據服務、來源或目標的 IP 位址、要求服務的使用者識別碼等,做為流量過濾的基礎。 防火牆可以設定記錄所有流量的記錄,也可以設定成中控化的安全管理功能。
E N D
資訊安全─入門手冊 第 10 章 防火牆
第 10 章 防火牆 • 防火牆是一種用來控制網路存取的設備,並阻絕所有不允許放行的流量。 • 防火牆的定義和路由器不同,路由器是用來快速將流量傳送到指定目標的網路設備。 • 防火牆和路由器之間最好的說法 - 防火牆是一種可以適度允許流量通過的安全設備,而路由器是一種可以設定阻絕特定流量的網路設備。
防火牆通常會提供更多精細的組態設定等級。 • 防火牆也可以設定成依據服務、來源或目標的IP位址、要求服務的使用者識別碼等,做為流量過濾的基礎。 • 防火牆可以設定記錄所有流量的記錄,也可以設定成中控化的安全管理功能。 • 安全管理員可以定義並允許外部流量,傳送給組織內部的所有系統。
本章的內容如下: • 10-1 防火牆的類型 • 10-2 發展防火牆的組態設定 • 10-3 設定防火牆的規則
10-1 防火牆的類型 • 防火牆基本上可以分為『應用層防火牆(application layer)』和『封包過濾型防火牆(packet filtering)』兩種。 • 這兩種防火牆各自提供不同的功能,但是如果妥善設定組態設定時,都可以達到阻斷不符合安全需求的不正常流量。 • 本節的內容如下: • 10-1-1 應用層防火牆 • 10-1-2 封包過濾型防火牆 • 10-1-3 混合型
10-1-1 應用層防火牆 • 應用層防火牆(又稱為代理型防火牆),是一種安裝在一般作業系統(例如Windows NT或Unix)或防火牆設備上的套裝軟體。 • 防火牆本身具有多組網路介面,各自連線到對應的網路區段。 • 在應用層防火牆上面,透過組態設定可以定義流量的轉送方式。 • 如果屬於規則之外的流量時,防火牆就會拒絕轉送流量或阻斷封包。
應用層防火牆的政策規則,是透過代理器(proxies)而達成目標。應用層防火牆的政策規則,是透過代理器(proxies)而達成目標。 • 在應用層防火牆上面,每一種協定都有對應的代理器。 • FTP代理器必須認識FTP協定,因此可以判斷流量是否遵循FTP協定,而且是不是符合政策規則允許的流量。 • 在建置應用層防火牆之後,防火牆就是所有連線的閘道器(詳見圖10-1)。
防火牆允許用戶端連線之後,會先分析封包的內容和使用的協定,並判斷是否符合政策規則允許的流量。防火牆允許用戶端連線之後,會先分析封包的內容和使用的協定,並判斷是否符合政策規則允許的流量。 • 如果是屬於允許的流量,防火牆會初始外部網路介面新的連線,並和伺服器建立連線。 • 應用層防火牆也同樣利用代理器篩選外來的連線。 • 當應用層防火牆接收到外來的連線時,會在流量送到內部網路之前先執行篩選命令。 假設防火牆本身的代理器沒有弱點時,那麼防火牆就不會遭受到攻擊。但是如果代理器含有弱點時,遭受攻擊的可能性就會大增。
應用層防火牆通常都具有常見的HTTP、SMTP、FTP和telnet這類的代理器。應用層防火牆通常都具有常見的HTTP、SMTP、FTP和telnet這類的代理器。 • 如果沒有特定協定的代理器,該協定就無法透過防火牆連線。 • 防火牆也會隱藏內部網路的IP位址,這是因為所有內部網路都是透過防火牆網路介面轉送流量,所以防火牆外部看不到內部網路,因此也可隱藏內部網路的定址計畫。 大多數應用層協定,都會提供轉送防火牆內部系統特定連接埠流量的機制。因此,也可以將防火牆設定成 - 只要使用80連接埠的外來連線,流量全部都送到Web伺服器。
10-1-2 封包過濾型防火牆 • 封包過濾型防火牆,也是一種安裝在一般作業系統(例如Windows NT或Unix)或防火牆設備上的套裝軟體。 • 防火牆本身具有多組網路介面,各自連線到對應的網路區段。 • 和應用層防火牆一樣,封包過濾型防火牆也可以規定,特定網路區段的流量是否可以轉送到另一個網路區段。 • 如果沒有明確地指定允許或拒絕的流量時,就會拒絕流量或阻絕封包。
政策的規則也是依據封包檢查器而定。 • 過濾器會檢查封包的內容,並依據政策規則和協定的狀態(著名的狀態檢查),來決定是否允許流量通過。 • 如果是透過TCP運作的應用程式,因為TCP本身含有狀態因此也會比較容易判讀。 • 如果連線之中出現其他封包時,防火牆將會阻絕或拋棄封包。甚至防火牆規則允許建立連線時,連線的狀態還是一樣會發生錯誤。
如果是透過UDP運作的應用程式,雖然封包過濾器無法利用協定內含的狀態,但仍然可以追蹤UDP流量的狀態。如果是透過UDP運作的應用程式,雖然封包過濾器無法利用協定內含的狀態,但仍然可以追蹤UDP流量的狀態。 • 一般來說,防火牆會在UDP協定原始封包中,看到外送的UDP封包以及含有目標位址、連接埠封包的訊框(frame)範圍。 • 如果看到UDP協定封包含有特定的訊框數量時,就會允許封包轉送。 • 如果不符合,防火牆會自動判斷成無法回應的UDP流量,並阻絕繼續傳送的UDP流量。
使用封包過濾型防火牆,防火牆本身不會中斷正常的連線(詳見圖10-2),而是直接送出流量。使用封包過濾型防火牆,防火牆本身不會中斷正常的連線(詳見圖10-2),而是直接送出流量。 • 當防火牆接收到內送的封包時,才會判斷封包和連線的狀態是否符合政策規則的規範。 • 如果符合規則時,才會允許內送。若不符合,就會阻絕或拋棄封包。 • 封包過濾型防火牆,不需要依靠每種協定的代理器即可運作。
封包過濾型防火牆的效率會比應用層防火牆要好,這是因為封包過濾型防火牆,不需要處理建立額外連線的動作。 • 和一般協定的規則一樣,封包過濾型防火牆也同樣可以處理非常大量的流量,而且也不會類似代理器軟體需要建立額外連線的負擔。 前面曾經提到的『一般協定的規則』,和防火牆供應商所談的『防火牆一般協定規則』有所不同。這是因為從觀點上看來,是因為在相同的作業平台上,封包過濾型防火牆能夠處理的流量會比應用層防火牆來得大。而且是在測試連線數量的過程中,依據流量的類型比較的結果。
封包過濾型防火牆不會使用代理器。 • 用戶端和伺服器之間可以直接建立連線。 • 如果攻擊的對象是伺服器開啟的服務,防火牆的政策規也不會干預攻擊的行為而且會允許通過。 • 從封包過濾型防火牆的外部,或許也可以看到內部網路的定址結構。 大多數封包過濾型防火牆,也支援網路位址轉譯(詳見第16章)。
10-1-3 混合型 • 應用層防火牆的製造商也應體認到,他們需要某種特殊的代理器才能處理特殊的協定。因而產生了通用服務代理器(generic services proxy,簡稱GSP)。 • GSP允許網路和安全管理員依據其他協定需求,建立應用層代理器。 • GSP就是讓應用層防火牆,也可以執行封包過濾型防火牆的功能。
封包過濾防火牆的製造商,也試著在他們的產品之中加入代理器,讓他們的產品可以更安全地處理常見的協定。封包過濾防火牆的製造商,也試著在他們的產品之中加入代理器,讓他們的產品可以更安全地處理常見的協定。 • 這兩種防火牆仍然具有原始設計的基本功能(同樣含有基本缺陷),只不過市場上出現許多混合型防火牆,不過也可以發現純應用層防火牆或純封包過濾型防火牆。
10-2 發展防火牆的組態設定 • 現在,我們來看看某些標準網路架構,以及如何針對這些特殊狀況適當地設定防火牆。以上述的狀況為例,我們先假設組織已經擁有某些系統,並希望這些組織可以接受網際網路 連線: • 只有提供連接埠80的Web伺服器 • 只有提供連接埠25的郵件伺服器。郵件系統接受內送郵件和外送郵件,內部郵件會定期和這部伺服器聯繫,取回內送郵件和傳送外送郵件。
內部DNS伺服器必須能向網際網路的DNS查詢主機名稱,才能夠解析正確的IP位址,不過組織並不需要自行維護外部的DNS伺服器。內部DNS伺服器必須能向網際網路的DNS查詢主機名稱,才能夠解析正確的IP位址,不過組織並不需要自行維護外部的DNS伺服器。 • 組織的網際網路政策允許內部使用者存取下列服務: • HTTP • HTTPS • FTP • Telnet • SSH
本節的內容如下: • 架構 #1:透過防火牆存取外部網際網路存取的系統 • 架構 #2:單一防火牆 • 架構 #3:雙防火牆
架構 #1:透過防火牆存取外部網際網路存取的系統 • 圖10-3之中,透過防火牆存取可從網際網路存取防火牆和外部路由器之間的系統。 • 表10-1 提供防火牆的規則。 表10-1 架構 #1:透過防火牆存取外部網際網路存取的系統
圖10-3 架構 #1:透過防火牆存取外部網際網路存取的系統
過濾器可以放在路由器上面,因而只能允許外部HTTP協定連結Web伺服器,以及外部SMTP連結郵件伺服器。過濾器可以放在路由器上面,因而只能允許外部HTTP協定連結Web伺服器,以及外部SMTP連結郵件伺服器。 • 前述利用路由器的規則中看到,無論使用哪一種類型的防火牆,防火牆都無法保護Web伺服器和郵件伺服器。在這種情況下,防火牆只能保護組織內部的網路。
架構 #2:單一防火牆 • 圖10-4是第二種標準架構。此種架構使用單一防火牆,保護內部網路和任何可從網際網路存取的系統,這些系統放在獨立的網路區段上(詳見第16章)。
表10-2提供防火牆規則 表10-2 單一防火牆架構的防火牆規則
表10-2非常類似架構 #1的內容。 • 對於獨立網路區段的Web伺服器和郵件伺服器來說,防火牆不需要明確地指定流量的規則。 • 因為規則 #2裡面,允許任何系統(內部或外部)和Web伺服器或郵件伺服器連線。
架構 #3:雙防火牆 • 第三種架構是含有兩層防火牆(詳見圖10-5)。 • 可從網際網路存取的系統,是放在兩組防火牆之間。 • 表10-3提供防火牆的規則。在檢視表10-3的時候,會發現規則和架構 #2的防火牆一樣。 • 在這種架構下含有兩不防火牆,防火牆 #2的規則詳見表10-4。
這些架構範例的內容都非常簡單,不過內部所含的觀念 - 如何設定防火牆才能允許適當的存取。
10-3 設定防火牆的規則 • 設計良好的規則就和良好的硬體設備一樣重要。 • 大多數的防火牆在判斷是否接收封包時,都是以『最符合』的方式運作。 • 在設計規則時,『最符合』演算法是指 - 特別的規則放在所有規則的第一順位,之後才會設計通用規則。 • 這樣的作法會優先比對特殊的規則,然後才會比對通用規則。
雖然這樣的作法很好,但也沒有改善防火牆的效率問題。雖然這樣的作法很好,但也沒有改善防火牆的效率問題。 • 調查封包的規則越多,防火牆就會需要更多的處理時間。 • 為了讓防火牆更有效率,也應該多加考量、設計良好的規則。 某些防火牆提供規則處理器,也就是說某些規則被遮蓋掉的時候,處理器會特別標示問題點。而管理者在正式設定防火牆規則之前,可以依據這些問題點加以改善。
為了提高防火牆的工作效率,所以也需要檢視防火牆的流量負載,然後依照傳輸的類型排序。為了提高防火牆的工作效率,所以也需要檢視防火牆的流量負載,然後依照傳輸的類型排序。 • 一般來說HTTP的流量最大,因此將HTTP相關的規則放在前面會讓防火牆更有效率。 • HTTP相關規則放在越前面越好。 • 如果前面的規則全部違反時,就是屬於拒絕使用HTTP的規則。
專案實作10:調查防火牆類型的差異 • 此一實作的主要目地,是希望找出不同防火牆的類型所保護的系統會有哪些差異點。為了完成專案實作,會需要同時用到應用層防火牆和封包過濾型防火牆。
專案實作10:步驟 • 1.依照架構 #2設定網路架構,但不要連上網際網路。 • 2.使用預設值架設郵件伺服器和Web伺服器,而且每一個系統都預留弱點。 • 3.在網路上架設應用層防火牆,並依據表10-2設定規則。 • 4.以其他設備做為外部設備(做為防火牆以外的網際網路系統),並在設備上載入弱點掃描器。
5.利用弱點掃描器掃瞄郵件伺服器、Web伺服器和防火牆。5.利用弱點掃描器掃瞄郵件伺服器、Web伺服器和防火牆。 • 6.現在,以封包過濾型防火牆取代應用層防火牆。 • 7.再次掃瞄伺服器的弱點。 • 8.比較這兩種作法的結果,看看掃瞄的資訊有沒有差異?相同的弱點都可以通過防火牆?如果不能通過防火牆的話,那是為什麼?
專案摘要 • 如果應用層防火牆的代理器都是一般性的代理器,雖然可以透過封包過濾型防火牆掃瞄到的弱點,卻無法透過應用層防火牆掃瞄到弱點。 • 這是因為封包到達郵件和Web伺服器之前,就會被代理器攔截和阻絕。 • 在某些情況下,無法保護伺服器的弱點。