服务器启动方法及服务器与流程

摘要: 本申请涉及信息安全、可信计算,具体地涉及一种服务器启动方法及服务器。背景技术:1、服务器是集成中央处理器(centralprocessingunit,cpu)、...
服务器启动方法及服务器与流程

本申请涉及信息安全、可信计算,具体地涉及一种服务器启动方法及服务器。

背景技术:

1、服务器是集成中央处理器(central processing unit,cpu)、内存、存储设备、网络接口、基本输入输出系统(basic input/output system,bios)、基板管理控制器(baseboard management controller,bmc)等核心硬件的复杂计算系统,其启动过程涉及固件加载、硬件初始化、操作系统引导等多个关键环节,任何环节的安全漏洞都可能导致恶意代码注入、固件篡改或系统权限被非法获取。

2、例如,在服务器的启动阶段,如果对bios代码进行篡改或注入式攻击,服务器往往难以检测并实施及时有效的处理,导致服务器启动过程存在安全风险。

技术实现思路

1、鉴于上述问题,本申请提供了一种服务器启动方法及服务器。

2、根据本申请的第一个方面,提供了一种服务器启动方法,可应用于服务器中的基板管理控制器,该方法包括:在基板管理控制器处于启动状态的情况下,响应于针对服务器的启动事件,获取针对服务器的基本输入输出系统的第一基本度量信息、随机盐值和固件信息;其中,第一基本度量信息表示基本输入输出系统整体处于安全状态;基于对固件信息进行加密得到的第一加密信息和随机盐值,确定第一待校验度量信息;以及在第一待校验度量信息与第一基本度量信息不同的情况下,对基本输入输出系统的至少一个功能模块进行异常检测,得到异常检测结果,并控制服务器维持未启动状态;在第一待校验度量信息与第一基本度量信息相同的情况下,在基板管理控制器的控制下启动服务器。

3、根据本申请的实施例,固件信息包括基本输入输出系统的硬件可编程模块的镜像信息;在基板管理控制器处于启动状态的情况下;响应于针对服务器的启动事件,获取针对服务器的基本输入输出系统的第一基本度量信息、随机盐值和固件信息,包括:从部署在基板管理控制器内的数据库中,获取第一基本度量信息和随机盐值;从预定存储器的第一存储区域获取镜像信息,其中,预定存储器为用于基本输入输出系统的存储器,第一存储区域为用于存储硬件可编程模块的镜像信息的存储区域。

4、根据本申请的实施例,在第一待校验度量信息与第一基本度量信息不同的情况下,对基本输入输出系统的至少一个功能模块进行异常检测,得到异常检测结果,包括:根据功能模块的模块名称与模块地址信息之间的映射关系,从预定存储器的第二存储区域获取至少一个功能模块各自的模块地址信息;其中,第二存储区域为用于存储功能模块的存储区域;从部署在基板管理控制器内的数据库中,获取至少一个功能模块各自的第二基本度量信息,第二基本度量信息表示功能模块处于安全状态;根据至少一个功能模块各自的第二基本度量信息和对模块地址信息进行加密得到的第二加密信息之间的差异,确定异常检测结果。

5、根据本申请的实施例,根据至少一个功能模块各自的第二基本度量信息和对模块地址信息进行加密得到的第二加密信息之间的差异,确定异常检测结果,包括:根据至少一个模块地址信息在预定存储器中的顺序,确定至少一个功能模块的验证顺序;针对各模块地址信息,基于对模块地址信息进行加密后得到的第二加密信息和随机盐值,确定第二待校验度量信息;在第二待校验度量信息与第二基本度量信息不同的情况下,将模块地址信息以及验证顺序中位于模块地址信息之后的模块地址信息对应的功能模块确定为异常功能模块;并基于异常功能模块生成异常检测结果。

6、根据本申请的实施例,基于对固件信息进行加密得到的第一加密信息和随机盐值,确定第一待校验度量信息,包括:利用第一加密方式对固件信息进行加密,得到第一加密信息;利用第二加密方式,对第一加密信息与随机盐值拼接后的信息进行加密,得到第一待校验度量信息;

7、基于对模块地址信息进行加密后得到的第二加密信息和随机盐值,确定第二待校验度量信息,包括:利用第一加密方式对模块地址信息进行加密,得到第二加密信息;利用第二加密方式,对第二加密信息与随机盐值拼接后的信息进行加密,得到第二待校验度量信息;其中,第一加密方式与第二加密方式不同。

