[CCNA圖文筆記]-30-交換機安全淺析

0×1.如何查看某IP所屬端口
實際工作中的交換機上的MAC地址可能有幾百甚至幾千條,想從這些條目中用眼睛找出某個IP對應MAC地址或者某個MAC地址對應端口無疑是一件費時間的事情,下面這個方法可以很快的查找出某個IP對應的MAC和端口,首先配置下面的拓撲圖(圖1),然后在IOU交換機中,查找一下192.168.1.2的MAC在交換機MAC表中對應了哪個端口(本例圖中很明顯可以看出,所有PC的MAC地址在IOU交換機MAC表中都對應了e0/0端口,但真實環(huán)境可能沒有這種直觀的拓撲圖):


圖1
圖1

上圖中,IOU1是IOU虛擬機中的交換機,3臺vpsc模擬3臺PC,SW1是GNS3中不可網(wǎng)管交換機"Ethernet switch";
PC1~3配置:
1

/依次進入PC1~3控制臺,使用下面的命令配置各PC,本例僅給出PC1的配置/

2

vpcs> set pcname PC1

3

PC1>
ip
192.168.1.1/24 192.168.1.254

4

Checking for duplicate
address
...

5

PC1 : 192.168.1.1 255.255.255.0 gateway 192.168.1.254

IOU交換機配置:
1

IOU1#
conf
t

2

IOU1(config)#
host
IOU-SW

3

IOU-SW(config)#
int
vlan1

4

IOU-SW(config-if)#
ip
add
192.168.1.254 255.255.255.0

5

IOU-SW(config-if)#
no
shut

6

IOU-SW(config-if)#
end

在PC1~3上面啟用連續(xù)ping,模擬與外界的通信:
1

/30秒
ping
一次網(wǎng)關(guān),本例僅給出PC1的命令
/

2

PC1>
ping
192.168.1.254 -
t
-i 30000

此時查看交換機上的arp表,應該能看到下面的輸出:
01

IOU-SW#
show
arp

02

Protocol Address Age (min) Hardware Addr Type Interface

03

Internet 192.168.1.1 0 0050.7966.6800 ARPA Vlan1

04

Internet 192.168.1.2 0 0050.7966.6801 ARPA Vlan1

05

Internet 192.168.1.3 0 0050.7966.6802 ARPA Vlan1

06

Internet 192.168.1.254 - aabb.cc80.0100 ARPA Vlan1

07

08

/假如看到的不是4條,而是幾百條甚至更多,想找出某個IP對應的MAC以及在MAC表中對應的端口,可以使用下面的方法/

09

10

/首先找出目標IP對應的MAC地址/

11

IOU-SW#
show
arp |
include
192.168.1.2

12

Internet 192.168.1.2 1 0050.7966.6801 ARPA Vlan1

13

Internet 192.168.1.254 - aabb.cc80.0100 ARPA Vlan1

14

15

/使用找到的MAC地址獲得對應的端口,本例為e0/0,與拓撲一致/

16

IOU-SW#
show
mac
address
-table |
include
0050.7966.6801

17

1 0050.7966.6801 DYNAMIC Et0/0

不要關(guān)閉PC1~3的ping,繼續(xù)下面的實驗。
0×2.MAC地址泛洪防范
MAC地址泛洪(Flooding)攻擊的原理:
根據(jù)交換機工作原理,即根據(jù)數(shù)據(jù)幀中的源MAC地址進行學習。當某臺主機偽造大量的虛假MAC地址發(fā)往交換機,交換機的地址表容量有限,當交換機的MAC地址表被填滿之后,交換機將不再學習其他MAC地址,此時不論是單播組播,交換機都進行泛洪轉(zhuǎn)發(fā);這樣,攻擊主機只需要在本地開啟一個抓包軟件即可捕獲局域網(wǎng)中的所有數(shù)據(jù)包;MAC地址表的老化時間默認是5分鐘,為了保證這種攻擊有效性,攻擊主機必須持續(xù)發(fā)動攻擊。
MAC地址泛洪攻擊的防范方法:
可以在接入端口上配置每個端口允許學習的MAC地址數(shù)量;
01

