硬盘主引导记录载入内存的方法、装置、设备及存储介质与流程

文档序号:14572105发布日期:2018-06-01 22:56阅读:217来源:国知局
硬盘主引导记录载入内存的方法、装置、设备及存储介质与流程

本发明涉及计算机应用技术领域,特别是涉及一种硬盘主引导记录载入内存的方法、装置、设备及计算机可读存储介质。



背景技术:

随着计算机应用技术的发展,计算机的普遍应用给人们带来了便利。但是,在计算机应用技术发展的同时,存在黑客利用一些手段对服务器进行破坏的现象,例如,通过给运行于服务器底层先于操作系统启动而运行的硬盘主引导记录MBR植入恶意代码或者病毒,再将植入恶意代码或病毒后的硬盘主引导记录载入服务器内存中,从而对服务器进行破坏。这种通过在硬盘主引导记录中植入的恶意代码或病毒难以被杀毒软件和安全工具发现,从而对服务器造成较大的威胁。

硬盘主引导记录位于整个硬盘的0磁道0柱面1扇区。在总共512字节的主引导扇区中,硬盘主引导记录只占用了其中的446个字节,另外的64个字节交给了硬盘分区表Disk Partition Table,最后两个字节“55,AA”是分区的结束标志,这个整体构成了硬盘的主引导扇区。硬盘主引导记录不依赖任何操作系统,可以实现多系统共存于一台服务器。

综上所述,如何有效地解决通过给硬盘主引导记录植入恶意代码或者病毒对服务器进行破坏的问题,是目前本领域技术人员急需解决的问题。



技术实现要素:

为解决上述技术问题,本发明提供如下技术方案:

一种硬盘主引导记录载入内存的方法,包括:

在检测到系统正常工作时,对硬盘主引导记录进行哈希运算,获得所述硬盘主引导记录对应的实际哈希值;

读取预存的所述硬盘主引导记录对应的基准哈希值;

判断所述实际哈希值与所述基准哈希值是否一致;

如果是,则将所述硬盘主引导记录载入内存。

在本发明的一种具体实施方式中,所述对硬盘主引导记录进行哈希运算,包括:

利用SM3算法对硬盘主引导记录进行哈希运算。

在本发明的一种具体实施方式中,所述读取预存的所述硬盘主引导记录对应的基准哈希值,包括:

从可信密码芯片中读取预存的所述硬盘主引导记录对应的基准哈希值。

一种硬盘主引导记录载入内存的装置,包括:

实际哈希值获得模块,用于在检测到系统正常时,对硬盘主引导记录进行哈希运算,获得所述硬盘主引导记录对应的实际哈希值;

基准哈希值读取模块,用于读取预存的所述硬盘主引导记录对应的基准哈希值;

载入模块,用于判断所述实际哈希值与所述基准哈希值是否一致,如果是,则将所述硬盘主引导记录载入内存。

在本发明的一种具体实施方式中,所述实际哈希值获得模块包括哈希运算子模块;

所述哈希运算子模块,具体为利用SM3算法对硬盘主引导记录进行哈希运算的子模块。

在本发明的一种具体实施方式中,所述基准哈希值读取模块具体为从可信密码芯片中读取预存的所述硬盘主引导记录对应的基准哈希值的模块。

一种硬盘主引导记录载入内存的设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如前所述硬盘主引导记录载入内存的方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述硬盘主引导记录载入内存的方法的步骤。

应用本发明实施例所提供的技术方案,在检测到系统正常时,对硬盘主引导记录进行哈希运算,获得硬盘主引导记录对应的实际哈希值,读取预存的硬盘主引导记录对应的基准哈希值,在判断实际哈希值与基准哈希值一致时,将硬盘主引导记录载入内存。通过在检测到系统正常时,先对硬盘主引导记录进行哈希运算,获得硬盘主引导记录对应的实际哈希值,将实际哈希值与预存的基准哈希值进行对比,当实际哈希值与基准哈希值一致时,说明硬盘主引导记录未经篡改,是安全可信的,再将硬盘主引导记录载入到内存中,从而保证了服务器的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中一种硬盘主引导记录载入内存的方法的实施流程图;

图2为本发明实施例中一种硬盘主引导记录载入内存的装置的结构示意图;

图3为本发明实施例中一种硬盘主引导记录载入内存的设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图1,为本发明实施例中一种硬盘主引导记录载入内存的方法的实施流程图,该方法可以包括以下步骤:

