生成树欺骗攻击与防御策略

生成,欺骗,攻击,防御,策略 · 浏览次数 : 19

小编点评

**生成内容排版** * 生成树时需要带简单的排版,例如端口号、接口名称等。 * 端口号、接口名称等应该以小写字母形式。 * 排版时可以适当添加颜色或注释,以提高可读性。 **示例排版** ``` port-name 100 100 100 100 100 100 100 100 100 100 100 100 100 100 port-name serial 200 200 200 200 200 200 200 200 200 200 200 200 200 200 port-name 101 101 101 101 101 101 101 101 101 101 101 101 101 101 ``` **其他提示** * 可以使用颜色或注释来提高可读性。 * 可以使用缩短的名称来提高可读性。 * 可以添加注释来描述生成内容的流程。

正文

生成树欺骗攻击与防御策略

工作目的

掌握交换机生成树选举的过程、欺骗原理、攻击过程和防范策略

任务分析

生成树的端口有五种状态。交换机的边缘端口不接收BPDU,选举时直接从堵塞状态转变为转发状态,不参与生成树的选举过程,默认情况下,交换机的所有端口均为非边缘端口,为避免生成生成树欺骗攻击,可以将交换机用于主机接入的端口设为边缘端口

  • Disable
  • Blocking
  • Listening
  • Learning
  • Forwarding

将交换机配置成边缘端口命令

stp edged-port enable

环境拓扑

image

pc和服务器是由云连接到虚拟机进行操作,在这里进行联通性实验及其原理讲解,直接使用最简单的方式

工作过程

一、基本配置