/*

02

  • 將交換機端口配置成接入端口,三層交換機端口或二層的主干端口都不支持端口安全,

03

  • 端口安全只能配置在二層的接入端口上

04

*/

05

06

IOU-SW#
conf
t

07

IOU-SW(config)#
int
e0/0

08

/將端口e0/0設置成接入端口/

09

IOU-SW(config-if)#
switchport
mode
access

10

/開啟端口安全/

11

IOU-SW(config-if)#
switchport
port-security

12

/允許最大學習3個MAC地址/

13

IOU-SW(config-if)#
switchport
port-security
maximum
3

14

15

/查看一下違規(guī)可以進行的操作/

16

IOU-SW(config-if)#
switchport
port-security
violation
?

17

/阻止新的MAC學習/

18

protect
Security
violation
protect
mode

19

/大致功能同上/

20

restrict
Security
violation
restrict
mode

21

/關(guān)閉端口(慎用)/

22

shutdown
Security
violation
shutdown
mode

23

24

/這里選擇保護,本例即超過3 MAC后不學習新的MAC/

25

IOU-SW(config-if)#
switchport
port-security
violation
protect

26

IOU-SW(config-if)#
exit

27

28

/命令簡寫,效果同上/

29

IOU-SW(config)#
int
e0/0

30

IOU-SW(config-if)#
swi
m a

31

IOU-SW(config-if)#
swi
po

32

IOU-SW(config-if)#
swi
po
max
3

33

IOU-SW(config-if)#
swi
po v p

34

IOU-SW(config-if)#
end

使用下面的命令可以查看某個接入端口的安全規(guī)則:
01

IOU-SW#
show
port-security
int
e0/0

02

03

/開啟了端口安全/

04

Port Security : Enabled

05

Port Status : Secure-up

06

Violation Mode : Protect

07

Aging Time : 0 mins

08

Aging Type : Absolute

09

SecureStatic Address Aging : Disabled

10

/最大可學習MAC數(shù)/

11

Maximum MAC Addresses : 3

12

/已經(jīng)學習到的MAC數(shù)/

13

Total MAC Addresses : 3

14

Configured MAC Addresses : 0

15

Sticky MAC Addresses : 0

16

Last Source Address:Vlan : 0050.7966.6800:1

17

/違規(guī)次數(shù)/

18

Security Violation Count : 0

現(xiàn)在增加一臺vpcs,配置IP如下圖所示:


Cisco-CCNA-switch-security-2
Cisco-CCNA-switch-security-2

使用PC4去ping交換機的Vlan1,發(fā)現(xiàn)ping不通,這是因為IOU-SW的mac表中已經(jīng)學習了三臺設備的mac,根據(jù)我們的端口安全配置,交換機不會再學習PC4的mac,如果將交換機的端口安全violation設置成shutdown,再用PC4去ping一次,就會讓e0/0接口直接關(guān)閉:
01

IOU-SW#
conf
t

02

IOU-SW(config)#
int
e0/0

03

IOU-SW(config-if)#
swi
por vi
shutdown

04

05

/此時PC4
ping
一下192.168.1.254,在交換機上就出現(xiàn)了下面的提示,e0/0已經(jīng)關(guān)閉
/

06

*May 15 10:40:37.431: %PM-4-ERR_DISABLE: psecure-
violation
error detected on Et0/0, putting Et0/0 in err-
disable
state

07

*May 15 10:40:37.431: %PORT_SECURITY-2-PSECURE_VIOLATION: Security
violation
occurred, caused by MAC
address
0050.7966.6803 on port Ethernet0/0.

08

*May 15 10:40:38.431: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to down

09

*May 15 10:40:39.432: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to down

10

11

/接口已經(jīng)關(guān)閉/

12

IOU-SW#
show
ip
int
b

13

Interface IP-Address OK? Method Status Protocol

14

Ethernet0/0 unassigned YES unset down down

15

16

/查看端口安全信息可以看到
"Security Violation Count"
計數(shù)變成了1
/

17

IOU-SW#
show
port-security
int
e0/0

18

Port Security : Enabled

19

