标签:
上一篇讲解了无线安全专题_攻击篇--干扰通信,没在首页待多长时间就被拿下了,看来之后不能只是讲解攻击实战,还要进行技术原理和防御方法的讲解。本篇讲解的是局域网内的MAC泛洪攻击,这种攻击方式主要目的是窃取局域网中的通信数据,例如ftp的账号和密码,下面的实战也是以此为例子。接下来按照原理,场景,攻击实战,防御方法的层次步骤进行讲解。
一.MAC泛洪攻击的原理
MAC泛洪攻击主要是利用局域网交换机的mac学习和老化机制。
1.1交换机的工作流程如下:
局域网中的pc1发送数据帧给pc2,经过交换机时,交换机会在内部mac地址表中查找数据帧中的目标mac地址,如果找到就将该数据帧发送到相应的端口,如果找不到,交换机就会向入端口以外的所有端口发送此数据帧(所谓的广播,不过不是广播帧,广播帧的目的mac地址是全F)。
由此可以看到交换机实现交换功能的关键就是内部的mac地址表,那这个内部mac地址是怎么形成的呢?有什么特性呢?接下来就要讲解一下交换机的mac学习和老化机制。
1.2 交换机的mac学习机制
1. 首先咱们看一下内部mac表的结构,内部mac表都是有大小的,一般8k左右,一但mac表满了,其他mac地址就加不进来:
内部mac表是将主机的mac地址和连接到交换机上的端口号进行绑定,这样可以根据mac地址找到端口进行转发。
2.一开始的时候,没有主机连接,交换机内的mac表是空白的,这时候就要进行学习。
下面咱们幻想出一个场景: PC1这时候想往PC2发送数据,数据帧经过交换机的时候,交换机会把数据帧中的源mac地址和进入的端口号记录到mac表中; 由于一开始mac表中没有PC2的mac地址和端口绑定,所以交换机会将这个数据帧进行全网转发,就是所谓的广播,也叫泛洪。
1.3 交换机的mac老化机制
若交换机与某台主机长时间未通信,交换机就会把该主机的mac地址从mac地址表里删除掉,等下次通信时重新学习地址。
1.4 泛洪攻击的可能性
二.攻击场景
ftp服务器:我在一台windows主机上使用FileZilla Server搭建了一个ftp服务器,ip地址为10.170.62.240。如何搭建ftp服务器请参考,http://jingyan.baidu.com/article/6079ad0e67acf828ff86db3f.html。ftp的账号为qiye,密码为qiye123789。
PC1: 局域网中的另一台主机,win7操作系统,作为ftp的客户机,ip地址为10.170.56.82。
PC2:我的个人笔记本电脑作为攻击机,kali系统,ip地址为10.170.39.165。
三.实战攻击
实施mac泛洪攻击使用的工具是kali系统自带的macof,用来发送大量伪造的mac地址的数据包。
第一步,我在PC2上打开macof,并且开启多个窗口运行,力求以尽快的速度,填满交换机的mac表。
与此同时,在开启一个窗口,使用tcpdump进行抓包,抓取端口为21的ftp数据包。
第二步,我使用PC1登录ftp服务器。既可以在浏览器中登录,也可以使用win7自带的ftp客户端。
第三步,查看PC2中是否抓包广播出来的ftp登录信息。
可以看到,我已经成功抓取到PC1访问ftp服务器的登录账号和密码。我使用wireshake,也抓取了一下,可能看的更直观一些。
四.防御手段
限定交换机接入的端口的mac数量。例如:设置该交换机的该端口可以学习8个mac地址,超过了8个mac地址就停止学习,丢弃后来的mac。一般高级的交换机都有这项功能。
今天的分享就到这里,下一篇继续分析。如果大家觉得还可以呀,记得推荐呦。
欢迎大家支持我公众号:
本文章属于原创作品,欢迎大家转载分享。尊重原创,转载请注明来自:七夜的故事 http://www.cnblogs.com/qiyeboy/
标签:
原文地址:http://www.cnblogs.com/qiyeboy/p/5930573.html