1.交换机vlan和端口配置
SW1
<Huawei>sys
[Huawei]un in en
[Huawei]sys SW1
[SW1]vlan batch 10 20
[SW1]stp enable 
[SW1]stp mode rstp
[SW1]port-group 1
[SW1-port-group-1]group-member Ethernet 0/0/1 to Ethernet 0/0/10
[SW1-port-group-1]port link-type access 
[SW1-port-group-1]port default vlan 10
[SW1-port-group-1]q
[SW1]port-group 2
[SW1-port-group-2]group-member Ethernet 0/0/11 to Ethernet 0/0/22
[SW1-port-group-2]port link-type access 	
[SW1-port-group-2]port default vlan 20
[SW1-port-group-2]q
[SW1]port-group 3
[SW1-port-group-3]group-member GigabitEthernet 0/0/1 GigabitEthernet 0/0/2
[SW1-port-group-3]port link-type trunk 
[SW1-port-group-3]port trunk allow-pass vlan 10 20
[SW1-port-group-3]q
[SW1]
SW2
<Huawei>sys
[Huawei]sys SW2
[SW2]un in en
[SW2]vlan batch 10 20 
[SW2]stp enable 	
[SW2]stp mode rstp 
[SW2]port-group 1
[SW2-port-group-1]group-member Ethernet 0/0/1 to Ethernet 0/0/10	
[SW2-port-group-1]port link-type access 
[SW2-port-group-1]port default v	
[SW2-port-group-1]port default vlan 10
[SW2-port-group-1]q
[SW2]port-group 2
[SW2-port-group-2]group-member Ethernet 0/0/11 to Ethernet 0/0/22
[SW2-port-group-2]port link-type access 
[SW2-port-group-2]port default vlan 20
[SW2-port-group-2]q
[SW2]port-group 3	
[SW2-port-group-3]group-member GigabitEthernet 0/0/1 GigabitEthernet 0/0/2
[SW2-port-group-3]port link-type trunk 
[SW2-port-group-3]port trunk allow-pass vlan 10 20
[SW2-port-group-3]q
[SW2]
SW3
<Huawei>sys
[Huawei]sys SW3
[SW3]un in en
[SW3]stp enable 	
[SW3]stp mode rstp 
[SW3]stp root primary 
[SW3]vlan batch 10 20 30 40
[SW3]int GigabitEthernet 0/0/1
[SW3-GigabitEthernet0/0/1]port link-type trunk 
[SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[SW3-GigabitEthernet0/0/1]q
[SW3]int GigabitEthernet 0/0/2
[SW3-GigabitEthernet0/0/2]port link-type trunk 
[SW3-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[SW3-GigabitEthernet0/0/2]q
[SW3]int GigabitEthernet 0/0/3
[SW3-GigabitEthernet0/0/3]port link-type access 
[SW3-GigabitEthernet0/0/3]port default vlan 30
[SW3-GigabitEthernet0/0/3]q
[SW3]int GigabitEthernet 0/0/4
[SW3-GigabitEthernet0/0/4]port link-type trunk 
[SW3-GigabitEthernet0/0/4]port trunk allow-pass vlan all
[SW3-GigabitEthernet0/0/4]q
[SW3]int Vlanif 10
[SW3-Vlanif10]ip add 192.168.1.1 24
[SW3-Vlanif10]q
[SW3]int Vlanif 20
[SW3-Vlanif20]ip add 192.168.2.1 24
[SW3-Vlanif20]q
[SW3]int Vlanif 30
[SW3-Vlanif30]ip add 192.168.3.1 24
[SW3-Vlanif30]q
[SW3]int Vlanif 40
[SW3-Vlanif40]ip add 192.168.4.1 24
[SW3-Vlanif40]q
[SW3]int GigabitEthernet 0/0/4
[SW3-GigabitEthernet0/0/4]port trunk pvid vlan 40
[SW3-GigabitEthernet0/0/4]q
[SW3]

在这里G0/0/4任然属于vlan1,所以需要打上标签vlan40,不然后面会不能联通外网,第一遍做的时候卡了很久在这里

2.接口IP与路由协议配置
SW3
[SW3]ospf 1
[SW3-ospf-1]a 0
[SW3-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255
[SW3-ospf-1-area-0.0.0.0]q
[SW3-ospf-1]q	
[SW3]ip route-static 0.0.0.0 0.0.0.0 192.168.4.2
[SW3]
AR1
<Huawei>sys
[Huawei]sys AR1
[AR1]int GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip add 192.168.4.2 24
[AR1-GigabitEthernet0/0/0]q
[AR1]int Serial 2/0/0
[AR1-Serial2/0/0]ip add 202.116.64.1 24
[AR1-Serial2/0/0]q
[AR1]ospf 1
[AR1-ospf-1]a 0
[AR1-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255
[AR1-ospf-1-area-0.0.0.0]q
[AR1-ospf-1]q
[AR1]ip route-static 0.0.0.0 0.0.0.0 202.116.64.2
[AR1]
AR2
<Huawei>sys
[Huawei]sys AR2
[AR2]int GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]ip add 116.64.100.1 24
[AR2-GigabitEthernet0/0/0]q
[AR2]int Serial 2/0/0
[AR2-Serial2/0/0]ip add 202.116.64.2 24
[AR2-Serial2/0/0]q
[AR2]
3.路由器AR1的Easy-IP的配置
[AR1]acl 2000
[AR1-acl-basic-2000]rule permit source 192.168.0.0 0.0.255.255
[AR1-acl-basic-2000]q
[AR1]int Serial 2/0/0
[AR1-Serial2/0/0]nat outbound 2000
[AR1-Serial2/0/0]q
[AR1]

二、基本配置验证

查看SW3生成树与端口的详细信息

image

查看生成树端口简要信息

image

联通性测试

与外部网络进行连通性测试

image

三、入侵实战

黑客交换机连接到SW1和SW2的新拓扑图

image

在这里测试的时候黑客交换机的mac地址一定要比SW3主根的mac地址小,不然同时设置优先级的情况下,由于SW3的mac地址更小,黑客交换机成为不了主根,后续的实验无法完成,可以多实验几次

在这里有一个小小的知识点

选举根桥(网桥id=优先级+mac地址)

查看优先级,优先级相同情况下查看mac地址,mac地址小的优先级越大

黑客交换机生成树配置
<Huawei>sys 
[Huawei]un in en
[Huawei]sys Hacker
[Hacker]stp enable 
[Hacker]stp mode rstp 
[Hacker]stp priority 0
[Hacker]
生成树重新选举验证

image

验证SW3交换机为非根交换机

image

验证SW3阻塞端口与备份链路

黑客交换机对角线为备份链路,在SW3中并未设置接口优先级,所以比较的方式为端口号。所以g0/0/2为阻塞状态

image

验证SW2阻塞端口与备份链路

image

验证后得到的拓扑图

image

测试的是pc,但如果使用的是云连接到虚拟机,在虚拟机上的操作,都可以由黑客交换机数据包抓取得到,黑客交换机在实战中可以寻找关键字username、password等数据包查看

四、防御策略

将交换机SW1、SW2用于主机接入的端口设为边缘端口

[SW1]port-group 1
[SW1-port-group-1]stp edged-port enable
[SW1-port-group-1]q
[SW1]port-group 2
[SW1-port-group-2]stp edged-port enable 
[SW1-port-group-2]q
[SW1]stp bpdu-protection 
[SW1]

[SW2]port-group 1
[SW2-port-group-1]stp edged-port enable 
[SW2-port-group-1]q
[SW2]port-group 2
[SW2-port-group-2]stp edged-port enable 
[SW2-port-group-2]q
[SW2]stp bpdu-protection 
[SW2]

一定要启用bpdu保护

验证

交换机SW1和SW2的E0/0/22端口变红处于down状态,SW3重新选举成根交换机
image

image

image

总结

  • 启动设备BPDU保护功能,边缘端口被关闭后,即使在交换机关闭生成树,端口也不会自动开启,可以在相应接口手动输入undo shutdown开启接口
  • 启动设备的BPDU保护,边缘端口不能接交换机。否则该端口立即关闭,因为交换机生成树默认开启,如边缘端口需要连接交换机,可先关闭交换机生成树,再与边缘端口进行连接

与生成树欺骗攻击与防御策略相似的内容:

生成树欺骗攻击与防御策略

生成树欺骗攻击与防御策略 工作目的 掌握交换机生成树选举的过程、欺骗原理、攻击过程和防范策略 任务分析 生成树的端口有五种状态。交换机的边缘端口不接收BPDU,选举时直接从堵塞状态转变为转发状态,不参与生成树的选举过程,默认情况下,交换机的所有端口均为非边缘端口,为避免生成生成树欺骗攻击,可以将交换

最小生成树

## 什么是最小生成树 给定一个图,在图中选择N - 1条边(N代表图的点数)把图的所有节点都连起来,且边的权值最小,则这N - 1条边就是原图的最小生成树。 ## 如何求最小生成树 求最小生成树有两种算法: 1. prim 2. kruskal ## prim算法 其实本质上和dijstra算法很

学习笔记——斯坦纳树

斯坦纳树 斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种。最小生成树是在给定的点集和边中寻求最短网络使所有点连通。而最小斯坦纳树允许在给定点外增加额外的点,使生成的最短网络开销最小。 百度百科 在图论里,一般用于解决形如: 给定一个连通图 \(G\),给定 \(k\) 个关键点,选取

算法学习笔记(30):Kruskal 重构树

Kruskal 重构树 这是一种用于处理与最大/最小边权相关的一个数据结构。 其与 kruskal 做最小生成树的过程是类似的,我们考虑其过程: 按边权排序,利用并查集维护连通性,进行合并。 如果我们在合并时,新建一个节点,其权值为当前处理的边的权值,并将合并的两个节点都连向新建的节点,那么就可以得

Solution -「LOJ #3310」丁香之路

首先有两个前置技巧:1) 两点间的最短距离就是直接连接两点的边的长度;2) 遍历一个子图的最小花费是最小生成树的边权之和乘二。原问题让我们找出一条最短且必经过钦定边的 \(( s, i )\) 路径,那么我们先将 \(\lang s , i \rang\) 连上,问题就变成了找出一条最短且必经过钦定

C#实现生成Markdown文档目录树

前言 之前我写了一篇关于C#处理Markdown文档的文章:C#解析Markdown文档,实现替换图片链接操作 算是第一次尝试使用C#处理Markdown文档,然后最近又把博客网站的前台改了一下,目前文章渲染使用Editor.md组件在前端渲染,但这个插件生成的目录树很丑,我魔改了一下换成boots

Vue源码学习(五):渲染第四步,生成虚拟dom并将其转换为真实dom

好家伙, 前情提要: 在上一篇我们已经成功将ast语法树转换为渲染函数 现在我们继续 1.项目目录 代码已开源https://github.com/Fattiger4399/analytic-vue.git手动调试一遍, 胜过我解释给你听一万遍 新增文件:vnode/index.js vnode/p

递归解析Json,实现生成可视化Tree+快速获取JsonPath

内部平台的一个小功能点的实现过程,分享给大家: 递归解析Json,可以实现生成可视化Tree+快速获取JsonPath。 步骤: 1.利用JsonPath读取根,获取JsonObject 2.递归层次遍历JsonObjec,保存结点信息 3.利用zTree展示结点为可视化树,点击对应树的结点即可获取

终于搞懂了!原来 Vue 3 的 generate 是这样生成 render 函数的

前言 在之前的 面试官:来说说vue3是怎么处理内置的v-for、v-model等指令? 文章中讲了transform阶段处理完v-for、v-model等指令后,会生成一棵javascript AST抽象语法树。这篇文章我们来接着讲generate阶段是如何根据这棵javascript AST抽象

[转帖]SQL Server 聚集索引和 非聚集索引 说明

https://www.cndba.cn/dave/article/4506 索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。 索引包含由表或视图中的一列或多列生成的键。 这些键存储在一个结构(B 树)中,使 SQL Server 可以快速有效地查找与键值关联的行。 1 聚集索引