前情分析
客户打电话反映学校无线网络出了问题,两年内都很正常的网络,突然出现大面积瘫痪,上不去网的状况,重启交换机后正常,但第二天又无法加入网络。学校人数众多,同时使用人数在千人左右,投诉不断。救场如救火,火速出发。
学校网络拓扑结构
拓扑图
初步分析
像这种现象初步原因分析为:
单从交换机指示灯看:一般分3种情况
故障展示
赶到现场,发现交换机端口信号灯状态处于全亮微闪烁状态,通过核心交换机端口分析发现,网络端口中存在大量的PAUSE流控帧。
PAUSE帧介绍
PAUSE帧是以太网在全双工模式下,MAC控制子层发出的流量控制帧。IEEE802.3协议为MAC控制子层提供了一个全双工流量控制结构框架,MAC控制子层是介于逻辑链路控制子层和介质访问控制子层间的可选功能。
交换控制电路要防止缓冲区溢出,可以利用MAC控制子层来控制以太网介质访问控制子层的操作。当已用缓冲区容量达到一个预先设定的阈值时,端口向全双工链路对方发出停止发送数据的请求,这个请求通过MAC控制子层产生的控制帧实现。
同样,端口可以接收由其他站点MAC控制子层产生的控制帧,控制帧夹在客户数据帧流中发送,接收方会根据帧的内容将控制帧分离出来,提交到MAC控制子层中的流量控制模块,流量控制模块解析控制帧的内容,提取帧中的控制参数,根据控制参数决定暂停发送的时间。
PAUSE帧中携带了时间参数。收到PAUSE帧的设备通过简单的解析,就可以确定停止发送的时长。对端设备出现拥塞的通常情况下,本端端口通常会连续收到多个PAUSE帧。只要对端设备的拥塞状态没有解除,相关的端口就会一直发送PAUSE.
故障分析
仔细研究交换机缓冲区溢出的原因,发现是一种非常普遍、非常危险的漏洞,在各种应用软件中广泛存在。利用攻击可以导致程序运行失败、系统宕机、重新启动等后果。更为严重的是,可以利用它执行非授权指令,甚至可以取得系统特权,进而进行各种非法操作。
程序一般都会使用到一些内存,这些内存或是程序内部使用,或是存放用户的输入数据,这样的内存一般称作缓冲区。溢出是指盛放的东西超出容器容量而溢出来了,在程序中,就是数据使用到了被分配内存空间之外的内存空间。而缓冲区溢出,简单的说就是交换机对接收的输入数据没有进行有效的检测(理想的情况是程序检查数据长度并不允许输入超过缓冲区长度的字符),向缓冲区内填充数据时超过了缓冲区本身的容量,而导致数据溢出到被分配空间之外的内存空间,使得溢出的数据覆盖了其他内存空间的数据。
也就是说当核心交换机缓冲区将要溢出,就会向下边的接入交换机发出PAUSE帧,让接入交换机暂缓发送数据包,造成接入交换机数据堵塞,客户无法上网。
上述故障现象从表面上来看,是由于局域网中的核心交换机设备工作状态不正常引起的,重启只能暂缓故障,事实上故障交换机的工作状态受到了远程网络病毒的影响;这种现象导致故障交换机的缓存出现了溢出错误,最终使得该交换机发生了瘫痪现象,这也是故障交换机端口信号灯状态都处于全亮微闪烁状态的原因。
之前别人在处理这种故障时,都判定交换机损坏,更换交换机。
解决方案
远程缓存区溢出攻击解决办法:核心交换机恢复出厂设置,划分VLAN,更改远程登录用户名密码,有条件的加装硬件防火墙。
划分VLAN
故障交换机经过恢复出厂,重新设置之后,已经恢复正常。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved