虛擬LAN安全的最佳實務經驗 )

來源:互聯網
上載者:User

本文的目的是全面介紹思科工程師多年積累的豐富經驗和建議,協助客戶和現場工程師正確地在思科交換器上配置 VLAN 。除此以外,本文還將通過要點說明解釋 @stake 測試的主要結果,闡述解決安全問題的方法。

基本安全準則

要想建立安全的交換網,必須先熟悉基本安全準則。需要特別注意的是, SAFE 最佳實務 [2] 中強調的基本準則是設計任何安全交換網的基石。

如果使用者不希望任何裝置受損,則必須嚴格控制對該裝置的訪問。不僅如此,所有網路系統管理員都應該使用 思科平台上提供的所有實用安全工具,包括系統密碼的基本配置、 IP 准入過濾器和登陸檢查,以及 RADIUS 、 TACACS+ 、 Kerberos 、 SSH 、 SNMPv3 、 IDS 等更先進的工具(詳情參見 [3] )。

必須使所有基本安全準則得到滿足之後,再關注更先進的安全細節。在下面的章節中,我們將說明與 VLAN 相關的問題。

虛擬 LAN

第二層( L2 )交換器指能夠將若干連接埠組成虛擬廣播域,且各虛擬廣播域之間相互隔離的裝置。這些域一般稱為虛擬 LAN ( VLAN )。

VLAN 的概念與網路領域中的其它概念相似,流量由標記或標籤標識。標識對第二層裝置非常重要,只有標識正確,才能隔離連接埠並正確轉寄接收到的流量。正如後面章節 中將要介紹的那樣,缺乏標識有時是引發安全問題的原因,因而需要避免。

如果裝置中的所有分組與相應 VLAN 標記緊密結合,則能夠可靠區分不同域的流量。這就是 VLAN 交換體繫結構的基本前提。

值得注意的是,在物理鏈路(有時稱為幹線)上,思科裝置使用的是 ISL 或 802.1Q 等常用的 VLAN 標記技術。與此同時,思科裝置使用先進標記技術在內部保留 VLAN 資訊,並用於流量轉寄。

此時,我們可以得出這樣的結論:如果從源節點發送出去之後,分組的 VLAN 標識不能被修改,即保持端到端不變,則 VLAN 的可靠性應等價於物理安全性。

關於這個問題,我們還將在下面詳細討論。

控制台

惡意使用者特別希望能夠訪問網路裝置的管理主控台,因為一旦成功,就能夠容易地根據他們的需要修改網 絡配置。

在基於 VLAN 的交換器中,除與帶外連接埠直接連接外,管理 CPU 還可以使用一個或多個 VLAN 執行帶內管理。另外,它還可以使用一個或多個 VLAN 與其它網路裝置交換協議流量。

基本物理安全準則要求網路裝置位於可控(鎖定)空間,主要 VLAN 安全準則則要求將帶內管理和協議流量限制在可控環境中。這個要求可以通過以下工具和最佳實務經驗實現:

•  流量和協議 ACL 或過濾器

•  QoS 標記和優先順序劃分(控制協議由相應的服務等級或 DSCP 值區分)

•  有選擇地關閉不可信連接埠上的第二層協議(例如關閉接入連接埠上的 DTP )

•  只在專用 VLAN 上配置帶內管理連接埠

•  避免使用 VLAN 1 傳輸任何資料流量

命令樣本:

Catalyst 作業系統( CatOS )軟體 Cisco IOS o 軟體

使用 VLAN 1 需 注意的事項

VLAN 1 成為特殊 VLAN 的原因是,需要第二層裝置才能由預設 VLAN 分配其連接埠,包括其管理連接埠。另外, CDP 、 PAgP 和 VTP 等許多第二層協議都需要發送到幹線鏈路上的特定 VLAN 。基於這三個原因,最後選中了 VLAN 1 。

因此,如果裁剪不當, VLAN 1 有時會不明智地包含整個網路。當其直徑達到一定程度時,不穩定性風險將迅速升高。不僅如此,如果使用幾乎覆蓋全網的 VLAN 執行管理工作,則將提高可信裝置的風險,使其容易受到因誤配置或意外接入而進入 VLAN 1 ,或者特意利用這種意外安全性漏洞接入 VLAN 1 的不可信裝置的攻擊。

