无线安全专题_攻击篇--MAC泛洪攻击

  上一篇讲解了无线安全专题_攻击篇--干扰通信,没在首页待多长时间就被拿下了,看来之后不能只是讲解攻击实战,还要进行技术原理和防御方法的讲解。本篇讲解的是局域网内的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.   交换机将所有数据帧进行全网转发后,每台主机的协议栈会比对数据帧的目的mac地址是否和自身的一样,如果一样就进行应答,如果不一样,就进行丢弃(注意:那些mac地址不相同的主机网卡也会接收到数据帧,只是不予理会,对网卡进行抓包是能看到数据帧的)。
  2.   这个时候,PC2接收到了数据帧,并进行应答。应答数据帧经过交换机的时候,交换机会将应答数据帧的源mac地址和端口号学习到mac表中,也就是PC2的mac地址和端口号绑定。
  3.   交换机根据应答数据帧的目的mac地址,开始查询mac表,发现PC1的记录存在,就根据这绑定的端口号,直接将应答数据帧发给了PC1。这就是整个mac地址表的学习过程。

  1.3 交换机的mac老化机制

    若交换机与某台主机长时间未通信,交换机就会把该主机的mac地址从mac地址表里删除掉,等下次通信时重新学习地址。

  1.4 泛洪攻击的可能性

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

  二.攻击场景

  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/
 
 
时间: 2024-09-30 05:41:06

无线安全专题_攻击篇--MAC泛洪攻击的相关文章

无线安全专题_破解篇03--打造个人字典

上一篇讲解了如何通过Kali破解Pin码,今天继续无线安全专题破解篇的第三讲:打造个人字典.通过第一课,我们知道想要破解WPA加密,需要一个强大的字典.字典的强大直接决定了破解的可能性,废话不多说,咱们就学习一下怎么使用kali中的工具生打造个人字典.  一.crunsh工具介绍 今天主要说的是crunsh这款工具,专门用来生成字典. 命令参数: -b              #体积大小,比如-b 20mib 或者 -b 20kib -c              #密码个数(行数),比如80

无线安全专题_攻击篇--干扰通信

中秋节玩的比较嗨,无线安全专题的文章就拖沓了一下,见谅见谅...上篇讲解了无线安全专题_破解篇03--打造个人字典,有感兴趣的朋友给我私信,还有在公众号中给我留言说,希望我讲解一下彩虹表和GPU破解的事情,所以我为了响应大家的需求,我之后会在破解篇中再增加一篇专门讲解彩虹表和GPU破解的问题.今天咱们就开启无线安全专题下一篇:攻击篇.攻击篇主要分为两个部分:一个是不连接上无线下的攻击,一个是连接上无线下的攻击.本次讲解的就是如何在不连接无线的情况下进行攻击(仅仅是讨论技术,切不要进行恶意使用),

MAC泛洪攻击的实施与防御

原文发表于2017年第7期<网络安全与信息化>,转发到博客. 更多相关资料可参看视频教程"局域网安全实战",http://edu.51cto.com/course/10348.html MAC泛洪攻击是一种针对局域网交换机的攻击方式,目的在于窃取局域网内用户的通信数据.本文以神州数码CS6200交换机为例,从原理.实施.防御三个方面对MAC泛洪攻击进行了全面介绍. 1.    交换机的MAC地址表 交换机的主要功能是在局域网内的主机之间转发数据帧.交换机接收从主机上传来的比

MAC泛洪攻击

MAC泛洪是攻击机不停发出不同源MAC的ICMP包,耗尽交换机的MAC表,这时交换机与正常的主机通信时,就会发送广播报文,局域网内的机器都会收到报文,对报文进行分析,就可得到通信者的信息. 1.靶机 kali(攻击机) windows7(ftp服务器) windows2003(客户机) 2.kali中开启抓包 3.kali中使用macof构造大量数据包 4.windows2003与ftp服务器进行通信 5.kali中查看结果 原文地址:https://www.cnblogs.com/zmqqq/

Mac地址泛洪攻击的防御措施和具体配置

Mac地址泛洪攻击指的是:利用交换机的mac地址学习机制,攻击者不断地刷新mac地址,填满交换机的mac地址表,以致崩溃,使交换机不得不使用广播发包,从而获取其他人的报文信息. mac地址泛洪攻击的防御措施和具体配置 限定接入交换机的接入的端口的数量. 例如:设置该交换机的该端口可以学习10个mac地址,超过了10个mac地址就停止学习,丢弃后来的mac.如图: 具体代码如下: [Huawei-Ethernet0/0/1] port-security enable [Huawei-Etherne

分分钟学会系列:mac地址泛洪攻击实验

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

Unity专题_简单的寻路导航

Unity专题_导航寻路 前言:导航寻路(NavMesh)技术是一种系统内置的强大寻路算法系统,可以方便.快捷的开发出各种复杂应用,被大量应用于各种RPG.设计.动作.冒险等游戏中. 一.基本的导航寻路                                                                                                                                           我们会在本章模拟游戏

Qt图像处理专题之基础篇

马上转行开始做图像处理的工作了,先学习一些基础的图像处理的知识,但是有时候想要验证一个简单的算法,还是想要能够直接的看到效果,所以想要编写一个软件框架了.关于图像处理方面的算法库很多了,其中比较流行的有OpenCV,这个会在另外一个专题里面涉及.而本人是长期从事Qt软件开发的,有些简单的工作还是更加喜欢在Qt中实现,并且在有些嵌入式应用程序开发中我们并不一定有足够的资源来移植一个庞大的OpenCV库,可能简单的几行C/C++代码就能够搞定的.出于这个原因,我打算写一个专题,自己来实现一些图像处理

转一篇Mac OS下不产生.DS_Store 隐藏文件

> 找程式砍 .DS_Store 很烦,直接让它不要出现吧 其实这问题困扰我很久了,每个目录裡面都会跑出一个 .DS_Store 的档案,我通常都是用 find /path/to -name 『.DS_Store』 -delete 来砍,不过砍了又会自动再生:显然这问题不是只有困扰我而已,都已经有程式专门在解决类似的状况.不过现在这问题得到了『终极的解决办法』,有一篇文章提到了说要怎样关掉这个功能:只要在命令列下这个指令然后重开机就可以啦 打开终端 -  (shift + command + N