Port Status : Secure-
shutdown

20

Violation Mode : Shutdown

21

Aging Time : 0 mins

22

Aging Type : Absolute

23

SecureStatic Address Aging : Disabled

24

Maximum MAC Addresses : 3

25

Total MAC Addresses : 0

26

Configured MAC Addresses : 0

27

Sticky MAC Addresses : 0

28

Last Source Address:Vlan : 0050.7966.6803:1

29

Security Violation Count : 1

交換機可以使用range命令一次配置多個端口:
1

/統(tǒng)一配置交換機的e1/0至e1/2以及e2/1至e2/3號端口/

2

IOU-SW(config)#
int
range e1/0-2,e2/1-3

3

IOU-SW(config-if-range)#
swi
m a

4

IOU-SW(config-if-range)#
swi
po

5

IOU-SW(config-if-range)#
swi
po
max
10

6

IOU-SW(config-if-range)#
swi
po v p

7

IOU-SW(config-if-range)#
end

0×3.DHCP欺騙防范
下圖中,R1運行了DHCP服務,R2也運行了DHCP服務,R1-2和PC1-2連接在IOU虛擬機中運行的交換機中,PC1-2是兩臺vpcs來模擬PC終端,現(xiàn)在如果讓兩臺vpcs自動獲取IP,則可能隨機從R1或R2上獲取到IP地址(看誰先應答),如果此時R1所在線路出現(xiàn)故障,那么全部的PC將獲得R2上DHCP地址池中的地址,如果連接R2的線路存在安全隱患,就有可能讓其他人使用這種方法在這條線路上搭建一個DHCP服務器來欺騙正常的PC獲取到他指定的IP,請看下面的實例:


Cisco-CCNA-switch-security-3
Cisco-CCNA-switch-security-3

R1配置:
01

R1>
en

02

R1#
conf
t

03

R1(config)#
int
f1/0

04

R1(config-if)#
ip
add
192.168.1.1 255.255.255.0

05

R1(config-if)#
no
shut

06

R1(config-if)#
exit

07

R1(config)#
ip
dhcp
excluded-address
192.168.1.1

08

R1(config)#
ip
dhcp
pool
192pool

09

R1(dhcp-config)#
network
192.168.1.0 255.255.255.0

10

R1(dhcp-config)#
default-router
192.168.1.1

11

R1(dhcp-config)#
dns-server
192.168.1.1

12

R1(dhcp-config)#
domain-name
www.qingsword.com

13

R1(dhcp-config)#
lease
1

14

R1(dhcp-config)#
end

R2配置:
01

R2>
en

02

R2#
conf
t

03

R2(config)#
int
fa 1/0

04

R2(config-if)#
ip
add
172.16.1.1 255.255.255.0

05

R2(config-if)#
no
shut

06

R2(config-if)#
exit

07

R2(config)#
ip
dhcp
excluded-address
172.16.1.1

08

R2(config)#
ip
dhcp
pool
172pool

09

R2(dhcp-config)#
network
172.16.1.0 255.255.255.0

10

R2(dhcp-config)#
default-router
172.16.1.1

11

R2(dhcp-config)#
dns-server
172.16.1.1

12

R2(dhcp-config)#
domain-name
www.qingsword.com

13

R2(dhcp-config)#
lease
9

14

R2(dhcp-config)#
end

PC獲取IP:
1

/在沒有配置IOU交換機前,PC可能獲取到兩臺路由器上的任何一個DHCP池中的IP地址/

2

VPCS>
ip
dhcp

3

DDORA IP 192.168.1.2/24 GW 192.168.1.1

4

5

/釋放這個IP,再次獲取,多試幾次,會發(fā)現(xiàn)IP在R1的DHCP地址池和R2地址池中交替獲取/

6

VPCS>
ip
dhcp -x

7

VPCS>
ip
dhcp

8

DDORA IP 172.16.1.2/24 GW 172.16.1.1

現(xiàn)在配置IOU交換機,讓PC1-2只能在R1上獲取,并限制其他端口DHCP請求發(fā)送速率:
01

IOU1#
conf
t

02

03