為挽回 VLAN 1 的聲譽,可實施一個簡單的通用安全準則:作為一項安全規定,網路系統管理員應該將任何 VLAN ,尤其是 VLAN 1 與並非絕對需要此 VLAN 的所有連接埠隔離開。

因此,對於 VLAN 1 ,上述準則可以轉換成以下建議:

•  不使用 VLAN 1 傳輸帶內管理流量,使用另一專用 VLAN ,將管理流量與使用者資料和協議流量隔離開;

•  撤銷 VLAN 1 中所有不需要的幹線和接入連接埠(包括未串連連接埠和關閉連接埠)。

同樣,上述規則也適用於管理 VLAN 讀操作:

•  不在不需要的任何幹線或接入連接埠上組態管理 VLAN (包括未串連連接埠和關閉連接埠);

•  為增強安全性,應儘可能不使用帶內管理,轉而使用頻外管理(如果想詳細瞭解頻外管理基礎設施,請參見 [3] )。

作為一項設計準則,必須“切掉”特定 VLAN 中不需要的流量。例如,為防止所有 telnet 串連,只運行 SSH 進程,通常會對管理 VLAN 中傳輸的流量應用 VLAN ACL 和 / 或 IP 過濾器。另外,也可以應用 QoS ACL ,以便限制呼叫流量的最高速率。

如果 VLAN 1 或者管理 VLAN 以外的 VLAN 出現安全問題,應使用自動或人工剪裁。需要注意的是,以透明或關閉方式配置 VTP 或者人工剪裁 VLAN 通常是增強對 VLAN 網路控制的最有效方法。

命令樣本:

CatOS Cisco IOS 軟體

“完全信任或完全不信任所有人同樣有害”——英國諺語

正確決定並實施 VLAN 1 之後,下一個邏輯步驟是將注意力轉向安全環境中另一常用的、同等重要的最佳實務。這是個通用的安全準則:將不可信裝置與不可信連接埠相連,將可信裝置或可信 連接埠相連,斷開所有其他連接埠。這個準則可轉變為以下通用建議:

•  如果某連接埠與“外部”裝置相連,則不要與它進行任何通訊,否則,很可能會中了某人的圈套,產生對自己不利的效果。在這些連接埠上,應關閉 CDP 、 DTP 、 PAgP 、 UDLD 及其它不必要的協議,並啟用 portfast/BPDU 防護。我們可以這樣想這個問題:為什麼要冒險與不可信任的鄰居交談呢?

•  啟用根防護特性,防止直接或間接串連的 STP 型裝置影響根橋的位置。

•  如果想限制或防止意外協議與網路級 VLAN 配置互動,應對 VTP 域作相應的配置,或者全部關閉 VTP 。這種預防措施不但能限制或防止將管理員的錯誤傳播到整個網路,還能限制或防止 VTP 版本較高的新交換器意外地覆蓋掉整個域的 VLAN 配置。

•  預設狀態下,只能相信那些確實“可信”的連接埠,所有其它連接埠則一律定為“不可信”連接埠,以防止串連的裝置不適當地修改 QoS 值。

•  關閉未使用連接埠,將其放置在未使用 VLAN 中。如果不與未使用 VLAN 建立串連,或者不在未使用 VLAN 中添加裝置,就可以通過基本的物理或邏輯障礙來防止非授權訪問。

命令樣本:

CatOS Cisco IOS 軟個件

為什麼首先擔心第二層安全性?

為使不同層次能夠獨立操作(只瞭解其相互介面),我們建立了 OSI 模型。 OSI 的思想是:只要留有各層次之間的標準介面,某層協議的開發就不會影響到其它層次。

遺憾的是,這意味著,當某個層次遭襲時,由於其它層次意識不到問題的存在,因而會危及通訊的安全性 ( 1 所示)。

1 OSI 模型的結構

在這個體繫結構中,系統的安全性只相當於最薄弱鏈路的安全性。

資料連結層與其它層次一樣脆弱,可能會遭受各種攻擊,因此,交換器必須通過配置加以保護。

VLAN 網路可能會遇到哪類攻擊?

第二層的多數攻擊都將使裝置失去攻擊者跟蹤能力,這樣,攻擊者就能夠在轉寄路徑上大肆執行惡意操 作,先修改配置,然後攻擊網路。

下面列出的是人們最常談到的第二層攻擊,無專屬偶,這些也是 @stake 記錄的攻擊類型 [1] :

•  MAC 洪泛攻擊

•  802.1Q 和 ISL 標記攻擊

•  雙封裝 802.1Q/ 嵌套式 VLAN 攻擊

•  ARP 攻擊

•  專用 VLAN 攻擊

•  組播暴力密碼破解攻擊

•  擴充樹攻擊

•  隨機幀重壓攻擊

下面詳細說明這些攻擊。

MAC 洪泛攻擊

從嚴格意義上講,這種攻擊不屬於 “攻擊”,因為它只是限制所有交換器和橋接器的工作路徑。它們佔用了用於儲存所有接收分組的源地址的有限硬體學習表,當這些表充滿後,由於無法再讀到流量 的地址,無法轉寄流量,因而會出現流量洪泛現象。但是,由於分組洪泛只局限在初始 VLAN 內,因而不允許 VLAN 跳轉(如 @stake 的報告所示)。

惡意使用者可以利用這種攻擊將與其串連的交換器轉變成啞偽集線器,搜尋並查看所有洪泛流量。很多程式 都可以用於執行此項任務,例如 macof ,它是 dsniff 套件的一部分 [4] 。惡意使用者可以利用這個弱點發起實際攻擊,例如 ARP 破壞攻擊(欲知詳情,請參見《 ARP 攻擊》)。

非智能交換器無法抵禦這種攻擊,因為它不檢查發送方的第二層標識,發送方只需發送偽分組就能假冒無 限數量的裝置。

思科的交換器支援多種特性,以便識別並控制所連裝置的身份。這些交換器奉行的安全準則非常簡單:認 證和說明對所有不可信裝置都至關重要。

需要強調的是,連接埠安全性、 802.1x 和動態 VLAN 這三個特性可用於根據使用者的登陸 ID 和裝置自身的 MAC 層標識限制裝置串連。

例如,利用連接埠安全性,預防 MAC 洪泛攻擊可以像限制每個連接埠可以使用的 MAC 地址數那麼簡單:裝置流量的標識將直接與其原始連接埠相接。

802.1Q ISL 標記攻擊

標記攻擊屬於惡意攻擊,利用它,一個 VLAN 上的使用者可以非法訪問另一個 VLAN 。例如,如果將交換器連接埠配置成 DTP auto ,用於接收偽造 DTP 分組,那麼,它將成為幹線連接埠,並有可能接收通往任何 VLAN 的流量。因此,惡意使用者可以通過受控制的連接埠與其它 VLAN 通訊。

有時候,即使只是接收普通分組,交換器連接埠也可能違背自己的初衷,像全能幹線連接埠那樣操作(例如, 從本地以外的其它 VLAN 接收分組)。這種現象通常稱為“ VLAN 滲漏”(如果想閱讀關於類似問題的報告,請參見 [5] )。

對於第一種攻擊,只需將所有不可信連接埠(不符合信任條件)上的 DTP 設定為“關”,即可預防這種攻擊的侵襲;要對付第二種攻擊,可以按照下面介紹的簡單配置步驟操作(例如下一節中介紹的步驟),也可以通過軟體升級實現。幸 運的是, Cisco Catalyst 2950 、 Catalyst 3550 、 Catalyst 4000 和 Catalyst 6000 系列交換器並不需要進行這種升級,因為其上啟動並執行軟體和硬體能夠在所有連接埠上實施適當的流量分類和隔離(如 @stake 在 [1] 中說明的那樣)。

那麼,報告中為什麼會提及本地 VLAN 呢 [5] ?我們將在下面的章節中提供答案 ......

雙封裝 802.1Q/ 嵌 套式 VLAN 攻擊

雖然在交換器內部,但 VLAN 數字和標識用特殊擴充格式表示,目的是使轉寄路徑保持端到端 VLAN 獨立,而且不會損失任何資訊。在交換器外部,標記規則由 ISL 或 802.1Q 等標準規定。

ISL 屬于思科專有技術,是裝置中使用的擴充分組前序的緊湊形式:由於每個分組總會獲得一個標記,沒有標識丟失風險,因而可以提高安全性。

另一方面,制訂了 802.1Q 的 IEEE 委員會決定,為實現向下相容性,最好支援本地 VLAN ,即不與 802.1Q 鏈路上任何標記顯式相關的 VLAN 。這種 VLAN 以隱含方式用於 802.1Q 型連接埠上接收到的所有無標記流量。

這種功能是使用者所希望的,因為利用這個功能, 802.1Q 型連接埠可以通過收發無標記流量直接與老 802.3 連接埠對話。但是,在所有其它情況下,這種功能可能會非常有害,因為通過 802.1Q 鏈路傳輸時,與本地 VLAN 相關的分組將丟失其標記,例如其服務等級( 802.1p 位)。

但是基於這些原因——丟失識別途徑和丟失分類資訊,就應避免使用本地 VLAN ,更不要說還有其它原因, 2 所示。

2 雙封裝攻擊

先剝離,再送回

攻擊者 802.1q 幀 幀

VLAN A VLAN B 資料 包含本地 VLAN A 的幹線 VLAN B 資料

注意: 只有幹線所有的本地 VLAN 與攻擊者相同,才會發生作用。

當雙封裝 802.1Q 分組從 VLAN 恰巧與幹線的本地 VLAN 相同的裝置進入網路時,這些分組的 VLAN 標識將無法端到端保留,因為 802.1Q 幹線總會對分組進行修改,即剝離掉其外部標記。刪除外部標記之後,內部標記將成為分組的惟一 VLAN 標識符。因此,如果用兩個不同的標記對分組進行雙封裝,流量就可以在不同 VLAN 之間跳轉。

這種情況將被視為誤配置,因為 802.1Q 標準並不逼迫使用者在這些情況下使用本地 VLAN 。事實上,應一貫使用的適當配置是從所有 802.1Q 幹線清除本地 VLAN (將其設定為 802.1q-all-tagged 模式能夠達到完全相同的效果)。在無法清除本地 VLAN 時, 應選擇未使用的 VLAN 作為所有幹線的本地 VLAN , 而且不能將該 VLAN 用於任何其它目的 。 STP 、 DTP 和 UDLD (參見 [3] )等協議應為本地 VLAN 的唯一合法使用者,而且其流量應該與所有資料分組完全隔離開。

ARP 攻擊

ARP 協議 [6] 是一項老技術。 ARP RFC 產生的時候,網路中的所有人都被視為“友好人士”,因而沒有在 ARP 功能中考慮安全性。這樣,任何人都可以聲稱自己是某個 IP 位址的所有者。更準確地說,任何人都可以聲稱其 MAC 地址與某個子網內的任何 IP 位址相關。這是完全可行的,因為 ARP 請求或回覆中包含裝置的第二層標識資訊( MAC 位址)和第三層標識( IP 地址),而且沒有核實機制,無法核查這些標識的準確性。

在另一個執行個體中,由於不能用準確、可靠的手段確認裝置的身份,因而出現了嚴重的安全性漏洞。這個例子 同時表明,如果 OSI 模型中的較低層次遭到攻擊,由於較高層意識不到問題的存在,因而將直接影響較高層的操作。( ARP 是一種獨特的協議樣本,它在第二層內運行,但從邏輯上,它位於 OSI 模型中資料連結層與網路層之間的邊界上。)

@stake 發動的 ARP 攻擊的目的是,通過發送包含偽造標識的 ARP 分組,欺騙某交換器將分組轉寄到另一個 VLAN 中的某台裝置。但是,在所有思科裝置中, VLAN 是正交的,因而不依賴於 MAC 位址。所以,只通過修改 ARP 分組中的裝置標識,是不可能影響它與其它 VLAN 內裝置的通訊方式的。事實上,正如報告中所說,不可能進行任何 VLAN 跳轉。

