H3C交换机系统时间设置漏洞
H3C交换机系统时间设置存在漏洞
1. 背景说明
由于在编写《主机房网络延伸实施方案》,调试H3C S5120S-28P-EI交换机时,发现交换机设置成现在的时间后,导致本地用户通过ssh或者console口不能登录,只能通过重启机器才能再次登录。而交换机重启之后,交换机的时间统一重写写入系统时间为2000年。该时间肯定跟我们目前的时间不一致,不利于以后排查问题。
2. 排查导致不可登录造成的原因
2.1登录报错
Failed to log in because the login idle timer expired
通过分析报错造成的原因是由于交换机启用了以下策略
password-control enable
password-control aging 365
password-control composition type-number 3 type-length 1
password-control history 2
password-control login-attempt 10 exceed lock-time 1
password-control complexity user-name check
###以上策略是为了交换机登录安全所设置
由于设置密码有效期为365天(此时间为可设置的最长有效时间),如果用户是2000年创建的,突然把系统设置成2017年,就导致该用户不能登录了。经过测试,在系统时间为2017年时新建用户,是可以登录的。但是,如果交换机重启之后,系统时间被重写成2000年时,该用户登录过一次,在把系统设置成2017年时,该用户也不能登录。这样会导致以后如果更新系统时间为当前时间,跟用户创建时间之间超过365天时,导致用户不可登录,只能通过重启交换机解决。(考虑到交换机在机房,且交换机不可能随便重启,固存在较大安全隐患)
如果undo password-control enable
本地用户就可以登录,但是如果这样的话,交换机在登录方面的安全策略都被取消了,存在安全隐患。不建议这样做。
3. 跟售后技术支持沟通反馈
3.1确定交换机能否保存系统时间的问题
跟h3c售后技术支持沟通之后,h3c所有中低端交换机(包括我们现在所用H3C S5500-28C-EI和我目前测试的H3C S5120S-28P-EI)都不具备保存系统时间的功能,及交换机重启之后,时间统一被设置2000年某月某日,该时间沟通过,不能重新设置。沟通过,h3c交换机只有少许的某些高端交换机才有保存系统时间功能。
3.2在不采用同步现在当时时间是否存在未知隐患的问题
如果不采用同步目前的时间的做法,跟售后技术支持沟通后,得出不影响交换机的使用,不影响生成树协议的使用
4. 沟通之后的解决办法
4.1取消password-control策略
取消该项策略,用户可以登录,存在安全隐患,不建议使用。
4.2不采用同步现在时间,及使用本系统固有时间(2000年某年某月)
该做法时间时钟跟目前的真实时间不一致,不利用debug排查后来问题,勉强能用。
4.3采购能够保存系统时间的高端交换机
采购能够保存系统时间的高端交换机,就不存在上述问题,缺点,可能费用要比现在要高。
5. 参考
经测试配置好ntp服务器后,在以下几个条件满足的情况下,可以成功登陆
①-交换机重启之后,通过配置的ntp服务器同步到当前时间(意味着ntp服务器是好的,且能同步到当前时间)
②-在交换机重启之后,时间未同步到当前时间,不能通过console登陆,以免造成该用户最后登陆成功登陆时间为2000年
③-登陆的用户最近的一次成功登陆的时间必须不能提前于当前时间的365天(交换机重启前,用户最后成功登陆交换机的时间不得早于当前时间的365天)
综上所述,为避免ssh 登陆不上交换机,必须保证以下几个条件
①-必须保证创建的用户为当前或者不得早于当前时间365天。
②-重启交换机之前必须有用户在365天内登陆成功的记录。
③-在交换机为完成或者不能完成时间同步的条件下,不得用console连接交换机,防止该用户在交换机同步完时间后,远程ssh登陆不进系统。
H3C交换机系统时间设置漏洞的更多相关文章
- python有超时的windows系统时间设置代码
手边的笔记本用久了,cmos电池可能又没电了.每次开机时间都不对,导致访问一些有https的网页会出现警告信息. 于是找了找通过python脚本设置系统时间的方法,发现了两种,其一是调用socket直 ...
- Linux系统时间设置(转载)
Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟.系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟, ...
- Talend 将Oracle中数据导入到hive中,根据系统时间设置hive分区字段
首先,概览下任务图: 流程是,先用tHDFSDelete将hdfs上的文件删除掉,然后将oracle中的机构表中的数据导入到HDFS中:建立hive连接->hive建表->tJava获取系 ...
- Linux 系统时间设置
from:https://blog.csdn.net/yjh314/article/details/51669238 今早看到一台机器时间对不上,本以为系统时间与网络北京时间不同步,就在终端命令执行网 ...
- centos 系统时间设置
在我们使用CentOS系统的时候,也许时区经常会出现问题,有时候改完之后还是会出错,下面我们就来学习一种方法来改变这个状况.如果没有安装,而你使用的是 CentOS系统 那使用命令 yum insta ...
- H3C交换机恢复出厂设置
reset saved-configuration reboot 恢复出厂设置后查看当前配置: ..............................
- linux 下系统时间设置C语言实现
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <sys/time.h&g ...
- CentOS 6.9系统时间和硬件时间设置(转)
总结一下hwclock,这个容易晕: 1)/etc/sysconfig/clock 文件,只对 hwclock 命令有效,且只在系统启动和关闭的时候才有用(修改了其中的 UTC=true 到 UTC= ...
- Linux系统时间同步方法小结
在Windwos中,系统时间的设置很简单,界面操作,通俗易懂,而且设置后,重启,关机都没关系.系统时间会自动保存在BIOS时钟里面,启动计算机的时候,系统会自动在BIOS里面取硬件时间,以保证时间的不 ...
随机推荐
- 换装demo随手记
1 修补demo错误,使VirtualWorldExample可正常运行 CharacterGenerator.AssetbundleBaseURL 做如下修改 public static strin ...
- [Xcode 实际操作]一、博主领进门-(1)iOS项目的创建和项目模板的介绍
目录:[Swift]Xcode实际操作 本文将演示iOS项目的创建和项目模板的介绍. [Create a new Xcode project]创建一个新的项目. 在弹出的模板窗口中,显示了所有的项目模 ...
- [SDOI2019] 热闹又尴尬的聚会
热闹度\(p\)子图中最小的度数,尴尬度\(q\)独立集大小,之间的约束 \[ \begin{aligned} \lfloor n/(p+1)\rfloor\le q &\rightarrow ...
- spark sql 的metastore 对接 postgresql
本教程记录 spark 1.3.1 版本的thriftserver 的metastore 对接 postgresql postgresql 的编译,参考:http://www.cnblogs.com/ ...
- Linux权限相关
权限分组 用户:文件所有者 用户组:多个用户的集合 其他:除了用户和用户组之外的任何用户 权限类别 r:表示读的权限 w:表示写的权限 x:表示执行的权限 s:表示setuid权限,允许用户以其拥有者 ...
- mySql分组排序
mysql 排序学习---mysql 1.建表语句 CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varc ...
- Java语言规范 第3章 词法
- IP服务-5-网络时间协议
NTP版本3(RFC1305)允许IP主机向一个通用的时钟源同步它们的日期和时间. 从设计上来说,大多数路由器和交换机都使用NTP客户端模式,根据NTP服务器所提供的时间来调整自己的时钟.NTP定义了 ...
- STM32F4之SWO
https://stm32f4-discovery.net/2014/12/library-46-debug-stm32f4-device-swo-feature/
- 【转】java的动态代理机制详解
java的动态代理机制详解 在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们 ...