交换机中有一张非常重要的表,叫做mac表,这个表是一个硬件组成的表,主要是完成快速转发。mac表有大小限制,不同的交换机的mac表的大小都有不同,越是高端的交换机的表空间越大,但是作为接入交换机,表空间基本都在8K左右。交换机的一个原理是会自动学习并记录mac地址。而攻击者就利用交换机的mac地址学习机制,不断的进行mac地址刷新,迅速填满交换机的mac地址表,以至崩溃,使交换机不得不使用广播发包,从而获取其他人的报文信息。使用macof命令就能获得这个效果。

 

1,实验拓扑图

\"\"

 

2,查看kali系统能不能ping通win10 和服务器

\"\"

3,查看ftp服务器是否正常运行

\"\"

4,kali系统输入macof对路由器发起大量的arp包进行mac洪范攻击

泛洪攻击的目标就是想获取主机之间的通信数据。要想达到这个目的,就需要强迫交换机进行数据广播,那就要实现mac表中没有目标主机 的mac和端口绑定。泛洪攻击的实现方法就是通过伪造大量的未知mac地址进行通信,交换机进行不断的学习,很快mac表就会被充满,这样正常的主机的mac地址在经过老化之后,就无法再添加到mac地址表中,导致之后的数据都变成了广播。

\"\"

5,使用tcpdump进行抓包

命令 tcpdump -nn -X -i eth0 tcp port 1234

\"\"

6,再次打开ftp服务

\"\"

7,查看实验结果

抓取到FTP用户名

\"\"

 

抓取到FTP的密码

\"\"

8,mac泛洪的防御

1)给交换机的的每个端口限制主机的数量,当一个端口学习的MAC数量超过这个限制的数量,则将超出的MAC地址舍弃。

port-security enable //激活接口安全功能

port-security mac-address sticky //让交换机口主动记下最先插入设备的MAC地址

port-security max-mac-num 20 //定义最大MAC地址数为10

2)端口绑定mac地址

switchport port-security mac-address mac地址 //手工绑定MAC地址

 

3)端口惩罚功能

port-security protect-action protect // 配置其他非安全mac地址数据帧的处理动作

protect:如果MAC地址超过定义数量(默认为1),则新的MAC地址的封包进入交换机,交换机将直接丢弃该报

restrict:如果MAC地址超过定义数量(默认为1),则新的源MAC地址的封包进入交换机,交换机将直接丢弃该报。

shutdown:如果MAC地址超过定义数量(默认为1),则新的源MAC地址的封包进入交换机,交换机端口直接变为errdisable状态。

收藏 打印