CCNP SWITCH(300-115)学习指南描述了VLAN双标记攻击的原理,双标记攻击的防御方式,该部分内容在书里第20章(保护VLAN的安全)中有详细的描述。要彻底理解VLAN双标记攻击还是要通过实验测试才行。
演示:VLAN的双标记攻击
演示环境
演示环境:首先完成交换机的基础配置,设置VLAN、设置Trunk端口、将攻击机划入VLAN1、R3划入VLAN2、交换机的Trunk链路使用802.1q封装、本征VLAN保持默认的VLAN1。
理解VLAN双标记前提:要想彻底理解VLAN双标记攻击,必须要理解以下知识:
1.802.1q干道的本征VLAN是不会被打上标记的。
2.交换机某个VLAN端口收到带有和该端口相同VLAN标记的数据帧时会怎么处理?
3.交换机某个VLAN端口收到带有和该端口不同VLAN标记的数据帧时会怎么处理?
演示目标:首先要完成VLAN双标记攻击,使得攻击机(VLAN1)的数据帧能够到达R3(VLAN2),捕获并分析VLAN双标记数据帧,最后要测试交换机接入端口收到不同VLAN标记时的处理方式。
双标记攻击:在攻击机上使用Yersinia攻击器对192.168.20.141 ping 192.168.20.140的数据包产生两个VLAN的标记,第一层标记是VLAN1,第二层标记是VLAN2。如下图所示:
从上图可以看出VLAN双标记实现的方式,当S1的F1/0端口收到攻击机发出带有2层VLAN标记的信息时,S1查看到第一层的VLAN标记是VLAN1,它的F1/0端口也属于VLAN1,首先S1是不会将该数据帧丢弃的,它会把数据帧发送至Trunk接口,由于Trunk链路的本征VLAN也是VLAN1,因此S1移除了VLAN1的标记并把数据从Trunk链路发送出去,此时数据帧上只有VLAN2的标记了,S2当然会把带有VLAN2标记的数据帧转发到VLAN2的端口上,这样就实现了把数据帧从VLAN1注入到VLAN2——整个过程只依靠2层交换。
重点:VLAN双标记攻击就是利用了不打标记的本征VLAN,攻击者必须要和本征VLAN处于同一个VLAN。说得直白点:攻击者必须要让交换机去掉自己制造的第一层VLAN标记,才能使第二层标记的VLAN生效。
双标记攻击续:下面是另外一种情况,攻击者所处的VLAN不和本征VLAN相同,如下图所示:攻击者处于VLAN3,本征VLAN是VLAN1。攻击者制造的第一层标记是VLAN3,第二层是VLAN2。
这种情况下交换机并不会对双标记数据帧做处理,因为VLAN3本来就要打上标记才能发送,这个双标记的数据帧只能被属于VLAN3的主机接收。那如果攻击机制造的第一层标记不是VLAN3而是VLAN1呢?此时交换机S1会把该数据帧丢弃,因为该标记(VLAN1)并不属于端口所属的VLAN(VLAN3)。
总结:实现VLAN双标记攻击必须满足两个条件:1.攻击主机必须和本征VLAN处于同一个VLAN。2.交换机不会对本征VLAN进行标记。
3.防御的方式就是尽量不满足攻击的条件。
本文出自 “陶礼” 博客,谢绝转载!
原文地址:http://pkimin3.blog.51cto.com/8258204/1918660