目前的交换机都支持全双工。全双工的好处在于迟延小,速度快,那么交换机ACM表是什么样的东西啊,那么就随我进入这个交换机ACM表世界吧,希望大家能够学习参考。
大家看到这个题目可能感觉有点奇怪,网络安全圈里好像没有人定义过这种名词,起初我也不清楚该定义一个什么样的名词,我只是根据攻击的原里定义这样的名词,如果那位有更好的建议为他来填上一个更响亮的名字,例如“熊猫烧香”等,天下皆知。
这种攻击方式不知有人研究过没,我在网上没有看到过,最近一段时间花费了点心思,把这种攻击技术稍微钻研了下,希望能对安全技术爱好者又提供一个奠基石,但不希望大家用他来做网络破坏,因为后果很严重,网管很生气,因为他找不到攻击源,对于防护这种攻击目前没有很好的解决办法,所以大家三思而后行。
废话说了不少,进入正题。
起初对于这种攻击的发现是来源早期对ARP协议的学习与研究,在当时发现发送特定格式的ARP数据包会对网络造成一定影响,假如我是B机器,捕获到C机器发向A的ARP返回包,在B机器上使用SNIFFER PRO 捕获后,进行数据包重放。
就是说B机器上发出了源MAC 为C机器的这样的数据包,交换机时收到这样连续不段的数据包时(发送的数量与攻击的效果有很大关系)C机器突然就与网络中的其他机器失去联系,网络中的其他机器也访问不到C机器,根据抓包发现C机器的数据包是能够发送出去的,只是没有收到回应包,问题出在那里?。
有想法的人肯定会想到数据包被交换机转发到B机器上来了,为了证实我们的想法,在B机器上抓包发现,有很多数据包是其他IP对C机器的回应包。很多人会不明白为什么会这样那。大家知道交换机和HUB的区别。
交换机不对数据包进行广播,他工作的模式是:A机器--->B机器的数据包 C机器是接收不到的,应为交换机内部有转发列表(ACM), AMC表的作用是建立MAC地址与端口的对应关系。
一个端口可以和很多MAC地址建立对应关系,(在802.1x下好像只能建立一个),这看上去没什么问题,问题是出在ACM是实时动态更新的, 说到这里在看上面的问题就清楚了。
原本C机器发送数据包到A没有问题,C机器的MAC在3口建立了临时的对应关系,A机器收到后如果再与C机器进行通讯,交换机会把数据包直接转向了3口,他们之间的数据连接就会成功。
在B机器捕获到这个数据包时进行连续重放,刚才也说了是从B机器上发送源地址为C机器MAC的数据包,数据包通过交换机时会改变C机器MAC与3口的对应关系,交换机发现这个数据包的源MAC地址是从交换机的2口发送。
所以会建立C机器的MAC 与2号端口建立交换机ACM表的对应关系,A机器再发向C机器的数据包,全被交换机转到2号端口B机器上面,所有就形成了C机器的断网现象,大家现在应该明白了吧,上面是我自己的理解,可能有些地方解释的有问题,希望大家提出。
下面有人会说C机器也在不断的发包,也会改变交换机ACM表上C机器MAC与2号端口的对应关系,上面我也说过,这就要看B机器的重放数据包的数量了,经过我测试发现在B机器重放每秒500-1000个数据包的同时。
C机器应经与机器不能通讯或通讯非常非常的慢,有意思的是在C机器上能PING 的通其他机器,这让C机器挺郁闷吧,而且C机器收不到任何攻击数据包,应为是C对应A机器的数据包,没有进行广播,如数据包的数量在1万左右,C机器收不到任何信息。
你又会说为什么不进行数据包广播那,应为数据包进行广播的话,对交换机影响很大,会对其他机器造成影响,而且容易让别人发现这种数据包,(虽然他不查看交换机MAC表是找不到你,但是就怕他看)。
如果你网络很大,广播对你自己利用说也会造成影响,所以我们要把数据包做成定向发送,找个傀儡机喽,在上面A就是我们的傀儡机了,假如还有D机器的话,在D机器上抓包是发现不了这种攻击的,是不是很可怕,下面还有更可怕的那,大家又要开动脑筋了,既然可以对单台机器发动攻击。
也可以对网关发动攻击,对网关发送攻击会出现什么后果那,就是大家都不能和网关进行通讯,网络全部断掉(包括你自己),前提只需在B机器上发送源地址为网关的数据包。
我们已经说了广播包是最不可取的,那我们就要找个傀儡机器,还找机器A吗,不行啦,因为是定向包B机器和A机器在同一交换机上面,所能更改的也只是这台交换机的ACM表,也只是对这个交换机的下面的机器有影响,我们怎么突破范围那,上面说了广播可以,但是又是最不可行的方法,怎么办?
放心,聪明人总会有办法的,在这个时候傀儡机器的作用显现出来了,用专业术语说下,从B机器发送源地址为网关MAC的数据包,它所经过的交换机都会被更改与网关交换机ACM表的对应关系。
也就是说傀儡机有多远我们攻击的交换机就有多远,所以说选择傀儡机所在网络拓扑的位置很重要,他决定了我们攻击交换机的范围。如果我想让全网掉线的话,我会选择主干交换下面的机器做傀儡机器,是不是我很坏。
【编辑推荐】