S101:在检测到系统正常工作时,对硬盘主引导记录进行哈希运算,获得硬盘主引导记录对应的实际哈希值。

服务器接通电源后,系统通过基本输入输出系统程序BIOS进行上电自检POST,检测系统的内存条、总线、接口、中央处理器CPU及寄存器等关键设备是否存在,且检测这些关键设备是否能够正常工作。在检测到这些关键设备正常时,即在检测到系统正常时,可以对硬盘主引导记录进行哈希运算,从而获得硬盘主引导记录对应的实际哈希值。在检测到这些关键设备中存在不能正常运行的设备时,基本输入输出系统程序将停止启动并退出系统。

在本发明的一种具体实施方式中,对硬盘主引导记录进行哈希运算,可以包括以下步骤:

利用SM3算法对硬盘主引导记录进行哈希运算。

对硬盘主引导记录进行哈希运算可以是利用SM3算法对硬盘主引导记录进行哈希运算。SM3算法的输出长度为256比特,输出长度较长,且属于不可逆算法,保密性好,安全性高。

S102:读取预存的硬盘主引导记录对应的基准哈希值。

可以预先存储硬盘主引导记录对应的基准哈希值,作为参照基准。在对硬盘主引导记录进行哈希运算,获得硬盘主引导记录对应的实际哈希值之后,可以读取预存的硬盘主引导记录对应的基准哈希值。

在本发明的一种具体实施方式中,步骤S102可以包括以下步骤:

从可信密码芯片中读取预存的硬盘主引导记录对应的基准哈希值。

硬盘主引导记录对应的基准哈希值可以预先存储在可信密码芯片TCM中的平台配置寄存器PCR中,进而从可信密码芯片中读取预存的硬盘主引导记录对应的基准哈希值,使得读取到的基准哈希值可信度更高一些。

S103:判断实际哈希值与基准哈希值是否一致,如果是则执行步骤S104。

在获得硬盘主引导记录对应的实际哈希值,且读取到硬盘主引导记录对应的基准哈希值后,判断实际哈希值与基准哈希值是否一致,如果是,则证明硬盘主引导记录是完整且未经篡改的,说明没有恶意代码或病毒植入硬盘主引导记录,该硬盘主引导记录可信,可以继续执行步骤S104,如果否,则证明硬盘主引导记录是不完整的或者是经过篡改的,该硬盘主引导记录不可信,基本输入输出系统程序将停止启动并退出系统。

S104:将硬盘主引导记录载入内存。

在确定硬盘主引导记录对应的实际哈希值与预存的基准哈希值一致时,说明硬盘主引导记录未被植入恶意代码或病毒,该硬盘主引导记录可信,可以将硬盘主引导记录载入到内存中。

相应于上面的方法实施例,本发明实施例还提供了一种硬盘主引导记录载入内存的装置,下文描述的一种硬盘主引导记录载入内存的装置与上文描述的一种硬盘主引导记录载入内存的方法可相互对应参照。

参见图2,为本发明实施例中一种硬盘主引导记录载入内存的装置的结构示意图,该装置可以包括以下模块:

实际哈希值获得模块201,用于在检测到系统正常时,对硬盘主引导记录进行哈希运算,获得硬盘主引导记录对应的实际哈希值;

基准哈希值读取模块202,用于读取预存的硬盘主引导记录对应的基准哈希值;

载入模块203,用于判断实际哈希值与基准哈希值是否一致,如果是,则将硬盘主引导记录载入内存。

在本发明的一种具体实施方式中,实际哈希值获得模块201包括哈希运算子模块;

哈希运算子模块,具体为利用SM3算法对硬盘主引导记录进行哈希运算的子模块。

在本发明的一种具体实施方式中,基准哈希值读取模块202具体为从可信密码芯片中读取预存的硬盘主引导记录对应的基准哈希值的模块。

相应于上面的方法实施例,本发明实施例还提供了一种硬盘主引导记录载入内存的设备,下文描述的一种硬盘主引导记录载入内存的设备与上文描述的一种硬盘主引导记录载入内存的方法可相互对应参照。

参见图3,该设备可以包括:

存储器301,用于存储计算机程序;

处理器302,用于执行计算机程序时实现方法实施例中硬盘主引导记录载入内存的方法的步骤。

相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种硬盘主引导记录载入内存的方法可相互对应参照。

一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器302执行时实现方法实施例中硬盘主引导记录载入内存的方法的步骤。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1