8、根据本申请的实施例,在第一待校验度量信息与第一基本度量信息相同的情况下,在基板管理控制器的控制下启动服务器包括:在第一待校验度量信息与第一基本度量信息相同的情况下,在基板管理控制器的控制下,向服务器的处理器发送用于启动基本输入输出系统的第一指令和用于启动服务器的第二指令,使得处理器依次执行第一指令和第二指令,以启动服务器。

9、根据本申请的实施例,通过下述方式生成第一基本度量信息:在服务器处于启动状态的情况下,响应于接收到成功传输信息,从升级工具中获取针对待安装版本的基本输入输出系统的第三加密信息,其中,升级工具用于获取待安装版本的基本输入输出系统的固件信息,并将固件信息存储至预定存储器,第三加密信息是升级工具确定的; 对预定存储器中的固件信息进行加密,得到第四加密信息;以及在第三加密信息与第四加密信息相同的情况下,基于第三加密信息和第四加密信息其中之一、以及随机盐值,确定第一基本度量信息。

10、根据本申请的实施例,升级工具包括以下之一:封装于服务器的操作系统中的升级工具;部署于除服务器之外的电子设备中的升级工具。

11、根据本申请的实施例,部署在基板管理控制器的数据库包括持久化数据分区,随机盐值、第一基本度量信息和第二基本度量信息存储于持久化数据分区;在基板管理控制器执行版本更新操作的情况下,持久化数据分区内的数据维持原有状态。

12、本申请的第二方面提供了一种服务器,包括:基本输入输出系统;基板管理控制器,被配置为在基板管理控制器处于启动状态的情况下,响应于针对服务器的启动事件,获取针对服务器的基本输入输出系统的第一基本度量信息、随机盐值和固件信息;其中,第一基本度量信息表示基本输入输出系统整体处于安全状态;基于对固件信息进行加密得到的第一加密信息和随机盐值,确定第一待校验度量信息;以及在第一待校验度量信息与第一基本度量信息不同的情况下,对基本输入输出系统的至少一个功能模块进行异常检测,得到异常检测结果,并控制服务器维持未启动状态;在第一待校验度量信息与第一基本度量信息相同的情况下,在基板管理控制器的控制下启动服务器。

13、在本申请的上述实施例中,将对于bios的可信计算嵌入到了bmc中,不仅不需要改造硬件电路,而且对于后续可信计算程序的升级提供了便利性。此外,还利用固件信息加密后的第一加密信息与随机盐值共同确定第一待校验度量信息,这种叠加随机盐值的二次加密方法能够很好地规避彩虹表攻击,提高服务器启动的安全性。进一步地,若bios度量存在安全异常,通过进一步地对bios的各个功能模块进行异常检测,可以进一步地确定导致异常的具体模块,便于快速定位异常并解决异常。

1.一种服务器启动方法,其特征在于,所述方法应用于基板管理控制器;所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述固件信息包括所述基本输入输出系统的硬件可编程模块的镜像信息;所述在所述基板管理控制器处于启动状态的情况下,响应于针对服务器的启动事件,获取针对所述服务器的基本输入输出系统的第一基本度量信息、随机盐值和固件信息,包括:

3.根据权利要求1所述的方法,其特征在于,所述在所述第一待校验度量信息与所述第一基本度量信息不同的情况下,对所述基本输入输出系统的至少一个功能模块进行异常检测,得到异常检测结果,包括:

4.根据权利要求3所述的方法,其特征在于,所述根据至少一个所述功能模块各自的第二基本度量信息和对所述模块地址信息进行加密得到的第二加密信息之间的差异,确定所述异常检测结果,包括:

5.根据权利要求1或4所述的方法,其特征在于,所述基于对所述固件信息进行加密得到的第一加密信息和所述随机盐值,确定第一待校验度量信息,包括:

6.根据权利要求1所述的方法,其特征在于,所述在所述第一待校验度量信息与所述第一基本度量信息相同的情况下,在所述基板管理控制器的控制下启动所述服务器包括:

7.根据权利要求1所述的方法,其特征在于,通过下述方式生成所述第一基本度量信息:

8.根据权利要求7所述的方法,其特征在于,所述升级工具包括以下之一:封装于所述服务器的操作系统中的升级工具;部署于除所述服务器之外的电子设备中的升级工具。

9.根据权利要求2或3所述的方法,其特征在于,部署在所述基板管理控制器的数据库包括持久化数据分区,所述随机盐值、所述第一基本度量信息和第二基本度量信息存储于所述持久化数据分区;在所述基板管理控制器执行版本更新操作的情况下,所述持久化数据分区内的数据维持原有状态。

10.一种服务器,其特征在于,包括: