一种固件程序检测方法和装置制造方法及图纸

技术编号:22565406 阅读:23 留言:0更新日期:2019-11-16 12:09
本申请属于计算机技术领域,公开了一种固件程序检测方法和装置,本申请公开的一种固件程序检测方法包括,获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息;确定读取速率变化信息与基准读取速率变化信息之间的偏离度,基准读取速率变化信息是根据读取正样本固件程序的固件镜像文件确定的;当偏离度达到设定条件时,确定待检测固件程序异常,这样,仅通过读取速率变化信息检测固件程序,降低了固件程序检测的难度,提高了固件程序检测的检出率。

A testing method and device of firmware program

The application belongs to the field of computer technology, and discloses a firmware program detection method and device. The firmware program detection method of the application includes obtaining the read rate change information in the process of reading the firmware image file of the firmware program to be detected; determining the deviation degree between the read rate change information and the reference read rate change information, and the reference read rate change The information is determined by reading the firmware image file of the positive sample firmware program. When the deviation degree reaches the set condition, the firmware program to be detected is determined to be abnormal. In this way, only the firmware program is detected by reading the rate change information, which reduces the difficulty of firmware program detection and improves the detection rate of firmware program detection.

【技术实现步骤摘要】
一种固件程序检测方法和装置
本申请涉及计算机
,尤其涉及一种固件程序检测方法和装置。
技术介绍
固件程序用于为设备提供最底层的、最直接的硬件设置和控制,是设备的核心部分。若固件程序中存在恶意程序,将会极大的威胁设备的安全。因此,为保证设备的安全,通常需要对固件程序进行检测。以基本输入输出系统(BasicInputOutputSystem,BIOS)为例,BIOS是计算机主板芯片上的一个固件程序,通常为计算机启动后运行的第一个程序,是计算机运转的起点,具备访问所有设备、修改所有配置的最高权限。现有技术下,通常通过BIOS固件程序中的恶意程序样本特征,对BIOS固件程序进行特征匹配,获得检测结果。但是,采用这种方式,需要在断电情况下通过外部硬件读取BIOS固件程序的固件镜像文件,检测成本高,检测步骤繁琐,以及仅能检测出已知的BIOS固件异常问题,检出率较低。因此,如何提高固件程序检测的检出率,降低固件程序的检测难度,是亟待解决的问题。
技术实现思路
本申请实施例提供一种固件程序检测方法和装置,用以在对固件程序进行检测时,降低固件程序的检测难度,以及提高固件程序检测的检出率。一方面,提供一种固件程序检测方法,包括:获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息;确定读取速率变化信息与基准读取速率变化信息之间的偏离度,基准读取速率变化信息是根据读取正样本固件程序的固件镜像文件确定的;当偏离度达到设定条件时,确定待检测固件程序异常。一方面,提供一种固件程序检测装置,包括:获得单元,用于获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息;第一确定单元,用于确定读取速率变化信息与基准读取速率变化信息之间的偏离度,基准读取速率变化信息是根据读取正样本固件程序的固件镜像文件确定的;第二确定单元,用于当偏离度达到设定条件时,确定待检测固件程序异常。较佳的,获得单元用于:按照指定的文件读取次数,读取固件镜像文件,并将读取的固件镜像文件并写入指定内存空间;获取固件镜像文件在各次文件读取过程中的监控数据;对监控数据进行线性回归处理,获得读取速率变化信息。较佳的,获得单元用于:每一次读取固件镜像文件时,采用以下方式中的任意一种:按照该固件镜像文件的存储地址的地址顺序依次读取该固件镜像文件的相应内容;或者,按照在该固件镜像文件对应的各存储地址中随机选择的序列地址读取固件镜像文件的相应内容。较佳的,获得单元还用于:获取监控数据中还包含的各文件散列值,文件散列值为每一次读取固件镜像文件时确定的固件镜像文件的哈希值;当各文件散列值不一致时,调整文件读取次数;按照调整后的文件读取次数,执行按照指定的文件读取次数读取固件镜像文件的步骤。较佳的,监控数据中包含读取时间和相应的读取速率;读取时间包括本地读取时间和远程读取时间;本地读取时间是根据本地授时确定的时间;远程读取时间是根据远程服务器授时确定的时间;读取速率变化信息为用于表示读取时间和读取速率之间的映射关系的速率变化曲线,基准读取速率变化信息为用于表示读取时间和基准读取速率之间的映射关系的基准速率变化曲线。较佳的,获得单元还用于:对监控数据中包含的本地读取时间和相应的读取速率,进行线性回归处理,获得第一速率变化曲线;对监控数据中包含的远程读取时间和相应的读取速率,进行线性回归处理,获得第二速率变化曲线;当第一速率变化曲线和第二速率变化曲线不一致时,获得时钟检测结果。较佳的,获得单元还用于:将申请的指定空间大小的内存空间,确定为指定内存空间;将固件镜像文件读取进程与无任务负载的中央处理器CPU绑定;将固件镜像文件读取进程的CPU调度优先级设置为最高优先级。较佳的,各正样本固件程序的固件镜像文件对应的正样本设备以及待检测的控制设备的闪存硬件信息相同。较佳的,第二确定单元用于:当控制设备的硬件存在变更时,对控制设备进行区域隔离复测,若复测获得的监控数据符合预设变更条件,则判定待检测固件程序正常,并根据获得的监控数据对基准读取速率变化信息进行更新;当控制设备的硬件不存在变更时,则通过物理方式导出固件镜像文件,并根据导出的固件镜像文件,再次判断待检测固件程序是否异常。一方面,提供一种控制设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时执行上述任一种固件程序检测方法的步骤。一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一种固件程序检测方法的步骤。本申请实施例提供的一种固件程序检测方法和装置中,通过读取待检测固件程序的固件镜像文件过程中的读取速率变化信息与基准读取速率变化信息之间的偏离度,判断待检测固件程序是否异常。这样,仅需要在软件层面进行固件程序检测,不需要关闭计算机,简化了检测的繁琐步骤,减低了检测成本,极大地扩展了固件程序检测的可行性,在不干扰控制设备承载业务的同时,极大的提升了的固件程序的安全性,保证了控制设备系统的底层安全性。本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施方式中一种固件程序检测的流程示意图;图2为本申请实施方式中一种固件程序检测方法的实施流程图;图3为本申请实施方式中一种速率变化曲线示意图;图4为本申请实施方式中一种耗时变化曲线示意图;图5为本申请实施方式中一种地址示意图;图6为本申请实施方式中一种固件程序检测装置的结构示意图;图7为本申请实施方式中一种控制设备的结构示意图。具体实施方式为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。首先,对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。控制设备:可以安装各类应用,并且能够将已安装的应用中提供的对象进行显示的设备,该电子设备可以是移动的,也可以是固定的。本申请实施例中,控制设备主要为计算机、网络设备以及自动取款机等。固件程序为用于为设备提供最底层的、最直接的硬件设置和控制的程序,是设备的核心部分。固件后门:固件程序中的恶意程序,用以入侵固件程序。BIOS是计算机主板芯片上的一个固件程序,通常为本文档来自技高网...

【技术保护点】
1.一种固件程序检测方法,其特征在于,包括:/n获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息;/n确定所述读取速率变化信息与基准读取速率变化信息之间的偏离度,所述基准读取速率变化信息是根据读取正样本固件程序的固件镜像文件确定的;/n当所述偏离度达到设定条件时,确定所述待检测固件程序异常。/n

【技术特征摘要】
1.一种固件程序检测方法,其特征在于,包括:
获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息;
确定所述读取速率变化信息与基准读取速率变化信息之间的偏离度,所述基准读取速率变化信息是根据读取正样本固件程序的固件镜像文件确定的;
当所述偏离度达到设定条件时,确定所述待检测固件程序异常。


2.如权利要求1所述的方法,其特征在于,获得读取待检测固件程序的固件镜像文件过程中的读取速率变化信息,包括:
按照指定的文件读取次数,读取所述固件镜像文件,并将读取的固件镜像文件并写入指定内存空间;
获取所述固件镜像文件在各次文件读取过程中的监控数据;
对所述监控数据进行线性回归处理,获得读取速率变化信息。


3.如权利要求2所述的方法,其特征在于,读取所述固件镜像文件,包括:
每一次读取所述固件镜像文件时,采用以下方式中的任意一种:
按照该固件镜像文件的存储地址的地址顺序依次读取该固件镜像文件的相应内容;或者,
按照在该固件镜像文件对应的各存储地址中随机选择的序列地址读取所述固件镜像文件的相应内容。


4.如权利要求2所述的方法,其特征在于,进一步包括:
获取所述监控数据中还包含的各文件散列值,所述文件散列值为每一次读取所述固件镜像文件时确定的所述固件镜像文件的哈希值;
当各文件散列值不一致时,调整所述文件读取次数;
按照调整后的文件读取次数,执行所述按照指定的文件读取次数读取所述固件镜像文件的步骤。


5.如权利要求2所述的方法,其特征在于,所述监控数据中包含读取时间和相应的读取速率;
所述读取时间包括本地读取时间和远程读取时间;
所述本地读取时间是根据本地授时确定的时间;
所述远程读取时间是根据远程服务器授时确定的时间;
所述读取速率变化信息为用于表示读取时间和读取速率之间的映射关系的速率变化曲线,所述基准读取速率变化信息为用于表示读取时间和基准读...

【专利技术属性】
技术研发人员:杨韬
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利