另一方面,在同一個 VLAN 內,利用 ARP 破壞或 ARP 欺詐攻擊 [7] ,可以有效地欺騙終端網站或路由器識別偽造的裝置標識,致使惡意使用者能夠以中間人的身份,發動中間人( MiM )攻擊。

對於這種情況,一張圖可對其進行最好的說明(見圖 3 )。

3 ARP 破壞攻擊

將免費資訊送至 0000.0000.000B : 我的 IP 地址為 1.1.1.1 ,我的 MAC 地 址為 000:00:00:00:00:0C

PC 1.1.1.2 ARP 表 受到侵襲。所有外出流量都將通過 PC 1.1.1.3 ,然後將流量透明地轉寄至路由器。

發動 MiM 攻擊的方法是,在發送至受襲裝置的 ARP 包中假冒另一台裝置(例如預設閘道),由於接收方不檢查這些分組,因而其 ARP 表將接收假冒資訊。

預防這種攻擊有兩種方法,一種方法是阻擋攻擊者和受攻擊裝置之間的第二層直接通訊,另一種方法是在 網路中嵌入更多智能,使之能夠檢查轉寄 ARP 分組的標識是否正確。第一種方法可以通過 Cisco Catalyst 專用 VLAN 或專用 VLAN 邊緣特性實現。第二種方法可以利用稱為 ARP 檢查的新特性實現,這種特性首先在 Cisco Catalyst 6500 Supervisor Engine II 上的 CatOS 7.5 中推出,以後將在 Cisco Catalyst 交換器的 Cisco IOS 軟體中提供。

專用 VLAN 攻 擊

“專用 VLAN 攻擊”有點用詞不當,因為它對應的不是安全性漏洞,而是對特性的某種期望。專用 VLAN 屬於第二層特性,因而應該只在第二層隔離流量。另一方面,路由器則屬於第 3 層( L3 )裝置,當它與專用 VLAN 混合連接埠相連時,即使目的地與始發地在同一個子網中,也應該將該連接埠上接收到的第三層流量轉寄到相應的目的地( @stake 將這種行為稱為第二層代理)。

因此,雖然兩個相互隔絕的 VLAN 中的兩台主機應該通過第二層直接通訊相互交流,但它們通常在相互交談時將路由器作為分組中繼。

上述現象 4 所示。

4 第二層代理

與常規路由流量相同,如果需要,可以利用轉寄裝置上相應的 ACL 配置對通過第二層代理中繼的分組進行過濾。

利用輸出思科 IOS ACL 阻擋中繼流量的樣本如下:

deny subnet/mask subnet/mask

permit any subnet/mask

deny any any

如果想詳細瞭解 VLAN ,請參見 [8] 。

組播暴力密碼破解攻擊

這種攻擊試圖利用交換器的潛在安全性漏洞(讀操作:缺陷)發起第二層組播幀風暴。 @stake 希望通過測試瞭解第二層交換器快速接收到大量第二層組播幀時將發生什麼情況。正確的反應是將流量限制在原始 VLAN 中,錯誤的反應是將幀泄漏到其它 VLAN 中。

@stake 的結果顯示,這種攻擊對 Cisco Catalyst 交換器無效,因為所有幀都包含在相應的廣播域中(這個結果毫不奇怪:畢竟,在所有 Catalyst 交換器中,廣播只是組播的一個特殊部分)。

產生樹協議

試圖利用交換器弱點(例如缺陷)發動攻擊的另一種攻擊是 STP 攻擊。 @stake 測試的所有 Cisco Catalyst 交換器都支援這種協議。預設狀態下, STP 是開啟的,而且交換器上的所有連接埠都可以收聽 STP 訊息。 @stake 試圖測試,在某些情況下,思科 PVST (每 VLAN 產生樹)是否將無法開啟 1 多個 VLAN 。攻擊包括窺探線路上的 STP 幀,以便擷取連接埠 STP 的 ID 。接下來,攻擊者將發出 STP 配置 / 拓撲變更認可 BPDU ,宣布它稱為優先順序較低的新根橋。

在此過程中,測試者輸入廣播流量,看是否有 VLAN 漏出,結果是沒有出現這種現象。這說明,在思科交換器上實施的 STP 的功能十分強大。

隨機幀重壓攻擊

這種攻擊有很多形式,但主要特點是,它包含隨機分布在多個分組域的暴力密碼破解攻擊,只保持源地址和目標地 址不變。 @stake 工程師的多次測試表明,任何分組都無法成功地跳過 VLAN 。

專用 VLAN 可以更好地隔離第二層的主機,並防止它們受到不可信裝置的意外惡意流量的攻擊。使用時,可以建立互信任主機群組,將第二層網路分成多個子域,只讓友好裝置相 互交流。如果想詳細瞭解專用 VLAN ,請參見 [8] 。

結論

實踐表明, VLAN 技術的可靠性遠遠高於誹謗者的預期,只有使用者誤配置或特性誤用才能突破其強大功能。

使用者會犯的最嚴重的錯誤是,不重視進階交換網路體繫結構中的資料連結層,尤其是 VLAN 。需要牢記的是, OSI 模型的安全性與其最薄弱鏈路的安全性相當。因此,必須同等地重視每一層次,才能保證整個結構的安全性。

•  裝置或演算法可能失敗的一種方式,例如,當裝置誤操作、成為易受攻擊的薄弱環節時。

基於 Cisco Catalyst 交換器的任何良好網路裝置都應該包含本文介紹的最佳實務準則,這樣才能有效保護網路的第二層安全體繫結構免遭破壞。

雖然前面章節討論的某些安全概念比較通用,但需要注意的是,本文針對的只是包含 Cisco Catalyst 交換器的網路,其它交換器廠商的實施方法可能大不相同,因而某些交換器可能更容易遭受本文介紹的各種攻擊的侵襲。

參考資料

•  研究報告:安全使用 VLAN : @stake 安全評估—— 2002 年 8 月

http://www.cisco.com/warp/public/cc/pd/si/casi/ca6000/tech/stake_wp.pdf

2. SAFE :企業網的安全藍圖, http://www.cisco.com/go/safe/

3. Catalyst 4500 、 5000 和 6500 系列交換器配置和管理的最佳實務, http://www.cisco.com/warp/customer/473/103.html

4. dsniff ,作者 Dug Song , http://monkey.org/~dugsong/dsniff/

5. VLAN 安全性測試報告, 2000 年 7 月, http://www.sans.org/newlook/resources/IDFAQ/vlan.htm

6. 乙太網路位址解析通訊協定, RFC 826 , http://www.ietf.org/rfc/rfc0826.txt

7. ARP 欺騙攻擊:

http://www.sans.org/newlook/resources/IDFAQ/switched_network.htm

8. 白皮書: Catalyst 6500 系列服務供應商特性(專用 VLAN )

http://www.cisco.com/warp/public/cc/pd/si/casi/ca6000/tech/c65sp_wp.htm

9. @stake , http://www.atstake.com/

縮減詞與定義

802.1Q

定義了標準 VLAN 標記方案的 IEEE 規範

BPDU

橋協議資料單元

運行產生樹協議的交換器所交換的資訊

CDP

思科發現協議

用於發現由相容裝置群組成的網路拓撲的思科專有協議

DTP

動態中繼協議

用於動態協商中繼參數(例如狀態和格式)的思科專有協議

IEEE

電子和電氣工程師協會

ISL

交換器間鏈路

思科專有 VLAN 標記格式

本地 VLAN

不與 802.1Q 鏈路上任何標記顯式相關的 VLAN

OSI

開放系統互聯

網路參考模型

PAgP

連接埠匯聚協議

用於動態協商通道參數(如連接埠數)的思科專有協議

STP

產生樹協議

IEEE 802.1D 標準中定義的橋協議

UDLD

單向鏈路檢測

用於核實物理鏈路雙向性的思科專有協議

VLAN

虛擬區域網路

包含一個或多個交換器連接埠的虛擬廣播域

VTP

VLAN 中繼協議

用於在預定域中分發 VLAN 資訊的思科專有協議

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.