/啟用DHCP防欺騙功能/

04

IOU1(config)#
ip
dhcp
snooping

05

/*

06

  • 在Vlan1上啟用DHCP防欺騙功能,

07

  • 默認情況下交換機所有端口都屬于Vlan1,如果創(chuàng)建了其他VLAN,

08

  • 可以使用相同的方法啟動在那個Vlan上的DHCP防欺騙功能,

09

  • 比如:
    "ip dhcp snooping vlan 2"

10

*/

11

IOU1(config)#
ip
dhcp
snooping
vlan 1

12

13

/設置下面這幾個端口為可信任端口,不可信任端口將不會接受DHCP應答包,如果可信端口中不包含與PC相連的端口,那么PC也不能接收到DHCP應答包了/

14

IOU1(config)#
int
range e3/2,e0/0,e0/1

15

IOU1(config-if)#
ip
dhcp
snooping
trust

16

IOU1(config-if)#
exit

17

18

/*

19

  • 限制這個交換機上其他端口的DHCP請求包的發(fā)送速率,

20

  • 避免非法用戶發(fā)送大量DHCP請求耗盡DHCP服務器資源。

21

*/

22

IOU1(config)#
int
range e0/2-3,e1/0-3,e2/0-3,e3/0-1,e3/3

23

IOU1(config-if-range)#
ip
dhcp
snooping
limit
rate
2

24

IOU1(config-if-range)#
end

現(xiàn)在再從PC上面用DHCP獲取IP,就只能獲取到R1上面的IP了:
1

VPCS>
ip
dhcp -x

2

VPCS>
ip
dhcp

3

DDORA IP 192.168.1.3/24 GW 192.168.1.1

0×4.ARP攻擊原理與防范
前面分享了一篇文章[Linux環(huán)境下ARP攻擊的實現(xiàn)與防范];文中提到了局域網(wǎng)ARP攻擊形成的原因,如何攻擊以及如何防范。想要進一步了解的朋友可以參考一下這篇文章。
在一個小型局域網(wǎng)中,可以使用雙向綁定的方法,在計算機上使用arp命令,或第三方ARP防火墻綁定網(wǎng)關(guān)MAC,然后在交換設備或路由上使用下面的命令靜態(tài)綁定計算機IP對應的MAC地址:
01

/查看R1上的arp地址表/

02

R1#
show
arp

03

Protocol Address Age (min) Hardware Addr Type Interface

04

Internet 192.168.1.1 - cc01.0f47.0010 ARPA FastEthernet1/0

05

Internet 192.168.1.3 37 0050.7966.6801 ARPA FastEthernet1/0

06

Internet 192.168.1.2 16 0050.7966.6800 ARPA FastEthernet1/0

07

08

/靜態(tài)綁定192.168.1.2這個地址的MAC,前面是要綁定的IP后面是個IP對應的MAC地址/

09

R1#
conf
t

10

R1(config)#arp 192.168.1.2 0050.7966.6800 arpa

11

R1(config)#
end

12

/再次查看R1上的arp地址表發(fā)現(xiàn)靜態(tài)綁定后,arp條目沒有了失效時間/

13

R1#
show
arp

14

Protocol Address Age (min) Hardware Addr Type Interface

15

Internet 192.168.1.1 - cc01.0f47.0010 ARPA FastEthernet1/0

16

Internet 192.168.1.3 38 0050.7966.6801 ARPA FastEthernet1/0

17

Internet 192.168.1.2 - 0050.7966.6800 ARPA

在一些大型的局域網(wǎng)中,可以在交換或路由設備上使用ARP動態(tài)綁定技術(shù)。
0×5.其他安全威脅
除上面幾種交換機的完全威脅以外,還有很多我們需要注意的地方比如:
交換機遠程登錄密碼過于簡單導致的暴力破解、Telnet明文傳輸(在命令行登錄路由器的時候建議使用SSH代替明文telnet)、CDP攻擊(建議不使用這個協(xié)議的時候關(guān)閉它,因為攻擊者可以從CDP信息中獲得設備的IP以及IOS版本,有些IOS版本存在Bug)、DOS攻擊等。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容