首页 > 其他分享 >生成树欺骗攻击与防御策略

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

时间:2023-09-28 15:47:04浏览次数:30  
标签:SW2 group 0.0 生成 防御 SW1 SW3 欺骗 port

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

工作目的

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

任务分析

生成树的端口有五种状态。交换机的边缘端口不接收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保护,边缘端口不能接交换机。否则该端口立即关闭,因为交换机生成树默认开启,如边缘端口需要连接交换机,可先关闭交换机生成树,再与边缘端口进行连接

标签:SW2,group,0.0,生成,防御,SW1,SW3,欺骗,port
From: https://www.cnblogs.com/ZhaoYork/p/17735930.html

相关文章

  • 用 Python 自动生成小学四则运算题目
    这个作业属于哪个课程软件工程这个作业要求在哪里结对项目这个作业的目标熟悉多人协作成员......
  • 结对项目:实现自动生成小学四则运算题目
    软件工程计科21级2班作业要求结对项目-实现四则运算题目生成作业目标合作完成四则运算题目生成项目成员信息姓名学号杨恒3121005146游烽3121005148Github:https://github.com/wcng010/SoftwareWork2PSP表格PSP2.1PersonalSoftwarePr......
  • 结对项目:自动生成小学四则运算题目
    所属课程软件工程导论作业要求个人项目作业目标熟悉结对编程、完成小学四则运算题目的自动生成小组成员姓名班级学号林劲辰计科2班3121004707许庆阳计科2班3121004931Github链接:https://github.com/HsuQingYoung/PeerWork项目要求1、......
  • 结对项目:用python实现一个自动生成小学四则运算题目的命令行程序
    这个作业属于哪个课程计科21级12班这个作业的要求在哪里结对项目这个作业的目标了解结对项目的过程团队成员信息姓名学号肖兴明3121004712徐强3121004713Github链接GithubPSPPSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实......
  • 结对项目:自动生成小学四则运算题目
    软件工程https://edu.cnblogs.com/campus/gdgy/CSGrade21-12?filter=all作业要求https://edu.cnblogs.com/campus/gdgy/CSGrade21-12/homework/13016作业目标学习算法,完成简单的四则运算团队成员:姓名:陈鑫杰学号:3121004688姓名:黄嘉俊学号:3121004696Git链接:h......
  • 使用openssl_encrypt自己生成license.lic文件
     //生成加密文件publicfunctioncreateLicense(){//加密信息$licenseData=['user'=>'JohnDoe','expiry'=>'2022-12-31',];$licenseData=json_......
  • 小学四则运算题目生成器
    这个作业属于哪个课程软件工程这个作业要求在哪里在这里这个作业的目标写个小学四则运算题目生成器,学会与同伴合作做项目陈威衡3121005206郑贵南3121005237github连接需求分析表达式中的分数都用真分数的形式表示生成的表达式里只包含四则运算和括号每......
  • Python实现自动生成四则运算题目和答案检测
    这个作业属于哪个课程软件工程这个作业要求在哪里结对项目这个作业的目标实现自动生成四则运算题目功能,以及给定题目和答案、判断答案对错的功能本项目上传至个人GitHub:yulinnn/PythonProject_FourOperations项目需求题目:实现一个自动生成小学四则运算题目的......
  • C# 自己的组件生成Nuget包,组件里的内容(dll等)设置了复制到输出目录,但是引用该Nuget包后
    例如组件A项目中想把以下dll拷贝都输出目录, 已经设置了复制到输出目录。然后项目B通过Nuget包引入了组件A,然后项目B生成路径下并没有这几个opencv的dll。经过组内大佬唐宋元明清2188的研究需要在组件A的项目文件中给每个dll内容连接添加<PackageCopyToOutput>true</Pack......
  • vue3项目table表格动态表头生成+行数据合并
    这两处地方是动态的,由后端数据返回思路流程  1,后端返回数据二次处理  2,根据后端数据生成动态表头  3,利用antd的customRender与rowSpan设置行合并 完整代码<template><Table:data-source="dataSource":columns="columns":pagination="......