设为首页收藏本站language 语言切换
查看: 3243|回复: 15
收起左侧

[已解决] vlan双标签攻击的疑问

[复制链接]
发表于 2013-10-3 13:24:59 | 显示全部楼层 |阅读模式
1、A主机与左边的交换机连接的接口是access类型,交换机acces口是不会接受带标签的数据包的,直接丢弃,那么怎么实现攻击
2、即使左边的交换机access口接受带标签的数据包,也会再打上一个标签,不是成了三层标签了?
3、即使左边的交换机access口接受了带标签的数据包,也不再打标签了,那么A应该怎么攻击C?因为外层的标签是vlan10,不会从连接C的接口发出?
4、在3的情况下,A要攻击D,除非两台交换机之间的本征vlan也是vlan10,这样才会在左边交换机trunk出口时剥离外层标签vlan10,。但是这样的前提是A要猜到本征vlan的编号才行?
5、如果A通过手段使左边交换机与A相连的接口成了trunk口,则A只需要发送带vlan20的单标签就行了,还需要用双标签?
11.JPG
发表于 2013-10-3 14:41:27 | 显示全部楼层
VLAN跳跃攻击前提就是黑客连接的接口是trunk口。。。所以你的那些疑问都不存在了。。。
沙发 2013-10-3 14:41:27 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-3 15:46:41 | 显示全部楼层
本帖最后由 SOMING 于 2013-10-3 15:49 编辑

新建位图图像.jpg 必须是Access接口
板凳 2013-10-3 15:46:41 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-3 15:48:09 | 显示全部楼层
攻城鸦 发表于 2013-10-3 14:41
VLAN跳跃攻击前提就是黑客连接的接口是trunk口。。。所以你的那些疑问都不存在了。。。

那就直接用vlan20的单标签就好了,用双标签干嘛?
地板 2013-10-3 15:48:09 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-3 16:14:38 | 显示全部楼层
jasontianxie 发表于 2013-10-3 15:48
那就直接用vlan20的单标签就好了,用双标签干嘛?

交换机端口默认启用了DTP,黑客接入交换机的DTP接口,伪造自己是Trunk口,那么交换机这个DTP接口也会变为Trunk口。

而出于某些原因,这个Trunk口可能仅仅只允许某些流量通过,比如Native VLAN;而不允许其他流量通过,比如Server VLAN。那这个时候,黑客想访问Server VLAN,打上Server VLAN的单层tag是肯定无法通行的。

于是黑客在这个数据帧前面打上两个tag,外层是Native VLAN,内层是Server VLAN。
当黑客把这个数据帧发给交换机时,因为交换机和黑客连接的接口已经是Trunk口,因此收到一个含有VLAN tag的数据帧并不会丢弃,而回查找最外层的tag应该如何转发。

交换机收到这个外层tag是Native VLAN的数据帧之后,理所当然的就要把tag给去掉,然后再从其他Trunk口发出去。这个时候数据帧的外层tag没了,只剩下内层tag,也就是Server VLAN的tag。换句话说,交换机发送了一个tag为Server VLAN的数据帧给对端交换机。

对端交换机收到一个tag为Server VLAN的数据帧,理所当然把这个数据帧转发给Server VLAN内的成员。

以上就是VLAN双标签跳跃攻击的简单过程,如果还有什么地方不明白给我留言好了~~~

5# 2013-10-3 16:14:38 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-3 16:41:55 | 显示全部楼层
攻城鸦 发表于 2013-10-3 16:14
交换机端口默认启用了DTP,黑客接入交换机的DTP接口,伪造自己是Trunk口,那么交换机这个DTP接口也会变为 ...

首先,攻击者通过dtp协议将连接自己的交换机接口变成了trunk口,交换机没有手工配置switchport trunk allowed命令,默认是本地所有的vlan都可以通过,你说的仅仅允许native vlan通过是怎么产生的?
6# 2013-10-3 16:41:55 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-3 17:55:07 | 显示全部楼层
jasontianxie 发表于 2013-10-3 16:41
首先,攻击者通过dtp协议将连接自己的交换机接口变成了trunk口,交换机没有手工配置switchport trunk all ...

“仅仅通过某个VLAN流量”只是个假设,不一定是实际情况。

其实你的疑问还是在于“那就直接用一层标签就好了,用双标签干嘛?”对吧。

关于打几层tag的攻击,其实就这么三种情况:没有tag,一层tag,两层tag。

没有tag的时候,交换机收到一个不含任何tag的数据帧,一定是往Native VLAN转发。并且这个时候因为黑客和交换机之间是Trunk链路,所以黑客理论上可以监听任何VLAN的流量,这也就是VLAN Hopping的雏形。

只有一层tag的时候,黑客其实可以去往所有他连接的交换机上存在的VLAN。
还有,“交换机没有手工配置switchport trunk allowed命令,默认是本地所有的vlan都可以通过”这句话是没错,但是Trunk口实际上可以允许通过的流量,仅仅是本机vlan.dat中存在的VLAN流量。如果全网其他地方有vlan100而本机没有,即使打上单层tag VLAN 100,交换机收到这样的流量也是会丢弃的。

因此有两层tag的时候,黑客可以在外层打上他直连交换机存在的VLAN tag,所以可以去往网络内存在的VLAN,并不局限于他所直连的交换机上的VLAN。
7# 2013-10-3 17:55:07 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-3 20:25:11 | 显示全部楼层
攻城鸦 发表于 2013-10-3 17:55
“仅仅通过某个VLAN流量”只是个假设,不一定是实际情况。

其实你的疑问还是在于“那就直接用一层标签 ...

“因此有两层tag的时候,黑客可以在外层打上他直连交换机存在的VLAN tag,所以可以去往网络内存在的VLAN,并不局限于他所直连的交换机上的VLAN。”

即使只打一层标签,也可以不仅限于访问直连交换机上的vlan,直接打一层vlan20的标签,就可以访问D了

而且打了两层标签,A的外层标签必须要封装native vlan的标签,同时这样的话,还不能访问C,麻烦
8# 2013-10-3 20:25:11 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-3 23:14:41 | 显示全部楼层
jasontianxie 发表于 2013-10-3 20:25
“因此有两层tag的时候,黑客可以在外层打上他直连交换机存在的VLAN tag,所以可以去往网络内存在的VLAN, ...

“即使只打一层标签,也可以不仅限于访问直连交换机上的vlan,直接打一层vlan20的标签,就可以访问D了”,前提是黑客所连接的交换机上拥有vlan20,如果黑客所连的交换机没有vlan20,这个流量是过不去的。

“而且打了两层标签,A的外层标签必须要封装native vlan的标签,同时这样的话,还不能访问C,麻烦”,这个并不是必须。
9# 2013-10-3 23:14:41 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-4 09:10:41 | 显示全部楼层
攻城鸦 发表于 2013-10-3 23:14
“即使只打一层标签,也可以不仅限于访问直连交换机上的vlan,直接打一层vlan20的标签,就可以访问D了”, ...

““而且打了两层标签,A的外层标签必须要封装native vlan的标签,同时这样的话,还不能访问C,麻烦”,这个并不是必须。”

怎么会不是必须?假设交换机之间的trunk native vlan为vlan1,如果外层标签不打vlan1的话,请问Attacker如何访问主机D
10# 2013-10-4 09:10:41 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-4 10:03:21 | 显示全部楼层
路过了解一下
11# 2013-10-4 10:03:21 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-4 11:42:53 | 显示全部楼层
jasontianxie 发表于 2013-10-4 09:10
““而且打了两层标签,A的外层标签必须要封装native vlan的标签,同时这样的话,还不能访问C,麻烦”,这 ...

按照你的说法,默认情况下trunk口会为Native VLAN打上标签咯?
12# 2013-10-4 11:42:53 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-4 12:25:12 | 显示全部楼层
攻城鸦 发表于 2013-10-4 11:42
按照你的说法,默认情况下trunk口会为Native VLAN打上标签咯?

不是这个意思,如果是双标签,Attacker要访问主机D,他发送的数据包应该在里层打上vlan20的标签,两台交换机之间的native vlan假设为vlan 1,那么,Attacker发送的数据包外层标签必须是vlan 1,这样,当这个数据包到达左边的交换机,并发往右边交换机的时候,发现外层是native vlan,才会剥离vlan 1的标签,露出vlan20的标签,从而可以访问主机D。这个外层的标签,必须由Attacker自己打上,也就是说,Attacker要事先知道两台交换机之间的native vlan号,才能实施攻击。

这么看来相当麻烦,直接打个vlan 20 ,一切不都搞定了?
13# 2013-10-4 12:25:12 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-10-4 15:55:20 | 显示全部楼层
jasontianxie 发表于 2013-10-4 12:25
不是这个意思,如果是双标签,Attacker要访问主机D,他发送的数据包应该在里层打上vlan20的标签,两台交换 ...

但是Native VLAN的特点是不打标签,这个特点你忘了么?
14# 2013-10-4 15:55:20 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-4 16:07:50 | 显示全部楼层
攻城鸦 发表于 2013-10-4 15:55
但是Native VLAN的特点是不打标签,这个特点你忘了么?

native vlan的标签是Attacker打在数据包的最外层的,不是交换机打的。Attacker本来就是攻击者,想打几层打几层,不受你所说的限制
15# 2013-10-4 16:07:50 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-4-29 07:49 , Processed in 0.171484 second(s), 27 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表