CN100451987C - 对计算机bios固件进行安全风险检测的系统和方法 - Google Patents

对计算机bios固件进行安全风险检测的系统和方法 Download PDF

Info

Publication number
CN100451987C
CN100451987C CNB2006100810818A CN200610081081A CN100451987C CN 100451987 C CN100451987 C CN 100451987C CN B2006100810818 A CNB2006100810818 A CN B2006100810818A CN 200610081081 A CN200610081081 A CN 200610081081A CN 100451987 C CN100451987 C CN 100451987C
Authority
CN
China
Prior art keywords
bios
module
potential safety
computer
subsystem
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2006100810818A
Other languages
English (en)
Other versions
CN101079003A (zh
Inventor
周振柳
许榕生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING JINYUAN LONGMAI INFORMATION TECHNOLOGY Co Ltd
Original Assignee
BEIJING JINYUAN LONGMAI INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING JINYUAN LONGMAI INFORMATION TECHNOLOGY Co Ltd filed Critical BEIJING JINYUAN LONGMAI INFORMATION TECHNOLOGY Co Ltd
Priority to CNB2006100810818A priority Critical patent/CN100451987C/zh
Publication of CN101079003A publication Critical patent/CN101079003A/zh
Application granted granted Critical
Publication of CN100451987C publication Critical patent/CN100451987C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种对计算机BIOS固件进行安全风险检测的系统以及方法,所述方法包括:初始化后,进行BIOS采样;解析BIOS影像文件;扫描BIOS的各种隐患;度量BIOS代码的完整性;输出检测结果,据此对BIOS进行安全修补。本发明通过对计算机BIOS固件的安全风险检测,能够有效地减少、降低、消除计算机BIOS存在的安全漏洞和安全隐患,防止计算机BIOS中代码被恶意修改,或被植入木马程序,从硬件层和固件层共同增强计算机信息系统安全,防备针对计算机BIOS而发生的各种攻击等安全事故,为高安全计算环境和网络环境的信息安全、信息保密提供可靠的终端安全防范和全面的保护。

Description

对计算机BIOS固件进行安全风险检测的系统和方法
技术领域
本发明涉及计算机安全风险检测技术,特别是涉及一种计算机BIOS固件的安全风险检测的系统和方法。根据本发明的检测原理可以检测当前计算机BIOS存在的安全隐患,通过对BIOS代码进行完整性度量,得出检测结果,并据此对计算机BIOS进行安全修补,使其能够有效地防止针对计算机BIOS的网络攻击和信息泄密。
背景技术
计算机BIOS(Basic Input/Output System)是固化在计算机主板芯片里的软件系统,也称固件(firmware)。计算机开机上电后,首先执行BIOS指令,完成基础硬件和外围设备的检测及初始化,装载为系统运行时提供的服务,最后引导操作系统。
一般而言,传统信息安全威胁较多集中在软件系统上,而忽略了计算机BIOS固件的安全风险。随着BIOS功能增强和技术发展,固件BIOS的安全风险问题正日益突出。BIOS安全风险和威胁的出现是多种因素共同作用的结果。
早期BIOS功能简单,BIOS二进制代码体积小,烧录在32KB的PROM或EPROM芯片中。伴随BIOS功能扩展,容纳BIOS的芯片容量也不断增加,逐渐扩大到512KB,甚至是1024KB。
PNP、DMI、ESCD、SMBIOS等标准要求BIOS与操作系统交互,主机板BIOS要能够记录外围设备变化情况和资源配置变动情况,并与操作系统交换数据,而在系统运行中对BIOS的更新需求也日益增多。为适应这些变化,主机板BIOS芯片逐步被可用软件改写更新的FLASH芯片取代。而显卡、网卡等OPROM也都改用FLASH芯片存储。主机板上设计有FLASH芯片读写硬件线路,使用软件方法,把FLASH芯片的写电压拉升到某种特定电压,或输入指定的擦除信号,就可以实现对FLASH整颗芯片的存储内容擦除改写,或擦除改写部分块(block)和分区(sector)。
这些新技术的发展,使BIOS所面临的安全威胁逐步凸现出来。BIOS安全风险体现在两个方面,一是对BIOS芯片和存储内容的破坏,导致对计算机主机板硬件层和固件层攻击,如CIH病毒就是这种BIOS安全威胁的一个著名实例;BIOS安全风险的另一个方面,是利用BIOS自身设计隐患,或利用BIOS芯片的剩余空间嵌入非法程序,以实现对计算机系统的远程控制。
由于计算机BIOS是一种固件系统,是烧录在固体FLASH芯片中的软件系统。BIOS的安全风险检测同一般软件系统的漏洞扫描、查毒杀毒有着较大的区别。与传统的基于软件的信息安全风险相比较,BIOS安全风险存在于硬件芯片中,具有更隐蔽、不易检测、不易清除、不受操作系统和磁盘更新影响等特点。
发明内容
本发明针对BIOS固件系统的安全风险,提供一种新的能够对BIOS固件进行安全风险检测的系统和方法,通过对计算机BIOS的安全检测及安全修补,解决针对计算机BIOS的安全隐患扫描和代码完整性度量问题。提高计算机系统的安全性,减少或避免由于BIOS安全威胁而导致的计算机被攻击、信息泄密的危害。
本发明提出的能够对BIOS固件进行安全风险检测的系统,包括采样子系统、安全分析子系统、安全管理子系统和安全修补子系统;
所述采样子系统,用于完成对计算机主板上存储BIOS的FLASH芯片的本地采样或远程采样,读取FLASH芯片内容并存储成二进制影像文件;
所述安全分析子系统,通过所述安全管理子系统接收来自采样子系统的采样数据,对采样数据进行安全分析,生成分析结果报告给所述安全管理子系统;
所述安全管理子系统建立和管理安全检测任务,呈现分析结果报告,并报告给所述安全修补子系统;
所述安全修补子系统根据安全管理子系统报告的安全隐患,对BIOS影像文件实施安全修补,并将修补后的BIOS影像文件写回FLASH芯片中。
在上述的对计算机BIOS固件进行安全风险检测的系统中,为了对本地的计算机进行BIOS固件系统的安全风险检测,在本地进行采样,所述采样子系统包括:在操作系统环境下的采样模块和本地存储模块,由所述采样模块进行采样,并将采样数据存储到本地存储模块中。
上述的对计算机BIOS固件进行安全风险检测的系统,还包括一采用TCP/IP协议通信远程接收来自所述采样子系统的采样数据的安全存储子系统,用于集中式的远程检测。对于远程采样,所述采样子系统还包括:用于光盘启动的采样模块和远程存储模块,通过远程存储模块将采样模块采集的采样数据传输到安全存储子系统中的远程专用存储服务器上存储。
在所述的对计算机BIOS固件进行安全风险检测的系统中,所述安全管理子系统包括:任务管理模块、分析结果呈现模块和通信和存储模块;
所述任务管理模块用于建立安全检测任务,读取采样子系统采集的采样数据中的BIOS影像文件,交由安全分析子系统进行安全风险分析检测;
所述分析结果呈现模块显示对BIOS的安全检测结果,并结合采样记录和任务日志生成最终的安全检测报告,允许用户显示、打印或存储安全检测报告;
所述通信和存储模块用于所述安全管理子系统与其他子系统间的数据传输和存储。
在所述的对计算机BIOS固件进行安全风险检测的系统中,所述安全分析子系统中,包括:安全分析引擎、BIOS安全隐患库和/或BIOS标准代码样本库;
所述安全分析引擎,用于对采样数据中的BIOS影像文件进行解析,得到用来比较BIOS安全隐患的BIOS模块,确定BIOS安全隐患和/或度量BIOS模块代码的完整性;
所述BIOS安全隐患库,存储有各种BIOS安全隐患,用来提供给所述安全分析引擎进行BIOS模块的比较,以确定BIOS安全隐患;
所述BIOS标准代码样本库,存储有各种BIOS标准代码样本,用来提供给所述安全分析引擎进行BIOS模块代码的完整性的度量以判定BIOS代码是否被修改过。
在所述的对计算机BIOS固件进行安全风险检测的系统中,所述安全修补子系统,包括BIOS修补代码模块和BIOS安全修补工具;通过所述BIOS安全修补工具,将BIOS修补代码模块嵌入到BIOS影像文件中,以修补BIOS当前存在的配置漏洞;或/和利用所述BIOS安全修补工具从BIOS影像文件中删除BIOS木马模块或其他怀疑存在后门的模块。
本发明还提供了一种对计算机BIOS固件进行安全风险检测的方法,包括如下步骤:
步骤一、初始化后,进行BIOS采样;
步骤二、解析BIOS影像文件,生成多个BIOS模块;
步骤三、扫描BIOS的各种隐患和/或度量BIOS代码的完整性;
步骤四、输出检测结果,据此对BIOS进行安全修补。
上述方法的所述步骤四中,对BIOS进行安全修补之后,还包括将修改后的BIOS影像文件重新写入FLASH芯片中的步骤。
上述中,所述的步骤二解析BIOS影像文件,即通过读取BIOS影像文件,判定BIOS类型,根据BIOS类型,按照模块头部特征字和结构,从BIOS影像文件中解析并解压缩各个BIOS模块并存储成独立的二进制文件。
在上述方法中,所述步骤三的扫描BIOS的各种隐患,即根据BIOS安全隐患库中的每一个安全隐患记录,在生成的所有BIOS模块中查找与之相匹配的隐患特征码,确定BIOS是否存在安全隐患。
在上述方法中,所述步骤三的度量BIOS代码的完整性,即对生成的BIOS模块中的可执行代码模块,计算模块的MD5消息摘要,并与BIOS标准代码样本库中的对应模块的消息摘要进行比较,通过度量BIOS代码模块的完整性来度量BIOS代码的完整性。
在所述BIOS安全隐患库中,对所存储的每一个BIOS安全隐患,采用至少两元组描述,即:
V={n,k}
式中V代表一种安全隐患,n表示安全隐患名称,k表示安全隐患的一组或多组特征码。
另外,也可以采用更多元素来描述,如采用六元组描述,即:
V={t,n,k,m,p,d}
式中V代表一种安全隐患,t表示安全隐患类型,n表示安全隐患名称,k表示安全隐患的一组或多组特征码,m表示安全隐患涉及的一个或多个BIOS模块,p代表对该安全隐患修补方案的建议,d代表对该安全隐患的危害和利用情况描述。
所述BIOS标准代码样本库中的每一个标准代码模块,采用至少四元组描述,即:
S={bt,ct,mt,fn}
式中S代表一个标准代码模块,bt表示该标准代码模块S所属的BIOS类型,ct表示该标准代码模块S所属的计算机类型,mt表示该标准代码模块S的类别,fn代表存储该标准代码模块S的磁盘文件。
另外,也可以采用更多元素来描述,如采用五元组描述,即:
S={bt,ct,mt,fn,md}
式中S代表一个标准代码模块,bt表示该标准代码模块S所属的BIOS类型,ct表示该标准代码模块S所属的计算机类型,mt表示该标准代码模块S的类别,fn代表存储该标准代码模块S的磁盘文件,md表示该标准代码模块S内容的消息摘要。
在上述方法中,所述步骤四中的对BIOS进行安全修补,包括如下的有针对性的BIOS安全修补技术措施:
(1)BIOS功能障碍无需修补,只需提示用户功能障碍可能发生的情形及使用注意事项,避免由此引起的系统崩溃和数据丢失;
(2)针对BIOS配置漏洞,提供专用的BIOS安全补丁代码模块,用提供的工具将该BIOS安全补丁代码模块嵌入BIOS影像文件后,在BIOS自检过程后,自动执行该段由BIOS安全补丁代码模块提供的代码,从而设定安全合理的正确配置;
(3)针对BIOS的物理攻击威胁,提醒和建议用户及时采用相应的硬件保护措施;
(4)针对BIOS中被植入的木马模块,系统将从BIOS影像文件中删除该木马模块。
综上所述,本发明通过对计算机BIOS固件的安全风险检测,能够有效地减少、降低、消除计算机BIOS存在的安全漏洞和安全隐患,防止计算机BIOS中代码被恶意修改,或被植入木马程序,从硬件层和固件层两方面共同增强计算机信息系统安全,防备针对计算机BIOS而发生的计算机物理攻击、信息泄露、数据丢失、网络攻击等安全事故,为高安全计算环境和网络环境的信息安全、信息保密提供可靠的终端安全防范和全面的保护。
附图说明
图1是本发明所述计算机BIOS安全检测系统的整体结构框图;
图2是本发明所述系统的计算机BIOS安全检测方式示意图;
图3是本发明所述的计算机BIOS安全检测方法流程图;
图4是本发明所述的计算机BIOS采样过程;
图5是本发明所述的计算机BIOS安全风险分析原理示意图。
具体实施方式
下面首先介绍本发明所述安全检测系统的结构。
本发明所述系统采用模块化结构,采用模块化设计思想,检测时既方便用于单台计算机的安全检测,也可以建立BIOS安全检测中心,通过网络实施大规模的计算机BIOS安全风险检测。
图1是本发明所述系统的整体结构框图。本发明所述系统主要包括采样子系统1、安全分析子系统2、安全管理子系统3、安全修补子系统4。图1中还示出了安全存储子系统5,其属于可选的子系统。
所述采样子系统完成对计算机主板上存储BIOS的FLASH芯片的采样工作,读取FLASH芯片内容(如BIOS整体文件)并存储成二进制影像文件。所述采样子系统包括:在操作系统环境下的采样模块11和本地存储模块12,用于对本地的计算机进行BIOS固件系统的安全风险检测。对于本地检测,则将采样模块11对采样数据存储到本地存储模块12中,如本地计算机磁盘中。如果是集中式的远程检测,则需要安全存储子系统5,这时,所述采样子系统还包括:用于光盘启动的采样模块15和远程存储模块16,通过远程存储模块16和通信和存储模块51把采样模块15采集的采样数据传输到安全存储子系统5中的远程专用存储服务器52上存储;其中,传输方式可以为网络传输,采用TCP/IP协议通信。
所述安全分析子系统2中,包括:安全分析引擎21、BIOS安全隐患库22、BIOS标准代码样本库23;所述安全分析引擎21用于完成对BIOS影像文件的模块分解、对分解后的各个模块进行隐患扫描和代码的完整性度量,其中,BIOS安全隐患库22、BIOS标准代码样本库23分别存储各种BIOS安全隐患和BIOS标准代码样本,在本发明中,这两个数据库是动态的数据库,可以不断的加入新发现的安全隐患和BIOS标准代码样本。
利用安全分析引擎21对BIOS影像文件进行分解,可得到多个组成影像文件的BIOS模块,然后根据存储在BIOS安全隐患库中的特征码,在这些BIOS模块中进行特征码扫描和匹配,从而确定BIOS存在的安全隐患;对于包含可执行代码的BIOS模块,所述安全分析引擎生成该BIOS模块的MD5消息摘要,通过与所述BIOS标准代码样本库23中的相应模块的消息摘要进行比较,判定BIOS代码是否被修改过;最后生成技术性的安全检测报告供所述安全管理子系统使用。
所述安全管理子系统3包括:任务管理模块31、分析结果呈现模块32和通信和存储模块33;
所述任务管理模块31用于建立安全检测任务,读取本地磁盘或服务器上的BIOS影像文件,交由安全分析子系统2进行安全风险分析检测;
所述分析结果呈现模块32显示对BIOS的安全检测结果,并结合采样记录和任务日志生成最终的安全检测报告,允许用户显示、打印或存储安全检测报告。
安全检测报告可以通过所述通信和存储模块33存储在本地磁盘,或远程存储到专用存储服务器52上。
所述安全修补子系统4,包括BIOS修补代码模块41和BIOS安全修补工具42。利用BIOS安全修补工具42可以将BIOS修补代码模块41嵌入到BIOS影像文件中,以修补BIOS当前存在的配置漏洞;也可以利用该BIOS安全修补工具42从BIOS影像文件中删除BIOS木马模块或其他怀疑存在后门的模块;安全修补子系统4同时也提供将修补后的BIOS影像文件写回FLASH芯片的工具软件。BIOS的安全修补由BIOS安全专员人员根据检测结果实施,而不是由系统自动实施。
图2是本发明所述系统的计算机BIOS安全检测方式示意图,如上所述,本发明所述系统采用模块化设计,既适合于在单台计算机上完成BIOS安全风险检测(见图2中A所示),也适合于大规模的集中式的BIOS安全检测(见图2中B所示)。因此,图2给出了本地检测和远程联网检测的工作方式。
对于本地检测,将采样子系统、安全管理子系统、安全分析子系统、安全修补子系统安装在要被检测的同一台计算机上,就可以在该台计算机上本地完成所有检测并呈现报告。这种检测方式无需专用存储服务器和网络支持。
如果要进行大规模的远程联网进行计算机BIOS安全风险检测,可以通过建立BIOS安全检测中心来实现远程检测。所述BIOS安全检测中心设立BIOS安全存储子系统,配置专用存储服务器。配备一台或多台安全检测终端计算机。每台终端计算机上安装安全管理子系统和安全分析子系统。BIOS采样子系统可以下载到被检测计算机的本地执行,也可以通过WEB方式网络远程直接执行,但需要得到被检测计算机用户的确认许可。被检测计算机、专用存储服务器、安全检测终端计算机之间通过TCP/IP网络连接。
具体的检测原理将在下面逐步地展开介绍。
图3是本发明所述计算机BIOS安全检测的方法流程图。
首先,进行BIOS采样,可选择地进行本地采样或远程采样;
然后,解析BIOS文件,即通过读取BIOS影像文件,判定BIOS类型,根据BIOS类型,按照模块头部特征字和结构,从BIOS影像文件中解析并解压缩各个组成BIOS模块并存储成独立的二进制文件;
扫描BIOS存在的安全隐患,即根据安全隐患库中的每一个安全隐患记录,在生成的所有BIOS模块中查找匹配隐患特征码,确定BIOS是否存在安全隐患;
度量BIOS模块代码的完整性:对生成的可执行代码模块,计算模块的MD5消息摘要,并与标准代码样本库中的对应模块的消息摘要进行比较,度量BIOS模块代码的完整性;
根据上述结果,生成BIOS安全风险检测报告,为安全管理子系统生成最终的检测结果提供技术性分析的内容;
该安全风险检测报告可用于对被检测的计算机进行安全风险评估,安全修补则需要根据所发现的不同类型的隐患,向BIOS影像文件中加入相应的安全修补代码模块,或者从BIOS影像文件中删除有威胁的模块;
对BIOS影像文件进行修补处理后,即可将修补后的BIOS影像文件写回FLASH芯片中,但写入前需要征得被检测计算机用户的同意。
参见图4,在结合附图1、2、3的基础上,进一步具体地说明本发明系统和方法所采用的采样原理。
如图4所示,本发明所述系统提供在操作系统环境中运行的采样软件。采样软件通过对主板上存储BIOS芯片的读操作,实现BIOS采样。采样后的结果存储在本地磁盘,或通过TCP/IP协议通信将采样数据传输到安全存储子系统中的远程专用存储服务器。
特别是,本发明所述系统还可以提供BIOS采样光盘。使用该采样光盘,即使被采样计算机没有安装操作系统也能实现采样。采样光盘以光盘自身上的LINUX系统启动计算机,然后自动运行采样软件实现采样,并通过TCP/IP协议通信将采样数据传输到远程专用存储服务器。
本发明所述系统在采样过程中,要记录并保存被采样计算机的信息。信息项目包括但不限于:单位名称、科室名称、计算机型号、计算机使用人、计算机负责人、采样时间、采样地点、采样人。
图5为本发明BIOS安全风险分析原理示意图,本发明的重点在于对计算机BIOS安全风险的分析。从图5并结合图3可以看出,BIOS安全分析引擎可进行三个方面的分析。
(一)BIOS影像文件解析
BIOS影像文件是由多个BIOS功能代码模块或数据模块按照一定的结构组合形成的。每一个功能代码模块或数据模块都按照固定头部结构封装。头部结构中的信息包括:头部特征字、模块类型、模块压缩长度、模块实际长度、模块压缩算法。
本发明所述系统对BIOS影像文件的解析过程,就是在BIOS影像文件中顺序查找这些头部特征字,然后根据头部结构中的模块长度、压缩算法等信息,将模块内容读出并存储成独立的二进制文件。
除少数模块外,大部分BIOS模块都被压缩存储。要想对BIOS进行安全隐患扫描,必须把这些压缩存储的模块解压缩后才能进行隐患特征码的扫描匹配。BIOS模块压缩一般采用公用的压缩算法,主要是LZSS和LZINT算法。
(二)BIOS安全隐患扫描
BIOS安全隐患库中,存储着已发现的所有的BIOS安全隐患。本发明所述系统将所有的BIOS安全隐患归结为4种类型,即:(1)BIOS功能障碍隐患、(2)BIOS配置漏洞隐患、(3)BIOS物理攻击隐患、(4)BIOS木马隐患。
关于第(1)种类型,BIOS功能障碍是指由主板厂商集成BIOS功能模块时存在某些硬件或软件兼容性方面的缺陷,在某些使用情形下会造成系统启动失败、硬盘数据丢失等障碍。
关于第(2)种类型,BIOS配置漏洞隐患是指由于BIOS SETUP中的某些选项设置不合理而导致会被恶意者利用进行远程存取或远程控制。
关于第(3)种类型,BIOS物理攻击是指由于存储BIOS的FLASH芯片缺乏写保护而导致芯片内容被擦除、或导致主机板部件物理损坏。
关于第(4)种类型,BIOS木马是指由于存储BIOS的FLASH芯片中被植入木马而导致计算机被远程攻击者控制或信息泄露。
对于检测出来的BIOS的不同类型的安全隐患,需要采取相应的针对性的BIOS安全修补技术措施。
本发明所述系统中的BIOS安全隐患库中所存储的每一个BIOS安全隐患,采用六元组描述(可包括但不限于,最简单的是只包括隐患名称和特征码):
V={t,n,k,m,p,d}
式中V代表一种安全隐患,t表示安全隐患类型,n表示安全隐患名称,k表示安全隐患的一组或多组特征码,m表示安全隐患涉及的一个或多个BIOS模块,p代表对该安全隐患修补方案的建议,d代表对该安全隐患的危害和利用情况描述。
本发明对BIOS的安全隐患扫描,是通过比较安全隐患的特征码匹配实现的。
(三)度量BIOS模块代码的完整性
本发明所述系统中被检测BIOS模块及其对应标准代码模块的对应关系,是通过BIOS类型、计算机类型、模块类型3组数据共同决定的。通过事先收集整理不同BIOS类型和不同计算机类型的BIOS样本,对样本模块进行研究分类,建立BIOS标准代码样本库。
BIOS模块代码的完整性度量,就是要检测BIOS模块中的代码是否被修改而改变或增加了模块的功能。本发明所述系统中BIOS模块代码的完整性度量,通过比较被检测BIOS模块和对应标准代码模块的MD5消息摘要来实现的。如果被检测模块的MD5消息摘要与其对应的标准代码样本库中的模块生成的MD5消息摘要完全一致,则证明被检测模块未被修改。MD5消息摘要算法是公开的公知算法。
本发明所述系统中BIOS标准代码样本库中的每一个标准代码模块,采用五元组描述(其中,也可以不包含md,而由分析引擎在检测时根据模块文件临时计算):
S={bt,ct,mt,fn,md}
式中S代表一个标准代码模块,bt表示该模块所属的BIOS类型,ct表示该模块所属的计算机类型,mt表示该模块的类别,fn代表存储该模块的磁盘文件,md表示该模块内容的消息摘要。
安全分析子系统的分析过程完成后,生成BIOS安全风险检测报告,并输出检测结果。
总结上述过程,安全分析引擎的执行步骤为:
步骤一、读取BIOS影像文件,判定BIOS类型;
步骤二、根据BIOS类型,按照组成BIOS影像文件的各个BIOS模块头部特征字和结构,从BIOS影像文件中解析并解压缩各个BIOS模块并存储成独立的二进制文件;
步骤三、根据安全隐患库中的每一个安全隐患记录,在生成的所有BIOS模块中查找匹配隐患特征码,确定BIOS存在的安全隐患;
步骤四、对生成的可执行代码模块,计算模块的MD5消息摘要,并与标准代码样本库中的对应模块的消息摘要进行比较,度量BIOS模块代码的完整性;
步骤五、根据步骤三和步骤四的结果,生成BIOS安全风险检测报告。
上述的BIOS安全检测报告,包括两部分内容,即(1)任务记录信息部分,(2)技术检测结果部分。另外,实施者也可以对报告的具体内容进行适当的增减。
所述任务记录信息部分的内容包括:
BIOS样本记录信息:记载被检测计算机的BIOS采样信息,如包括以下信息项:单位名称、科室名称、计算机型号、计算机使用人、计算机负责人、采样时间、采样地点、采样人;
BIOS检测任务信息:记载该BIOS分析检测任务信息,如可以包括以下信息项:任务创建日期、任务创建时间、任务创建人。
所述技术检测结果部分的内容包括:
BIOS基本信息:记载被检测BIOS的基本信息,如包括以下信息项:BIOS厂商、BIOS文件长度、BIOS序列号、BIOS发布时间、BIOS版本号、BIOS版权信息;
BIOS结构信息:记载被检测BIOS的模块解析结果,列出所有解析出的模块信息。每个模块包括以下信息项:模块类型代码、模块类型名称、模块存储文件、模块实际长度、模块压缩长度、模块压缩比率、模块功能描述;
BIOS安全隐患:记载被检测BIOS存在的安全隐患。每个被报告的安全隐患包括但不限于以下信息项:安全隐患名称、安全隐患类型、隐患对应模块、建议解决方案、安全隐患描述;
BIOS完整性:对被检测BIOS的每一个可执行模块,报告其完整性度量结果。
根据所检测的结果,对BIOS进行安全修补:
本发明所述系统针对四种不同的BIOS安全隐患类型,提供有针对性的不同的BIOS安全修补技术措施:
(1)BIOS功能障碍无需修补,只需提示用户功能障碍可能发生的情形及使用注意事项,避免由此引起的系统崩溃和数据丢失;
(2)针对BIOS配置漏洞,本发明所述系统提供专用的BIOS安全补丁代码模块,用系统提供的工具将该BIOS安全补丁代码模块嵌入BIOS影像文件后,在BIOS自检过程后,自动执行该段代码,从而设定安全合理的正确配置;
(3)针对BIOS的物理攻击威胁,提醒和建议用户及时采用相应的硬件保护措施;
(4)针对BIOS中被植入的木马模块,系统将从BIOS影像文件中删除该模块。
当然,如果BIOS中检测出的其它未知功能或类型的模块,则由专业人员进行进一步分析,并将分析结果数据充实到BIOS安全隐患库或标准代码样本库中。
虽然本发明已经根据所示的实施例做了上述描述,但本领域的普通技术人员会很容易理解实施例的变化和本发明的精神和范围内的变化。因此,本领域的普通技术人员可以在不背离本发明的精神和范围下进行许多变型。

Claims (17)

1、一种对计算机BIOS固件进行安全风险检测的系统,其特征在于,包括采样子系统、安全分析子系统、安全管理子系统和安全修补子系统;
所述采样子系统,用于完成对计算机主板上存储BIOS的FLASH芯片的本地采样或远程采样,读取FLASH芯片内容并存储成二进制影像文件;
所述安全分析子系统,通过所述安全管理子系统接收来自采样子系统的采样数据,对采样数据进行安全分析,生成分析结果报告给所述安全管理子系统;
所述安全管理子系统建立和管理安全检测任务,呈现分析结果报告,并报告给所述安全修补子系统;
所述安全修补子系统根据安全管理子系统报告的安全隐患,对BIOS影像文件实施安全修补,并将修补后的BIOS影像文件写回FLASH芯片中。
2、根据权利要求1所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,为了对本地的计算机进行BIOS固件系统的安全风险检测,在本地进行采样,所述采样子系统包括:在操作系统环境下的采样模块和本地存储模块,由所述采样模块进行采样,并将采样数据存储到本地存储模块中。
3、根据权利要求1所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,还包括一采用TCP/IP协议通信远程接收来自所述采样子系统的采样数据的安全存储子系统,用于集中式的远程检测。
4、根据权利要求3所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,对于远程采样,所述采样子系统还包括:用于光盘启动的采样模块和远程存储模块,通过远程存储模块将采样模块采集的采样数据传输到安全存储子系统中的远程专用存储服务器上存储。
5、根据权利要求1所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,所述安全管理子系统包括:任务管理模块、分析结果呈现模块和通信和存储模块;
所述任务管理模块用于建立安全检测任务,读取采样子系统采集的采样数据中的BIOS影像文件,交由安全分析子系统进行安全风险分析检测;
所述分析结果呈现模块显示对BIOS的安全检测结果,并结合采样记录和任务日志生成最终的安全检测报告,允许用户显示、打印或存储安全检测报告;
所述通信和存储模块用于所述安全管理子系统与其他子系统间的数据传输和存储。
6、根据权利要求1所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,所述安全分析子系统中,包括:安全分析引擎、BIOS安全隐患库和/或BIOS标准代码样本库;
所述安全分析引擎,用于对采样数据中的BIOS影像文件进行解析,得到用来比较BIOS安全隐患的BIOS模块,确定BIOS安全隐患和/或度量BIOS模块代码的完整性;
所述BIOS安全隐患库,存储有各种BIOS安全隐患,用来提供给所述安全分析引擎进行BIOS模块的比较,以确定BIOS安全隐患;
所述BIOS标准代码样本库,存储有各种BIOS标准代码样本,用来提供给所述安全分析引擎进行BIOS模块代码的完整性的度量,以判定BIOS代码是否被修改过。
7、根据权利要求1所述的对计算机BIOS固件进行安全风险检测的系统,其特征在于,所述安全修补子系统,包括BIOS修补代码模块和BIOS安全修补工具;通过所述BIOS安全修补工具,将BIOS修补代码模块嵌入到BIOS影像文件中,以修补BIOS当前存在的配置漏洞;或/和利用所述BIOS安全修补工具从BIOS影像文件中删除BIOS木马模块或其他怀疑存在后门的模块。
8、一种对计算机BIOS固件进行安全风险检测的方法,其特征在于,包括如下步骤:
步骤一、初始化后,进行BIOS采样;
步骤二、解析BIOS影像文件,生成多个BIOS模块;
步骤三、扫描BIOS的各种隐患和/或度量BIOS代码的完整性;
步骤四、输出检测结果,据此对BIOS进行安全修补。
9、根据权利要求8所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,在所述步骤四中,对BIOS进行安全修补之后,还包括将修改后的BIOS影像文件重新写入FLASH芯片中的步骤。
10、根据权利要求8所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述步骤二的解析BIOS影像文件,即通过读取BIOS影像文件,判定BIOS类型,根据BIOS类型,按照模块头部特征字和结构,从BIOS影像文件中解析并解压缩各个BIOS模块并存储成独立的二进制文件。
11、根据权利要求8所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述步骤三的扫描BIOS的各种隐患,即根据BIOS安全隐患库中的每一个安全隐患记录,在生成的所有BIOS模块中查找与之相匹配的隐患特征码,确定BIOS是否存在安全隐患。
12、根据权利要求8所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述步骤三的度量BIOS代码的完整性,即对生成的BIOS模块中的可执行代码模块,计算模块的MD5消息摘要,并与BIOS标准代码样本库中的对应模块的消息摘要进行比较,通过度量BIOS代码模块的完整性来度量BIOS代码的完整性。
13、根据权利要求11所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述BIOS安全隐患库中,对所存储的每一个BIOS安全隐患,采用至少两元组描述,即:
V={n,k}
式中V代表一种安全隐患,n表示安全隐患名称,k表示安全隐患的一组或多组特征码。
14、根据权利要求11所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述BIOS安全隐患库中,对所存储的每一个BIOS安全隐患,采用六元组描述,即:
V={t,n,k,m,p,d}
式中V代表一种安全隐患,t表示安全隐患类型,n表示安全隐患名称,k表示安全隐患的一组或多组特征码,m表示安全隐患涉及的一个或多个BIOS模块,p代表对该安全隐患修补方案的建议,d代表对该安全隐患的危害和利用情况描述。
15、根据权利要求12所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述BIOS标准代码样本库中的每一个标准代码模块,采用至少四元组描述,即:
S={bt,ct,mt,fn}
式中S代表一个标准代码模块,bt表示该标准代码模块S所属的BIOS类型,ct表示该标准代码模块S所属的计算机类型,mt表示该标准代码模块S的类别,fn代表存储该标准代码模块S的磁盘文件。
16、据权利要求12所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述BIOS标准代码样本库中的每一个标准代码模块,采用五元组描述,即:
S={bt,ct,mt,fn,md}
式中S代表一个标准代码模块,bt表示该标准代码模块S所属的BIOS类型,ct表示该标准代码模块S所属的计算机类型,mt表示该标准代码模块S的类别,fn代表存储该标准代码模块S的磁盘文件,md表示该标准代码模块S内容的消息摘要。
17、根据权利要求8所述的对计算机BIOS固件进行安全风险检测的方法,其特征在于,所述步骤四中的对BIOS进行安全修补,包括如下的有针对性的BIOS安全修补技术措施:
(1)BIOS功能障碍无需修补,只需提示用户功能障碍可能发生的情形及使用注意事项,避免由此引起的系统崩溃和数据丢失;
(2)针对BIOS配置漏洞,提供专用的BIOS安全补丁代码模块,用提供的工具将该BIOS安全补丁代码模块嵌入BIOS影像文件后,在BIOS自检过程后,自动执行该段由BIOS安全补丁代码模块提供的代码,从而设定安全合理的正确配置;
(3)针对BIOS的物理攻击威胁,提醒和建议用户及时采用相应的硬件保护措施;
(4)针对BIOS中被植入的木马模块,系统将从BIOS影像文件中删除该木马模块。
CNB2006100810818A 2006-05-23 2006-05-23 对计算机bios固件进行安全风险检测的系统和方法 Expired - Fee Related CN100451987C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100810818A CN100451987C (zh) 2006-05-23 2006-05-23 对计算机bios固件进行安全风险检测的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100810818A CN100451987C (zh) 2006-05-23 2006-05-23 对计算机bios固件进行安全风险检测的系统和方法

Publications (2)

Publication Number Publication Date
CN101079003A CN101079003A (zh) 2007-11-28
CN100451987C true CN100451987C (zh) 2009-01-14

Family

ID=38906488

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100810818A Expired - Fee Related CN100451987C (zh) 2006-05-23 2006-05-23 对计算机bios固件进行安全风险检测的系统和方法

Country Status (1)

Country Link
CN (1) CN100451987C (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101551773B (zh) * 2009-03-12 2012-04-25 南京大学 符号错误和赋值截断的二进制漏洞检测定位装置
CN101976319B (zh) * 2010-11-22 2012-07-04 张平 基于行为特征的BIOS固件Rootkit检测方法
EP2761472B1 (en) 2011-09-30 2020-04-01 Intel Corporation Memory channel that supports near memory and far memory access
EP2761476B1 (en) 2011-09-30 2017-10-25 Intel Corporation Apparatus, method and system that stores bios in non-volatile random access memory
CN103632086B (zh) * 2013-11-15 2017-04-05 北京奇虎科技有限公司 修复基本输入输出系统bios恶意程序的方法和装置
US10387651B2 (en) 2014-09-23 2019-08-20 Hewlett-Packard Development Company, L.P. Detecting a change to system management mode bios code
CN104899524B (zh) * 2015-05-25 2018-11-27 上海兆芯集成电路有限公司 中央处理器和验证主机板数据的方法
CN105162620B (zh) * 2015-08-04 2018-11-27 南京百敖软件有限公司 一种实现异架构下系统监控的方法
US9747041B2 (en) 2015-12-23 2017-08-29 Intel Corporation Apparatus and method for a non-power-of-2 size cache in a first level memory device to cache data present in a second level memory device
US10303878B2 (en) * 2016-01-22 2019-05-28 Yu-Liang Wu Methods and apparatus for automatic detection and elimination of functional hardware trojans in IC designs
CN105740710A (zh) * 2016-02-01 2016-07-06 浪潮电子信息产业股份有限公司 一种基于bmc实现bios动态度量的方法
US10007606B2 (en) 2016-03-30 2018-06-26 Intel Corporation Implementation of reserved cache slots in computing system having inclusive/non inclusive tracking and two level system memory
US10185619B2 (en) 2016-03-31 2019-01-22 Intel Corporation Handling of error prone cache line slots of memory side cache of multi-level system memory
CN105893833B (zh) * 2016-03-31 2019-07-05 山东超越数控电子有限公司 一种用于固件安全管理的硬件接口
US10120806B2 (en) 2016-06-27 2018-11-06 Intel Corporation Multi-level system memory with near memory scrubbing based on predicted far memory idle time
US10915453B2 (en) 2016-12-29 2021-02-09 Intel Corporation Multi level system memory having different caching structures and memory controller that supports concurrent look-up into the different caching structures
US10445261B2 (en) 2016-12-30 2019-10-15 Intel Corporation System memory having point-to-point link that transports compressed traffic
US11256589B2 (en) 2017-01-27 2022-02-22 Hewlett-Packard Development Company, L.P. Detecting a change to system management mode bios code
US10304814B2 (en) 2017-06-30 2019-05-28 Intel Corporation I/O layout footprint for multiple 1LM/2LM configurations
US11188467B2 (en) 2017-09-28 2021-11-30 Intel Corporation Multi-level system memory with near memory capable of storing compressed cache lines
CN107944279A (zh) * 2017-12-19 2018-04-20 郑州云海信息技术有限公司 基于uefi的bios漏洞扫描装置及扫描方法
US10860244B2 (en) 2017-12-26 2020-12-08 Intel Corporation Method and apparatus for multi-level memory early page demotion
CN110164501B (zh) * 2018-06-29 2022-05-20 腾讯科技(深圳)有限公司 一种硬盘检测方法、装置、存储介质及设备
CN108959099A (zh) * 2018-07-20 2018-12-07 北京神州绿盟信息安全科技股份有限公司 一种获取固件的方法及装置
US11055228B2 (en) 2019-01-31 2021-07-06 Intel Corporation Caching bypass mechanism for a multi-level memory
CN109992971B (zh) * 2019-04-03 2023-05-02 昆仑太科(北京)技术股份有限公司 局域网内计算机批量固件安全检测方法及系统
CN109992973B (zh) * 2019-04-10 2021-04-20 北京可信华泰信息技术有限公司 一种利用oprom机制的启动度量方法及装置
CN111030981B (zh) * 2019-08-13 2023-04-28 北京安天网络安全技术有限公司 一种阻断恶意文件持续攻击的方法、系统及存储设备
CN113360914A (zh) * 2021-05-14 2021-09-07 山东英信计算机技术有限公司 一种bios更新的方法、系统、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214183A (ja) * 1997-01-30 1998-08-11 Nec Corp コンピュータbiosアップデートシステム
CN1371052A (zh) * 2001-02-20 2002-09-25 技嘉科技股份有限公司 在一计算机系统中的bios存储装置的自动安全回复方法
US20020144191A1 (en) * 2001-03-30 2002-10-03 Johnson Lin Method and device for identifying failed devices in computer
CN2563637Y (zh) * 2002-01-10 2003-07-30 创惟科技股份有限公司 计算机主机开机操作系统装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214183A (ja) * 1997-01-30 1998-08-11 Nec Corp コンピュータbiosアップデートシステム
CN1371052A (zh) * 2001-02-20 2002-09-25 技嘉科技股份有限公司 在一计算机系统中的bios存储装置的自动安全回复方法
US20020144191A1 (en) * 2001-03-30 2002-10-03 Johnson Lin Method and device for identifying failed devices in computer
CN2563637Y (zh) * 2002-01-10 2003-07-30 创惟科技股份有限公司 计算机主机开机操作系统装置

Also Published As

Publication number Publication date
CN101079003A (zh) 2007-11-28

Similar Documents

Publication Publication Date Title
CN100451987C (zh) 对计算机bios固件进行安全风险检测的系统和方法
US9910743B2 (en) Method, system and device for validating repair files and repairing corrupt software
US7788730B2 (en) Secure bytecode instrumentation facility
US10216936B2 (en) Method of preventing computer malfunction, computer program, and computer
US7853804B2 (en) System and method for secure data disposal
Han et al. A bad dream: Subverting trusted platform module while you are sleeping
US7751584B2 (en) Method to provide transparent information in binary drivers via steganographic techniques
CN106575337A (zh) 漏洞发现装置、漏洞发现方法以及漏洞发现程序
US6681329B1 (en) Integrity checking of a relocated executable module loaded within memory
CN104484625B (zh) 一种具有双操作系统的计算机及其实现方法
US20200334045A1 (en) Systems And Methods For Separate Storage And Use Of System BIOS Components
US9659171B2 (en) Systems and methods for detecting tampering of an information handling system
CN104769598A (zh) 用于检测非法应用程序的系统和方法
CN105022678A (zh) 虚拟机数据备份的方法和装置
CN101785239B (zh) 基于密钥的隐藏分区系统
US8214825B2 (en) Electronic device and method for installing software
Jeong et al. Forensic signature for tracking storage devices: Analysis of UEFI firmware image, disk signature and windows artifacts
White et al. Integrity verification of user space code
CN105247533A (zh) 信息处理装置和确定方法
de Assumpção et al. Forensic method for decrypting TPM-protected BitLocker volumes using Intel DCI
CN108090352A (zh) 检测系统及检测方法
Park et al. New flash memory acquisition methods based on firmware update protocols for LG Android smartphones
Huber et al. A flexible framework for mobile device forensics based on cold boot attacks
Taubmann et al. A lightweight framework for cold boot based forensics on mobile devices
CN110795735A (zh) 一种面向异构BIOS环境的Rootkit通用性检测方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090114

Termination date: 20160523

CF01 Termination of patent right due to non-payment of annual fee