本文为书中相关知识的摘要,由于书中以思科设备为配置依据,所以笔记中补充了华为、H3C设备的相关配置。华为设备配置参考华为S2352EI 产品版本:V100R005C01文档版本:02。  H3C配置参考S7600系列文档(资料版本:6W102-20130226 产品版本:S7600系列—Release 6701及以上版本  S7600-X系列 —Release 6901及以上版本 )。
 
一、MAC地址泛洪攻击
通过填满MAC地址表 (桥接表) 导致同一网段内设备之间通讯无法单播,只能通过未知单播泛洪来进行通讯。从而达到窃听信息的目的。
 
解决方法
(1)探测MAC Activity (MAC活跃性)    无实际防护作用,仅对用户通告相关告警
 
Cisco: mac-address-table notification mac-move
H3C: MAC Information   类似于思科的相关探测MAC活跃性的作用。仅用户通过告警。感觉没什么实质意义。
 
(2)Port security (端口安全)  如果使用软件进程来完成相关port security 功能则CPU利用率将会被大量占用。如果基于硬件速率限制则不会。
 
Cisco:   show port-security interface f8/4 查看端口
            show port-security address         查看被保护的MAC地址
            (书上对配置没有详细描述,我对思科设备配置不是很熟悉所以希望大家帮忙补充)
华为:
        接口MAC学习数量限制配置
 
- 执行命令interface interface-type interface-number,进入接口视图。
 
- 执行命令mac-limit maximum max-num,限制接口的MAC地址学习数量。
 
- 缺省情况下,不限制MAC地址学习数量。
H3C的区别,配置接口最多可以学习到的MAC地址数   mac-address max-mac-count  count
 
- 执行命令mac-limit alarm { disable | enable },配置当MAC地址数量达到限制后是否进行告警。
 
- 缺省情况下,对超过MAC地址学习限制的报文进行告警。
执行命令display mac-limit,可以查看MAC地址学习限制的配置是否正确。
 
        接口MAC安全配置    (我认为此配置可较好的解决相关问题,周鹏)
           进入相关接口
             1、 port-security enable
                   使能接口安全功能
 
             2、 port-security mac-address sticky
                   使能接口Sticky MAC功能。
 
             3、   port-security protect-action { protect | restrict | shutdown }
                   配置接口安全功能的保护动作。
protect      当学习到的MAC地址数达到接口限制数时,接口将丢弃源地址在MAC表以外的报文。
restrict      当学习到的MAC地址数达到接口限制数时,接口将丢弃源地址在MAC表以外的报文,同时发出trap告警。
shutdown  当学习到的MAC地址数达到接口限制数时,接口将执行shutdown操作。
 
             4、 port-security max-mac-num max-number
                   配置接口MAC地址学习限制数。
 
           可选 port-security mac-address sticky [ mac-address vlan vlan-id ]   手动配置一条sticky-mac表项。
 
   H3C的配置与华为基本相同。功能亦相同。再次不做赘述。
   PS:H3C的文档易读性明显不如华为做的好。同样的内容花了我很多时间去找。 
 
 注意事项:
1、执行命令port-security aging-time time ,配置接口学习到的安全动态MAC地址的老化时间。
2、使能接口安全功能后,缺省情况下,接口学习的安全动态MAC地址不老化。若只启用接口安全功能 则 设备重启后安全动态MAC地址会丢失,需要重新学习。
3、Sticky MAC的主要作用是将接口学习到的动态MAC地址转换成静态MAC地址,可以理解为将MAC地址黏在接口上。当接口学习的最大MAC数量达到上限后,不再学习新的MAC地址,只允许这些Sticky MAC和交换机通信。这样一可以避免在设备重启后动态MAC丢失需要重新学习,二可以阻止其他非信任的MAC主机通过本接口和交换机通信。
 
(3)未知单播泛洪保护(unkonw unicast flooding protection)
CISCO:  Router(config)# mac-address-table unicast-flood limit 3 vlan 100 filter 5
               limit限制每个源MAC地址以及每个VLAN的每秒单播泛洪个数. filter值规定了对单播泛洪流量进行多次实践的过滤。 除了filter 还有 alter(告警)         shutdown关闭端口 两个值可选。
               Router #    show mac-address-table  unicast-flood
 
其他方法:
禁止MAC地址学习    使用纯静态MAC表进行转发。MAC表中没有的则直接丢弃
mac-address learning disable 可在端口或VLAN中禁用
 
执行命令drop illegal-mac enable,配置S2352EI设备丢弃全0非法MAC地址报文。
 
缺省情况下,S2352EI设备没有配置丢弃全0非法MAC地址报文的功能

黑客精神不灭,自由意志永存。 

本文同时发在了通信人家园论坛:http://www.txrjy.com/thread-723472-1-1.html

