延續上集的內容,在了解網路型入侵偵測暨防禦系統所提供的四種安全性能之後,接著介紹其主要元件,並解釋被用來部署這些元件的架構。除此之外,文章後半部則會討論該類型系統技術上的限制,並說明各種不同的防禦性能,以及要怎麼做才能夠落實管理能力。
元件與架構說明
首先,談論典型的網路型入侵偵測暨防禦系統主要元件,並且闡述這些元件最常見的網路架構。此外,也提供一些關於該類型系統之傳感器應該擺放在哪裡的建議。
常見的元件
典型的網路型入侵偵測暨防禦系統是由多個傳感器、一個或多個管理伺服器、多個控制台介面、零個或一個或多個資料庫伺服器所組成。除了傳感器外,所有的元件都類似其他種類的入侵偵測暨防禦系統,網路型系統的傳感器監控並分析一個或多個網段的網路活動。
執行監控的NIC被放在雜亂模式,將會接受所有它們看得到進來的封包,不管它們想要去到哪一個目的端。大部分入侵偵測暨防禦系統部署採用多個,而大型部署的話甚至可能會有幾百個傳感器。
裝置
裝置類的傳感器是由專門的硬體和傳感器軟體所組成。硬體通常都會被最佳化給傳感器使用,包含專門的網卡和網卡驅動程式(為了有效擷取封包),以及專門的處理器或其他用來協助分析的硬體元件。系統的部分或全部軟體也可能存在於韌體內,以增加效能。裝置本身通常使用一個客製化而且強化過的作業系統,而且管理者通常不會直接去存取。
純軟體
只有軟體。某些廠商僅販售傳感器軟體而已,沒裝置,管理者可以安裝軟體到主機上以符合特定規格。傳感器軟體可能包含客製化的作業系統,或者可能被安裝到一個標準的作業系統上。
網路架構與傳感器位置
如果可行的話,組織應該考量讓他們的網路型入侵偵測暨防禦系統部署採用管理網路。如果入侵偵測暨防禦系統被部署,卻沒有分離的管理網路的話,應該考量是否需要VLAN來保護系統通訊。除了選擇適當的網路給各個元件外,管理者也需要決定該系統的傳感器應該要擺放在甚麼位置。傳感器可以採用在線式(Inline)和被動式兩種部署方式。
在線式
部署在線式傳感器後,監控的網路流量必須經過在線式傳感器,還蠻像流量流經防火牆。事實上,某些在線式傳感器是一個混合型的防火牆∕入侵偵測暨防禦系統設備,而其他的可能就只是單純的入侵偵測暨防禦系統。把傳感器部署成在線式的主要動機是,讓它們透過封鎖網路流量來阻止攻擊。
在線式傳感器通常都被放在防火牆和其他的網路安全設備會被放置的地方,例如那些應該被彼此切割之不同網路的連接處。非混合式的防火牆∕入侵偵測暨防禦系統設備的在線式傳感器,通常被部署在更安全的一邊,這樣所要處理的流量才會比較少。圖1呈現的就是這種部署方式。傳感器也可以被放在較不安全的那一邊,以提供保護給切割設備(例如防火牆)並減少其負載。
被動式
部署被動式傳感器,以監控真實網路流量的複本。實際上,這些流量並未真正經過傳感器。被動式傳感器通常被部署來監控關鍵的網路位置,例如不同網路之間的閘門,以及重要的網段(例如DMZ子網路)中的活動。被動式傳感器可以透過以下不同的方式來監控流量:
‧生成埠(Spanning Port):很多交換器都有生成埠,可以看到經過這台交換器的所有網路流量的埠。把傳感器連接到生成埠,可以讓它監控許多主機。雖然這樣的監控方法相當簡單而且不貴,但也可能有問題。如果交換器被設定錯誤或重新設定時設錯了,那麼生成埠可能無法看到所有的流量。生成埠的另一個問題是它們的使用相當耗損資源;當一台交換器在高負載的情況下,其生成埠可能無法看到所有流量,或者可能暫時會被關閉。而且,許多交換器只有一個生成埠,而且通常都需要多個監控工具、網路鑑識分析工具和其他傳感器去監控相同的網路流量。
‧網路橋接(Network Tap):網路橋接是傳感器和實體網路媒體的直接連線,例如光纖纜線。Tap會把該媒體攜帶的所有網路量的複本提供給傳感器。安裝Tap通常會中斷一些網路時間,而且Tap的問題可能會再導致額外的中斷時間。而且,不像生成埠通常已經呈現在組織中,網路橋接需要另外購買加上去。
‧入侵偵測系統平衡負載器(IDS Load Balancer):入侵偵測系統平衡負載器是一個設備,整合並且指揮網路流量去監控系統(這裡的監控系統包含了傳感器)。負載平衡器可以從一個或多個生成埠或網路橋接接收網路流量的複本,並且整合從不同網路∕網段來的流量(例如重新組裝被兩個網路分割的Session)。平衡負載器接著派送網路流量複本到一個或多個傾聽設備(Listening Device),包含入侵偵測暨防禦系統傳感器,就看當初管理者設定的規則為何。規則會告訴平衡負載器哪一種流量要提供給哪一個傾聽設備。常見的組態設定包含:發送所有流量給多個傳感器(這使得多種傳感器在同時間對相同活動執行分析)、根據數量動態切割流量給多個傳感器(通常會這麼做是要執行平衡負載,這樣才不會有傳感器被淹沒)、根據IP位址∕通訊協定或其他特徵切割流量給多個傳感器(可能是為了負載平衡的目的,例如讓一個傳感器專門在監測網頁活動,然後其他傳感器去監測所有其他的活動。切割流量可能是為了想針對特定種類流量去細部分析而切割,例如涉及大部分重要主機的活動)。
如果相關的事件或者單一事件的部分是由不同的傳感器所看見的話,在多個入侵偵測暨防禦系統傳感器之間切割流量,可能會導致偵測精確度下降。假設兩個傳感器都各自看到攻擊手法的不同步驟,如果各個步驟都被視為良善無害,但如果把其中兩個步驟排在一起變成順序性,就會是惡意的活動,那麼該攻擊可能就無法被識別出來。
圖2呈現了被動傳感器連接到所要監控的網路的範例,採用入侵偵測系統平衡負載器、網路橋接以及生成埠。
為了要讓傳感器能夠預防入侵,大部分的做法是將傳感器用在線式模式部署,而非被動式。因為採用被動式的話,監控網路流量的副本,它們通常不提供方式給傳感器去停止網路流量到目的端。在某些案例中,被動式傳感器可以把封包放到網路中,企圖中斷一個連線,但這樣的方法是比較沒效果。一般來說,應該要採用在線式去部署傳感器,才有預防效果。
技術上的限制
雖然網路型入侵偵測暨防禦系統提供廣泛的偵測性能,它們確實也有一些重大的限制。其中三個最重大的限制是,分析被加密的網路流量、處理高流量負載、抵禦入侵偵測暨防禦系統本身的攻擊,接著就來談談這三個限制。
無法偵測藏在加密流量的攻擊
此種狀況包含了VPN連線、HTTPS、SSH Session。如前面所述,某些網路型入侵偵測暨防禦系統可以對加密連線的初始化連線建立去做一些分析,這可以識別出用戶端或伺服端軟體有已知的弱點,或者錯誤的組態設定。
為了確保有對加密流量內的Payload執行足夠的分析,組織應該使用在它們被加密之前就分析Payload,或者解密後再分析。這種範例像是放置一台網路型入侵偵測暨防禦系統傳感器去監控未加密的流量(例如經由VPN Gateway進入組織的流量從那時候已經被解密),並且用主機型入侵偵測暨防禦系統軟體去監控來源主機或是目的主機的活動(市場上已經有部分產品可以採用在線式部署卻又同時檢查SSL加密流量,這種產品基本上做的就是中間人,建立兩條SSL連線)。
高負載時可能無法執行完整分析
被動式入侵偵測暨防禦系統傳感器可能會丟掉部分封包,這可能無法被偵測到某些事故,尤其是在採用協定狀態分析法時。對在線式入侵偵測暨防禦系統傳感器而言,在高負載的時候丟掉封包,會導致網路可用性受到干擾;而且,處理封包的延遲可能導致無法接受的高度延遲。為了避免這個情形,採用在線式入侵偵測暨防禦系統傳感器的組織,應該要挑選那些可以識別出高負載情況,而且要不是讓特定種類的網路流量直接通過傳感器而不執行完整分析,就是丟棄低優先順序的流量以降低負載。
許多廠商企圖把自身的傳感器最佳化,以在高負載的情況下提供更好的效能,所採取的措施包括採用專門的硬體(例如高頻寬網路卡),並且把元件軟體重新編譯去合併那些管理者做的設定和其他客製化。雖然廠商通常是用最大頻寬能力來評比它們的傳感器,但其實任何產品的真實能力是根據許多因素構成的,包含以下幾類:
1. 使用的是何種通訊協定,以及對於各個通訊協定分析的深度。廠商評比產品,通常是根據他們對「典型」通訊協定組合去執行合理分析的能力。而每個公司想要執行的分析程度,以及其通訊協定組合可能會差異很大。
2. 連線本身的壽命。例如傳感器對於一個長時間連線的所需成本比較小,而對多個連續的短時間連線的所需成本比較高。
3. 同步連線的數量。傳感器可以追蹤的連線數量通常是受限的,而各家產品又有所差異。
傳感器容易受到攻擊種類的影響
駭客可以產生不尋常的大流量,例如DDoS攻擊、異常行為(例如不尋常的分割封包)以企圖耗盡傳感器的資源或者造成當機。另一種攻擊手法「盲流」,產生的網路流量可能會觸發入侵偵測暨防禦系統,在短時間內就會發出許多警告。在許多案例當中,盲流其實並非真的要去攻擊任何目標。駭客反而會同時間另外執行一個真正的攻擊。駭客的目標是,盲流要不是導致入侵偵測暨防禦系統在某種程度上失效,要就是產生足夠多的警告,所以讓真正的攻擊不會被注意到。
許多傳感器可以識別出常見的DDoS、盲流工具以及手法;傳感器可以警告管理者有攻擊並且接著忽略其餘的活動,降低傳感器的負載。若使用網路型入侵偵測暨防禦系統產品,應該要確保它們提供的特色,讓它們能夠抵禦因本身遭受攻擊而導致的故障。
了解各類防禦性能
網路型入侵偵測暨防禦系統傳感器提供不同的防禦能力,可透過以下幾種類型來加以說明。
被動式
所謂的被動式,就是結束當下的TCP Session。被動式感測器可以企圖結束當下的TCP Session,透過傳送TCP RESET封包給兩端的端點,有時候這也叫做Session Sniping。傳感器做這件事情,會讓兩端點看起來像是對方試著要結束這個連線,目標是在攻擊成功之前就要讓其中一個端點去終止連線。
不幸的是,在許多案例中,RESET Packets並未及時被接收,因為必須監視和分析攻擊流量,檢測到攻擊,並將封包通過網路發送到端點。而且,因為這個手法只能適用在TCP,這樣的手法無法被套用在其他封包種類(例如UDP和ICMP)。其實,採用Session Sniping這個方法的人愈來愈少,因為其他的預防能力更有效。
在線式
針對在線式類型的防禦性能,可分成以下三點來說明:
‧執行在線式的防火牆:大部分的在線式入侵偵測暨防禦系統傳感器會提供防火牆能力,可用來丟棄或拒絕可疑的網路活動。
‧限縮頻寬使用:如果一個特定的網路協定未被妥適使用,例如DoS攻擊、惡意軟體散播、P2P檔案共享,某些傳感器可以限制通訊協定能夠使用的網路頻寬,這可以防止該活動對其他資源的頻寬使用產生負面影響。
‧變更惡意內容:某些在線式入侵偵測暨防禦系統傳感器可以消毒封包的一部分,這意思是說惡意內容被無害的內容取代掉,而且經過消毒的封包會被送到目的端。像是傳感器的Proxy可能會替所有流量執行自動正規化,例如用新封包去重新包裝應用Payload。這會把某些涉及封包標頭攻擊的流量消毒,不管系統是否偵測到攻擊。某些傳感器也會把受到感染的E-mail附件給移掉,然後從網路流量移除惡意內容中其他離散的部分。
同時具備被動式和在線式
同時具備被動式和在線式時的防禦性能,則包含以下的情況:
‧對其他網路安全設備重新組態設定:許多傳感器可以指導網路安全設備(例如防火牆、路由器和交換器)重新設定它們自己去封鎖特定種類的活動,或者將它路由到其他地方。這在許多情況下都是有幫助的,例如讓一個外部駭客繼續維持在網路外部,並且把已經被滲透的主機給隔離開來(例如把它移到隔離的VLAN)。而這樣的預防手法,只對一般網路安全設備透過封包標頭特徵區別出來的網路流量有用而已。
‧執行第三方程式:當特定惡意活動被偵測到時,某些系統感測器可以執行管理者限定的Script或程式碼,這可以觸發任何管理者想要的預防行動,例如重新設定其他安全設備以封鎖惡意活動。每當入侵偵測暨防禦系統不支援管理者想要執行的預防行動時,第三方程式碼或Script是最常被使用的。
大部分的感測器可以讓管理員為每種類型的警報指明防護功能配置,通常會包含開啟或關閉預防機制,以及指定應該採用哪一個預防性能。某些感測器有學習模式或模擬模式,壓抑所有預防行為,而且指示何時執行預防措施。如此一來,管理者在開啟預防功能設定之前就可以監控並微調它們,這樣就降低了不小心封鎖非惡意活動的風險。
落實管理與實施
大部分網路型入侵偵測暨防禦系統產品提供類似的管理能力,接下來討論關於實施階段應留意事項。
一旦挑選了入侵偵測暨防禦系統產品,管理者就需要去設計一個架構來執行該系統元件測試,保全系統元件,然後進行部署。
架構設計
針對網路型入侵偵測暨防禦系統的特定考量是,傳感器應該要被擺置在網路的位置,這包含了決定需要多少感測器、哪些感測器應該採在線式、哪些採被動式,以及被動式感測器應該如何被連接到網路(例如負載平衡器、網路橋接、交換器生成埠)。
元件測試及部署
實施網路型入侵偵測暨防禦系統需要短暫地中斷網路,特別是在部署在線式傳感器時。然而,被動式傳感器部署也可能因為許多原因而導致網路中斷,包含安裝網路橋接和入侵偵測系統負載平衡器,以及重新設定交換器去啟動生成埠功能。
保全系統元件
管理者應確保不管是被動式感測器或在線式感測器,都不指定IP位址給那些用於監控網路流量的網卡上,除非該網卡也同時被用在入侵偵測暨防禦系統的管理上,就另當別論。
「操作傳感器而沒有指定IP位址給其監控介面」,這種作業模式也叫做「隱匿模式」(Stealth Mode)。隱匿模式增進入侵偵測暨防禦系統傳感器的安全,因為預防了其他主機初始化連線就連到傳感器,如此隱藏了傳感器,避免暴露給駭客看到。
然而,駭客可能能夠識別傳感器的存在,並且透過分析其預防行為的特徵來判定正在使用哪一種產品。這樣的分析可能包含監控被保護的網路,並且判定哪個掃描模式觸發了特定的回應,以及甚麼數值被設定在特定的封包標頭欄位。
結語
網路型入侵偵測暨防禦系統有一些本身的限制。它們無法偵測到被加密的網路流量裡面的攻擊,因此應該被部署在一個加密之前就可以監控流量的地方,再者就只能部署在解密之後的地方。網路型入侵偵測暨防禦系統在高負載的情況下,通常無法執行完整分析;若採用在線式傳感器,就應該挑選那些可以識別高負載情形,而且不執行完整分析,就讓某種流量直接通過,又或者將低優先序的流量丟掉以減輕負擔。
網路型入侵偵測暨防禦系統的另一個限制是,它們容易受到各種類型的攻擊,大多數涉及大量流量,組織應該挑選那些有提供被設計好讓它們可以抵抗因為被攻擊而失效的產品。另外,也應該確保IP位址並未被指派給用來監控網路流量之傳感器的網路介面,除非該網卡同時被用來監控網路流量和管理入侵偵測暨防禦系統。
網路型入侵偵測暨防禦系統的傳感器提供不同預防性能。許多被動式傳感器可透過Reset來結束TCP會談,但這個手法通常無法及時產生作用,而且無法套用在UDP和ICMP這種非TCP會談。在線式傳感器的專門技巧包含了執行在線式防火牆功能、限縮頻寬使用、變更惡意內容,這些在特定情況下都有幫助。被動式和在線式傳感器都可以重新設定其他網路安全設備,而它們也可以執行第三方程式碼或Script來發起額外的防禦行動。
本文上下集從各層面介紹網路型入侵偵測暨防禦系統,包含網路基礎背景知識、常見元件、傳感器位置可以如何安排、安全性能、防禦性能、管理議題,而下一回內容將細部探討無線型入侵偵測暨防禦系統。
<本文作者:黃信智,目前為久揚科技服務有限公司營運總監,提供資安管理、隱私保護、營運持續管理等顧問諮詢服務、以及滲透測試、源碼檢測等資安服務。擁有CEH、ECIH、CISSP、ISO 27001 LA等資安證照。>