生成樹欺騙攻擊與防禦策略

小趙同學吖發表於2023-09-28

生成樹欺騙攻擊與防禦策略

工作目的

掌握交換機生成樹選舉的過程、欺騙原理、攻擊過程和防範策略

任務分析

生成樹的埠有五種狀態。交換機的邊緣埠不接收BPDU,選舉時直接從堵塞狀態轉變為轉發狀態,不參與生成樹的選舉過程,預設情況下,交換機的所有埠均為非邊緣埠,為避免生成生成樹欺騙攻擊,可以將交換機用於主機接入的埠設為邊緣埠

  • Disable
  • Blocking
  • Listening
  • Learning
  • Forwarding

將交換機配置成邊緣埠命令

stp edged-port enable

環境拓撲

image

pc和伺服器是由雲連線到虛擬機器進行操作,在這裡進行聯通性實驗及其原理講解,直接使用最簡單的方式

工作過程

一、基本配置

1.交換機vlan和埠配置
SW1
<Huawei>sys
[Huawei]un in en
[Huawei]sys SW1
[SW1]vlan batch 10 20
[SW1]stp enable 
[SW1]stp mode rstp
[SW1]port-group 1
[SW1-port-group-1]group-member Ethernet 0/0/1 to Ethernet 0/0/10
[SW1-port-group-1]port link-type access 
[SW1-port-group-1]port default vlan 10
[SW1-port-group-1]q
[SW1]port-group 2
[SW1-port-group-2]group-member Ethernet 0/0/11 to Ethernet 0/0/22
[SW1-port-group-2]port link-type access 	
[SW1-port-group-2]port default vlan 20
[SW1-port-group-2]q
[SW1]port-group 3
[SW1-port-group-3]group-member GigabitEthernet 0/0/1 GigabitEthernet 0/0/2
[SW1-port-group-3]port link-type trunk 
[SW1-port-group-3]port trunk allow-pass vlan 10 20
[SW1-port-group-3]q
[SW1]
SW2
<Huawei>sys
[Huawei]sys SW2
[SW2]un in en
[SW2]vlan batch 10 20 
[SW2]stp enable 	
[SW2]stp mode rstp 
[SW2]port-group 1
[SW2-port-group-1]group-member Ethernet 0/0/1 to Ethernet 0/0/10	
[SW2-port-group-1]port link-type access 
[SW2-port-group-1]port default v	
[SW2-port-group-1]port default vlan 10
[SW2-port-group-1]q
[SW2]port-group 2
[SW2-port-group-2]group-member Ethernet 0/0/11 to Ethernet 0/0/22
[SW2-port-group-2]port link-type access 
[SW2-port-group-2]port default vlan 20
[SW2-port-group-2]q
[SW2]port-group 3	
[SW2-port-group-3]group-member GigabitEthernet 0/0/1 GigabitEthernet 0/0/2
[SW2-port-group-3]port link-type trunk 
[SW2-port-group-3]port trunk allow-pass vlan 10 20
[SW2-port-group-3]q
[SW2]
SW3
<Huawei>sys
[Huawei]sys SW3
[SW3]un in en
[SW3]stp enable 	
[SW3]stp mode rstp 
[SW3]stp root primary 
[SW3]vlan batch 10 20 30 40
[SW3]int GigabitEthernet 0/0/1
[SW3-GigabitEthernet0/0/1]port link-type trunk 
[SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[SW3-GigabitEthernet0/0/1]q
[SW3]int GigabitEthernet 0/0/2
[SW3-GigabitEthernet0/0/2]port link-type trunk 
[SW3-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[SW3-GigabitEthernet0/0/2]q
[SW3]int GigabitEthernet 0/0/3
[SW3-GigabitEthernet0/0/3]port link-type access 
[SW3-GigabitEthernet0/0/3]port default vlan 30
[SW3-GigabitEthernet0/0/3]q
[SW3]int GigabitEthernet 0/0/4
[SW3-GigabitEthernet0/0/4]port link-type trunk 
[SW3-GigabitEthernet0/0/4]port trunk allow-pass vlan all
[SW3-GigabitEthernet0/0/4]q
[SW3]int Vlanif 10
[SW3-Vlanif10]ip add 192.168.1.1 24
[SW3-Vlanif10]q
[SW3]int Vlanif 20
[SW3-Vlanif20]ip add 192.168.2.1 24
[SW3-Vlanif20]q
[SW3]int Vlanif 30
[SW3-Vlanif30]ip add 192.168.3.1 24
[SW3-Vlanif30]q
[SW3]int Vlanif 40
[SW3-Vlanif40]ip add 192.168.4.1 24
[SW3-Vlanif40]q
[SW3]int GigabitEthernet 0/0/4
[SW3-GigabitEthernet0/0/4]port trunk pvid vlan 40
[SW3-GigabitEthernet0/0/4]q
[SW3]

在這裡G0/0/4任然屬於vlan1,所以需要打上標籤vlan40,不然後面會不能聯通外網,第一遍做的時候卡了很久在這裡

2.介面IP與路由協議配置
SW3
[SW3]ospf 1
[SW3-ospf-1]a 0
[SW3-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]q
[SW3-ospf-1]q	
[SW3]ip route-static 0.0.0.0 0.0.0.0 192.168.4.2
[SW3]
AR1
<Huawei>sys
[Huawei]sys AR1
[AR1]int GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip add 192.168.4.2 24
[AR1-GigabitEthernet0/0/0]q
[AR1]int Serial 2/0/0
[AR1-Serial2/0/0]ip add 202.116.64.1 24
[AR1-Serial2/0/0]q
[AR1]ospf 1
[AR1-ospf-1]a 0
[AR1-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255
[AR1-ospf-1-area-0.0.0.0]q
[AR1-ospf-1]q
[AR1]ip route-static 0.0.0.0 0.0.0.0 202.116.64.2
[AR1]
AR2
<Huawei>sys
[Huawei]sys AR2
[AR2]int GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]ip add 116.64.100.1 24
[AR2-GigabitEthernet0/0/0]q
[AR2]int Serial 2/0/0
[AR2-Serial2/0/0]ip add 202.116.64.2 24
[AR2-Serial2/0/0]q
[AR2]
3.路由器AR1的Easy-IP的配置
[AR1]acl 2000
[AR1-acl-basic-2000]rule permit source 192.168.0.0 0.0.255.255
[AR1-acl-basic-2000]q
[AR1]int Serial 2/0/0
[AR1-Serial2/0/0]nat outbound 2000
[AR1-Serial2/0/0]q
[AR1]

二、基本配置驗證

檢視SW3生成樹與埠的詳細資訊

image

檢視生成樹埠簡要資訊

image

聯通性測試

與外部網路進行連通性測試

image

三、入侵實戰

駭客交換機連線到SW1和SW2的新拓撲圖

image

在這裡測試的時候駭客交換機的mac地址一定要比SW3主根的mac地址小,不然同時設定優先順序的情況下,由於SW3的mac地址更小,駭客交換機成為不了主根,後續的實驗無法完成,可以多實驗幾次

在這裡有一個小小的知識點

選舉根橋(網橋id=優先順序+mac地址)

檢視優先順序,優先順序相同情況下檢視mac地址,mac地址小的優先順序越大

駭客交換機生成樹配置
<Huawei>sys 
[Huawei]un in en
[Huawei]sys Hacker
[Hacker]stp enable 
[Hacker]stp mode rstp 
[Hacker]stp priority 0
[Hacker]
生成樹重新選舉驗證

image

驗證SW3交換機為非根交換機

image

驗證SW3阻塞埠與備份鏈路

駭客交換機對角線為備份鏈路,在SW3中並未設定介面優先順序,所以比較的方式為埠號。所以g0/0/2為阻塞狀態

image

驗證SW2阻塞埠與備份鏈路

image

驗證後得到的拓撲圖

image

測試的是pc,但如果使用的是雲連線到虛擬機器,在虛擬機器上的操作,都可以由駭客交換機資料包抓取得到,駭客交換機在實戰中可以尋找關鍵字username、password等資料包檢視

四、防禦策略

將交換機SW1、SW2用於主機接入的埠設為邊緣埠

[SW1]port-group 1
[SW1-port-group-1]stp edged-port enable
[SW1-port-group-1]q
[SW1]port-group 2
[SW1-port-group-2]stp edged-port enable 
[SW1-port-group-2]q
[SW1]stp bpdu-protection 
[SW1]

[SW2]port-group 1
[SW2-port-group-1]stp edged-port enable 
[SW2-port-group-1]q
[SW2]port-group 2
[SW2-port-group-2]stp edged-port enable 
[SW2-port-group-2]q
[SW2]stp bpdu-protection 
[SW2]

一定要啟用bpdu保護

驗證

交換機SW1和SW2的E0/0/22埠變紅處於down狀態,SW3重新選舉成根交換機
image

image

image

總結

  • 啟動裝置BPDU保護功能,邊緣埠被關閉後,即使在交換機關閉生成樹,埠也不會自動開啟,可以在相應介面手動輸入undo shutdown開啟介面
  • 啟動裝置的BPDU保護,邊緣埠不能接交換機。否則該埠立即關閉,因為交換機生成樹預設開啟,如邊緣埠需要連線交換機,可先關閉交換機生成樹,再與邊緣埠進行連線

相關文章