交换机安全学习笔记 第二章 MAC地址泛洪攻击的更多相关文章

  1. 《DOM Scripting》学习笔记-——第二章 js语法

    <Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...

  2. The Road to learn React书籍学习笔记(第二章)

    The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...

  3. [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”

    [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...

  4. Mac地址泛洪攻击的防御措施和具体配置

    Mac地址泛洪攻击指的是:利用交换机的mac地址学习机制,攻击者不断地刷新mac地址,填满交换机的mac地址表,以致崩溃,使交换机不得不使用广播发包,从而获取其他人的报文信息. mac地址泛洪攻击的防 ...

  5. 分分钟学会系列:mac地址泛洪攻击实验

    一.实验目的: 通过实战深入理解mac地址泛洪攻击的原理. 二.实验原理: 交换机中有一张非常重要的表,叫做mac表,这个表是一个硬件组成的表,主要是完成快速转发.mac表有大小限制,不同的交换机的m ...

  6. mac地址泛洪攻击的实验报告

    案例介绍: PC A 访问 本网络的一台FTPserver主机,中间人进行arp的投毒,获取PC-A和FTPserve之间的回话记录,截获用户名和密码. 实验拓扑:

  7. [HeadFirst-JSPServlet学习笔记][第二章:高层概述]

    第二章:高层体系结构 容器 1 什么是容器? servelet没有main()方法.它们受控于另一个Java应用,这个Java应用称为容器(Container) Tomcat就是这样一个容器.Web服 ...

  8. c#高级编程第七版 学习笔记 第二章 核心c#

    第二章 核心C# 本章内容: 声明变量 变量的初始化和作用域 C#的预定义数据类型 在c#程序中使用条件语句.循环和跳转语句执行流 枚举 名称空间 Main()方法 基本的命令行c#编译器选项 使用S ...

  9. 《Python基础教程(第二版)》学习笔记 -> 第二章 列表和元组

    本章将引入一个新的概念:数据结构. 数据结构是通过某种方式阻止在一起的数据元素的集合,这些数据元素可以是数字或者字符,设置可以是其他数据结构. Python中,最基本的数据结构是序列(Sequence ...

随机推荐

  1. HandlerAdapter解析参数过程之HandlerMethodArgumentResolver

    在我们做Web开发的时候,会提交各种数据格式的请求,而我们的后台也会有相应的参数处理方式.SpringMVC就为我们提供了一系列的参数解析器,不管你是要获取Cookie中的值,Header中的值,JS ...

  2. vuex中mapState、mapMutations、mapAction的理解

    当一个组件需要获取多个状态时候,将这些状态都声明为计算属性会有些重复和冗余.为了解决这个问题,我们可以使用 mapState 辅助函数帮助我们生成计算属性. // 在单独构建的版本中辅助函数为 Vue ...

  3. JavaScript 的定时(Timing )事件——setTimeout()与setInterval()

    JavaScript 可以在时间间隔内执行,这就是所谓的定时事件( Timing Events). ㈠Timing 事件 ⑴window 对象允许以指定的时间间隔执行代码,这些时间间隔称为定时事件. ...

  4. D. Treasure Hunting ( 思维题 , 贪心)

    传送门 题意: 在一个 n * m 的地图里,有 k 个宝藏,你的起点在 (1, 1), 每次你能 向下向右向左移动(只要在地图里):      现在,有 q 个安全的列, 你只有在这些列上面,你才能 ...

  5. TTTTTTTTTTT hdu 1520 Anniversary party 生日party 树形dp第一题

    Anniversary party Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  6. Spring boot之热部署

    springboot热部署 1.springloaded(热部署) 2.devtools(热部署) 一.springloaded 问题的提出: 在编写代码的时候,你会发现我们只是简单把打印信息改变了, ...

  7. 20175215 2018-2019-2 第四周Java课程学习总结

    第五章学习内容 1.子类的继承性 (1)子类和父类在同一包中的继承性 如果子类和父类在同一个包中,那么,子类自然地继承了其父类中不是private的成员变量作为自己的成员变量,并且也自然地继承了父类中 ...

  8. LeetCode 300. 最长上升子序列(Longest Increasing Subsequence)

    题目描述 给出一个无序的整形数组,找到最长上升子序列的长度. 例如, 给出 [10, 9, 2, 5, 3, 7, 101, 18], 最长的上升子序列是 [2, 3, 7, 101],因此它的长度是 ...

  9. Docker安装Zookeeper并进行操作

    Docker安装Zookeeper 下载Zookeeper镜像docker pull zookeeper1启动容器并添加映射docker run --privileged=true -d --name ...

  10. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

    1. 摘要 作者提出了一系列应用于移动和嵌入式视觉的称之为 MobileNets 的高效模型,这些模型采用深度可分离卷积来构建轻量级网络. 作者还引入了两个简单的全局超参数来有效地权衡时延和准确率,以 ...