我的 VLAN 1 是否存在安全風險?
首先,我對 VLAN 比較陌生。我有一個 ZyXEL GS-1524 交換機和兩個我想分開的網路,但它們需要使用同一個路由器。路由器在埠 22 上,埠 17 和 18 屬於第一個網路,所有其他埠屬於第二個網路。
問題是我的交換機要求所有埠都在 VLAN 1 上。為第一個網路只創建 VLAN 2 似乎是不夠的,因為相同的埠屬於 VLAN 1,而任何連接到屬於 VLAN 1 的埠的東西都會能夠到達它。
因此,我創建了兩個新的 VLAN:第一個網路的 VLAN 2 和第二個網路的 VLAN 3。我還更改了 PVID,以便在 17 或 18 上未標記的內容被標記為 VLAN 2,其餘的被標記為 VLAN 3。這樣,未標記的內容被強制保留在通過 PVID 分配的 VLAN 內。
現在,如果連接的設備標記其數據包會發生什麼?標記的數據包不會重新標記。如果應該在 VLAN 2 上的設備將其數據包標記為 VLAN 3,我想什麼都不會出錯,因為它的埠不在 VLAN 3 中。但是,所有埠都在 VLAN 1 中 - 交換機沒有給我任何選擇。這是否意味著只要一方或雙方(不確定)將其數據包標記為 VLAN 1,所有設備都可以相互訪問?那將是對安全的破壞!
根據手冊的第 8.2 節,如果埠設置為靜態 VLAN,則在該埠上接收到的數據包將被發送到配置的 VLAN,無論它們是否被標記。
我最近剛買了一台二手的 GS-1548,它執行與 GS-1524 相同的韌體並出現同樣的問題。
簡而言之,基於 Web 的管理 UI 不允許從 VLAN 1(固定管理 VLAN)中刪除埠。所有埠始終是 VLAN 1 的一部分,無論是標記模式還是非標記模式。您可以從其他 VLAN 中自由刪除埠,但“非成員”模式在 VLAN 1 中不可切換。
快速的 Google 搜尋顯示此限制僅在客戶端實現 - 在瀏覽器中執行的 JavaScript 程式碼中。一個名為berry120的 Blogger 使用者發布了有關如何使用瀏覽器內置的 Web 開發人員工具手動繞過此檢查的說明。
我更進一步,編寫了一個使用者腳本,它可以透明地繞過檢查,讓您以與其他 VLAN 完全相同的方式管理 VLAN 1。你可以在這裡找到它。
(同樣的問題和修復也適用於ZyXEL Switch 1500 系列中的其他型號:ES-1528 和 ES-1552。)