CN112699379A - 一种基于软件基因的固件漏洞扫描系统和方法 - Google Patents
一种基于软件基因的固件漏洞扫描系统和方法 Download PDFInfo
- Publication number
- CN112699379A CN112699379A CN202011644042.0A CN202011644042A CN112699379A CN 112699379 A CN112699379 A CN 112699379A CN 202011644042 A CN202011644042 A CN 202011644042A CN 112699379 A CN112699379 A CN 112699379A
- Authority
- CN
- China
- Prior art keywords
- firmware
- file
- software
- genes
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000004458 analytical method Methods 0.000 claims abstract description 28
- 238000012038 vulnerability analysis Methods 0.000 claims abstract description 10
- 238000000605 extraction Methods 0.000 claims abstract description 8
- 230000006835 compression Effects 0.000 claims description 5
- 238000007906 compression Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 abstract description 17
- 108090000623 proteins and genes Proteins 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于软件基因的固件漏洞扫描系统和方法,涉及固件检测的技术领域,包括:固件解析模块,软件基因分析模块和漏洞分析模块,其中,固件解析模块,用于对待扫描固件的固件文件进行解析和提取,得到待扫描固件的数据文件;软件基因分析模块,用于对数据文件进行软件基因提取,得到数据文件的软件基因;漏洞分析模块,将数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将目标软件基因对应的漏洞确定为待扫描固件的漏洞,其中,目标软件基因为预设软件基因中与数据文件的软件基因相似度最高的软件基因,解决了现有技术中对固件文件系统的漏洞检测准确度较低的技术问题。
Description
技术领域
本发明涉及固件检测的技术领域,尤其是涉及一种基于软件基因的固件漏洞扫描系统和方法。
背景技术
随着科学技术的发展,现阶段工控设备以及物联网设备在人们日常的工作活动中变得越来越普及,此趋势使得当前工控及物联网设备的安全成为人们关注的话题。固件(firmware),是一种嵌入在硬件设备中的软件。通常它是位于特殊应用集成电路(ASIC)或可编程逻辑器件(PLD)之中的闪存或EEPROM或PROM里,有的可以让用户更新。可以应用在非常广泛的电子产品中,从遥控器、计算器到电脑中的键盘、硬盘,甚至工业机器人中都可见到它的身影。顾名思义,固件的所在是位于软件和硬件之间的。像软件一样,他是一个被电脑所运行的程序。然而它是对于硬件内部而言更加贴近以及更加重要的部分,而对于外在的世界而言较无重要的意义。而固件漏洞是指基于硬件设备中的固件内文件包含了安全方面的缺陷,使得硬件内系统或其应用数据的保密性、完整性、可用性、访问控制等面临威胁。
现阶段已有部分方案尝试去解决工控设备及物联网设备可能存在的漏洞对用户产生的安全风险。如“一种固件漏洞的检测方法、装置、存储介质及电子设备”,其通过构建固件漏洞信息库、固件漏洞规则库,通过预设方式上传固件、解压固件、漏洞规则库匹配漏洞插件分析文件系统获取漏洞信息及最终展示等一系列步骤获取固件可能存在的漏洞信息,但是上述的方法对固件文件系统的漏洞检测准确度较低且适用性较差。
针对上述问题,还未提出有效的解决方案。
发明内容
有鉴于此,本发明的目的在于提供一种基于软件基因的固件漏洞扫描系统和方法,以缓解了现有技术中对固件文件系统的漏洞检测准确度较低的技术问题。
第一方面,本发明实施例提供了一种基于软件基因的固件漏洞扫描系统,包括:固件解析模块,软件基因分析模块和漏洞分析模块,其中,所述固件解析模块,用于对待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;所述软件基因分析模块,用于对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;所述漏洞分析模块,将所述数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
进一步地,所述待扫描固件的类型至少包括:压缩类固件和目标固件,其中,所述目标固件为文件系统中的文件的文件类型为data的固件。
进一步地,所述固件解析模块,用于在所述待扫描固件为压缩类固件的情况下,基于所述压缩类固件的版本,利用所述压缩类固件的版本对应的解析器对所述压缩类固件的固件文件系统进行解析和提取,得到第一数据文件,其中,所述压缩类固件的版本至少包括:zip,lzma,gzip和tar;所述固件解析模块,用于在所述待扫描固件的目标固件的情况下,利用预设工具对所述目标固件的文件系统中的数据段进行处理,得到第二数据文件。
进一步地,所述数据文件的类型至少包括:可执行二进制文件和脚本文件,其中,所述可执行二进制文件至少包括:PE文件和ELF文件,所述脚本文件至少包括:PHP文件、Python文件和JS文件。
进一步地,所述软件基因分析模块,用于在所述数据文件为可执行二进制文件的情况下,对所述可执行二进制文件进行软件基因提取,得到第一软件基因;所述软件基因分析模块,用于在所述数据文件为脚本文件的情况下,对所述脚本文件进行软件基因提取,得到第二软件基因。
进一步地,所述系统还包括:固件预处理模块,对所述待扫描固件的固件文件进行分析,确定出所述待扫描固件的固件文件的属性信息,并基于所述属性信息确定出所述待扫描固件的类型,其中,所述属性信息包括以下至少之一:固件文件的文件类型,固件文件的哈希值,固件文件的校验和。
进一步地,所述数据库包括:第一子数据库和第二子数据库,其中,所述第一子数据库,用于存储关系型数据,其中,所述关系型数据包括:第一目标数据和所述第一目标数据中各个数据之间的对应关系,所述第一目标数据包括:所述待扫描固件的漏洞,所述待扫描固件的漏洞对应的软件基因,所述属性信息和所述数据文件的软件基因;所述第二子数据库,用于存储非关系型数据,其中,所述非关系型数据包括:所述待扫描固件,所述待扫描固件的固件文件,所述预设软件基因和所述数据文件的软件基因。
进一步地,所述系统还包括:数据显示模块,用于对所述数据库中的数据进行显示。
第二方面,本发明实施例还提供了一种基于软件基因的固件漏洞扫描方法,包括:获取待扫描固件,并对所述待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;将所述数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
第三方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述第二方面中所述方法的步骤。
在本发明实施例中,通过固件解析模块对待扫描固件的固件文件进行解析和提取,得到待扫描固件的数据文件;软件基因分析模块对数据文件进行软件基因提取,得到数据文件的软件基因;漏洞分析模块将数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将目标软件基因对应的漏洞确定为待扫描固件的漏洞,其中,目标软件基因为预设软件基因中与数据文件的软件基因相似度最高的软件基因。本申请利用软件基因技术,通过提取固件文件系统内文件的软件基因,使用软件基因比对技术将固件文件系统内存在漏洞基因与数据库中存储的预设漏洞基因进行匹配,达到了对固件文件系统进行漏洞检测的目的,进而解决了现有技术中对固件文件系统的漏洞检测准确度较低的技术问题,从而实现了提高对固件文件系统进行漏洞检测的准确性的技术效果。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于软件基因的固件漏洞扫描系统的示意图;
图2为本发明实施例提供的第二种基于软件基因的固件漏洞扫描系统的示意图;
图3为本发明实施例提供的第三种基于软件基因的固件漏洞扫描系统的示意图;
图4为本发明实施例提供的一种基于软件基因的固件漏洞扫描方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
根据本发明实施例,提供了一种基于软件基因的固件漏洞扫描系统的实施例,图1是根据本发明实施例的一种基于软件基因的固件漏洞扫描系统的示意图,如图1所示,该系统包括:固件解析模块10,软件基因分析模块20和漏洞分析模块30。
所述固件解析模块10,用于对待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;
需要说明的是,待扫描固件的类型至少包括:压缩类固件和目标固件,目标固件为文件系统中的文件的文件类型为data的固件。
因此,固件解析模块针对不同类型的设备固件各自对应有不同版本的解析器。
对于纯压缩类型固件如基于zip、lzma、gzip、tar打包的固件,固件解析模块使用对应的解压算法即可进行固件内系统文件提取。
对应目标固件,固件解析模块使用binwalk等工具分析并切割固件的文件系统数据段,并使用与待扫描固件不同的文件系统所对应的构建工具重新对固件内文件系统数据段进行重建,从而得到待扫描固件的数据文件。
所述软件基因分析模块20,用于对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;
需要说明的是,上述的数据文件的类型至少包括:可执行二进制文件和脚本文件,其中,所述可执行二进制文件至少包括:PE文件和ELF文件,所述脚本文件至少包括:PHP文件、Python文件和JS文件。
在本发明实施例中,软件基因分析模块用于对待扫描固件的数据文件进行软件基因提取,可提取的数据文件的文件类型包含:可执行的二进制文件如PE文件、ELF文件等,以及基于解释器执行的脚本文件如PHP文件、Python文件、JS文件等。
需要说明的是,在提取软件基因时,需要遵从软件基因的特性:原子性、表意性、稳定性和进化性,同时还需要按照一致执行不可分割最小程序片段的原则对软件进行切割获取软件基因。
所述漏洞分析模块30,用于将所述数据文件的软件基因与数据库40中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
在本发明实施例中,漏洞分析模块使用基于Blast的基因比对算法,将数据文件的软件基因与数据库中的预设软件基因进行基因比对,确定出高相似度漏洞基因(即,目标软件基因),最终形成固件-数据文件-软件基因-目标软件基因-漏洞的关联关系。
需要说明的是,上述的预设软件基因可以为人为对CVE、CNVD、CNNVD等漏洞数据平台中涉及到的漏洞文件进行分析后,提取出的相关漏洞基因片段。
在本发明实施例中,通过固件解析模块对待扫描固件的固件文件进行解析和提取,得到待扫描固件的数据文件;软件基因分析模块对数据文件进行软件基因提取,得到数据文件的软件基因;漏洞分析模块将数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将目标软件基因对应的漏洞确定为待扫描固件的漏洞,其中,目标软件基因为预设软件基因中与数据文件的软件基因相似度最高的软件基因。本申请利用软件基因技术,通过提取固件文件系统内文件的软件基因,使用软件基因比对技术将固件文件系统内存在漏洞基因与数据库中存储的预设漏洞基因进行匹配,达到了对固件文件系统进行漏洞检测的目的,进而解决了现有技术中对固件文件系统的漏洞检测准确度较低的技术问题,从而实现了提高对固件文件系统进行漏洞检测的准确性的技术效果。
在本发明实施例中,如图2所示,所述系统还包括:
固件预处理模块50,对所述待扫描固件的固件文件进行分析,确定出所述待扫描固件的固件文件的属性信息,并基于所述属性信息确定出所述待扫描固件的类型,其中,所述属性信息包括以下至少之一:固件文件的文件类型,固件文件的哈希值,固件文件的校验和。
在本发明实施例中,固件预处理模块对待扫描固件进行属性数据分析,如:使用Magic文件类型识别库,确定固件文件的文件类型;使用md5、sha1、sha256、crc32等算法获取固件文件哈希值或校验和等信息。
在需要说明的是,在本发明实施例中,上述的数据库为本发明实施例提供了数据存储支撑以及数据关联查询。
所述数据库40包括:第一子数据库41和第二子数据库42。
所述第一子数据库,用于存储关系型数据,其中,所述关系型数据包括:第一目标数据和所述第一目标数据中各个数据之间的对应关系,所述第一目标数据包括:所述待扫描固件的漏洞,所述待扫描固件的漏洞对应的软件基因,所述属性信息和所述数据文件的软件基因;
所述第二子数据库,用于存储非关系型数据,其中,所述非关系型数据包括:所述待扫描固件,所述待扫描固件的固件文件,所述预设软件基因和所述数据文件的软件基因。
具体的,第一子数据库使用了MySQL关系型数据库,对待扫描固件的漏洞,待扫描固件的漏洞对应的软件基因,属性信息和数据文件的软件基因进行存储。
第二子数据库使用了MongoDB技术,存储了固件文件解析完成后得到的文件结构数据,以及使用了分布式存储数据库fastdfs,对待扫描固件,待扫描固件的固件文件,预设软件基因和数据文件的软件基因进行存储。
在本发明实施例中,如图3所示,所述系统还包括:
数据显示模块60,用于对所述数据库中的数据进行显示。
在本发明实施例中,当获取到用户发送的查询指令后,数据显示模块将从数据库中调用查询指令对应的数据,并对该数据进行显示,从而方便了用户对漏洞信息的查询。
现有技术中通过特征库匹配确定固件漏洞的方式,虽然特征库匹配的针对性较强,因此,对于已知漏洞对应文件的二进制片段或函数识别度较高,但是,对于二进制代码变动,二进制代码执行逻辑没有变动且带有漏洞的文件来说无法进行有效识别。本发明实施例采用基于软件基因技术检测固件漏洞的方式,能够对二进制代码变动但执行逻辑不变且带有漏洞的文件进行一定程度上的识别,提高固件漏洞检测的适用性和准确性。
实施例二:
本发明实施例还提供了一种基于软件基因的固件漏洞扫描方法,上述实施例一中所述的基于软件基因的固件漏洞扫描装置用于执行本发明实施例所提供的固件漏洞扫描方法,以下是本发明实施例提供的基于软件基因的固件漏洞扫描方法的具体介绍。
如图4所示,图4为上述基于软件基因的固件漏洞扫描方法的流程图,该固件漏洞扫描方法包括:
步骤S102,获取待扫描固件,并对所述待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;
步骤S104,对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;
步骤S106,将所述数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
在本发明实施例中,通过对待扫描固件的固件文件进行解析和提取,得到待扫描固件的数据文件;对数据文件进行软件基因提取,得到数据文件的软件基因;将数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将目标软件基因对应的漏洞确定为待扫描固件的漏洞,其中,目标软件基因为预设软件基因中与数据文件的软件基因相似度最高的软件基因。本申请利用软件基因技术,通过提取固件文件系统内文件的软件基因,使用软件基因比对技术将固件文件系统内存在漏洞基因与数据库中存储的预设漏洞基因进行匹配,达到了对固件文件系统进行漏洞检测的目的,进而解决了现有技术中对固件文件系统的漏洞检测准确度较低的技术问题,从而实现了提高对固件文件系统进行漏洞检测的准确性的技术效果。
实施例三:
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述实施例二中所述方法的步骤。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种基于软件基因的固件漏洞扫描系统,其特征在于,包括:固件解析模块,软件基因分析模块和漏洞分析模块,其中,
所述固件解析模块,用于对待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;
所述软件基因分析模块,用于对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;
所述漏洞分析模块,用于将所述数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
2.根据权利要求1所述的系统,其特征在于,
所述待扫描固件的类型至少包括:压缩类固件和目标固件,其中,所述目标固件为文件系统中的文件的文件类型为data的固件。
3.根据权利要求2所述的系统,其特征在于,
所述固件解析模块,用于在所述待扫描固件为压缩类固件的情况下,基于所述压缩类固件的版本,利用所述压缩类固件的版本对应的解析器对所述压缩类固件的固件文件系统进行解析和提取,得到第一数据文件,其中,所述压缩类固件的版本至少包括:zip,lzma,gzip和tar;
所述固件解析模块,用于在所述待扫描固件的目标固件的情况下,利用预设工具对所述目标固件的文件系统中的数据段进行处理,得到第二数据文件。
4.根据权利要求1所述的系统,其特征在于,
所述数据文件的类型至少包括:可执行二进制文件和脚本文件,其中,所述可执行二进制文件至少包括:PE文件和ELF文件,所述脚本文件至少包括:PHP文件、Python文件和JS文件。
5.根据权利要求4所述的系统,其特征在于,
所述软件基因分析模块,用于在所述数据文件为可执行二进制文件的情况下,对所述可执行二进制文件进行软件基因提取,得到第一软件基因;
所述软件基因分析模块,用于在所述数据文件为脚本文件的情况下,对所述脚本文件进行软件基因提取,得到第二软件基因。
6.根据权利要求2所述的系统,其特征在于,所述系统还包括:
固件预处理模块,对所述待扫描固件的固件文件进行分析,确定出所述待扫描固件的固件文件的属性信息,并基于所述属性信息确定出所述待扫描固件的类型,其中,所述属性信息包括以下至少之一:固件文件的文件类型,固件文件的哈希值,固件文件的校验和。
7.根据权利要求6所述的系统,其特征在于,所述数据库包括:第一子数据库和第二子数据库,其中,
所述第一子数据库,用于存储关系型数据,其中,所述关系型数据包括:第一目标数据和所述第一目标数据中各个数据之间的对应关系,所述第一目标数据包括:所述待扫描固件的漏洞,所述待扫描固件的漏洞对应的软件基因,所述属性信息和所述数据文件的软件基因;
所述第二子数据库,用于存储非关系型数据,其中,所述非关系型数据包括:所述待扫描固件,所述待扫描固件的固件文件,所述预设软件基因和所述数据文件的软件基因。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括:
数据显示模块,用于对所述数据库中的数据进行显示。
9.一种基于软件基因的固件漏洞扫描方法,其特征在于,包括:
获取待扫描固件,并对所述待扫描固件的固件文件进行解析和提取,得到所述待扫描固件的数据文件;
对所述数据文件进行软件基因提取,得到所述数据文件的软件基因;
将所述数据文件的软件基因与数据库中的预设软件基因进行对比,确定出目标软件基因,并将所述目标软件基因对应的漏洞确定为所述待扫描固件的漏洞,其中,所述目标软件基因为所述预设软件基因中与所述数据文件的软件基因相似度最高的软件基因。
10.一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特征在于,计算机程序被处理器运行时执行上述权利要求9所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011644042.0A CN112699379B (zh) | 2020-12-31 | 2020-12-31 | 一种基于软件基因的固件漏洞扫描系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011644042.0A CN112699379B (zh) | 2020-12-31 | 2020-12-31 | 一种基于软件基因的固件漏洞扫描系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112699379A true CN112699379A (zh) | 2021-04-23 |
CN112699379B CN112699379B (zh) | 2024-05-24 |
Family
ID=75514287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011644042.0A Active CN112699379B (zh) | 2020-12-31 | 2020-12-31 | 一种基于软件基因的固件漏洞扫描系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699379B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114064005A (zh) * | 2021-11-18 | 2022-02-18 | 上海戎磐网络科技有限公司 | 基于软件基因的编程语言类型识别方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080005796A1 (en) * | 2006-06-30 | 2008-01-03 | Ben Godwood | Method and system for classification of software using characteristics and combinations of such characteristics |
CN108345794A (zh) * | 2017-12-29 | 2018-07-31 | 北京物资学院 | 恶意软件的检测方法及装置 |
CN110704103A (zh) * | 2019-09-04 | 2020-01-17 | 中国人民解放军战略支援部队信息工程大学 | 基于软件基因的二进制文件语义相似性比较方法及装置 |
CN111324892A (zh) * | 2020-01-19 | 2020-06-23 | 上海戎磐网络科技有限公司 | 生成脚本文件的软件基因和脚本检测的方法、装置及介质 |
CN111611591A (zh) * | 2020-05-22 | 2020-09-01 | 中国电力科学研究院有限公司 | 一种固件漏洞的检测方法、装置、存储介质及电子设备 |
CN112800423A (zh) * | 2021-01-26 | 2021-05-14 | 北京航空航天大学 | 一种二进制代码授权漏洞检测方法 |
-
2020
- 2020-12-31 CN CN202011644042.0A patent/CN112699379B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080005796A1 (en) * | 2006-06-30 | 2008-01-03 | Ben Godwood | Method and system for classification of software using characteristics and combinations of such characteristics |
CN108345794A (zh) * | 2017-12-29 | 2018-07-31 | 北京物资学院 | 恶意软件的检测方法及装置 |
CN110704103A (zh) * | 2019-09-04 | 2020-01-17 | 中国人民解放军战略支援部队信息工程大学 | 基于软件基因的二进制文件语义相似性比较方法及装置 |
CN111324892A (zh) * | 2020-01-19 | 2020-06-23 | 上海戎磐网络科技有限公司 | 生成脚本文件的软件基因和脚本检测的方法、装置及介质 |
CN111611591A (zh) * | 2020-05-22 | 2020-09-01 | 中国电力科学研究院有限公司 | 一种固件漏洞的检测方法、装置、存储介质及电子设备 |
CN112800423A (zh) * | 2021-01-26 | 2021-05-14 | 北京航空航天大学 | 一种二进制代码授权漏洞检测方法 |
Non-Patent Citations (1)
Title |
---|
康荣保;张晓;杜艳霞;: "工业控制系统信息安全防护技术研究", 通信技术, no. 08, 10 August 2018 (2018-08-10) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114064005A (zh) * | 2021-11-18 | 2022-02-18 | 上海戎磐网络科技有限公司 | 基于软件基因的编程语言类型识别方法和装置 |
CN114064005B (zh) * | 2021-11-18 | 2023-05-12 | 上海戎磐网络科技有限公司 | 基于软件基因的编程语言类型识别方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112699379B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108388598B (zh) | 电子装置、数据存储方法及存储介质 | |
EP3968197A1 (en) | Method and system for detecting malicious files in a non-isolated environment | |
KR101582601B1 (ko) | 액티비티 문자열 분석에 의한 안드로이드 악성코드 검출 방법 | |
US11475133B2 (en) | Method for machine learning of malicious code detecting model and method for detecting malicious code using the same | |
CN106201757B (zh) | 一种异常处理方法和装置 | |
CN106909811B (zh) | 用户标识处理的方法和装置 | |
EP3333757B1 (en) | Predictive anomaly detection | |
CN112738094B (zh) | 可扩展的网络安全漏洞监测方法、系统、终端及存储介质 | |
CN109360605B (zh) | 基因组测序数据归档方法、服务器及计算机可读存储介质 | |
CN112699379B (zh) | 一种基于软件基因的固件漏洞扫描系统和方法 | |
US11550920B2 (en) | Determination apparatus, determination method, and determination program | |
CN112612756A (zh) | 异常文件的修复方法、装置、设备及存储介质 | |
CN111930610A (zh) | 软件同源性检测方法、装置、设备及存储介质 | |
CN110647753B (zh) | 内核文件的获取方法、装置、设备及存储介质 | |
CN111190791A (zh) | 应用异常上报方法、装置和电子设备 | |
CN113110965B (zh) | 异常信息的监控方法及装置、计算机存储介质、终端 | |
CN112560062A (zh) | 处方签名的防伪方法、装置、电子设备及存储介质 | |
CN112699371B (zh) | 一种动态行为特征与软件基因匹配系统和方法 | |
CN107844702B (zh) | 基于云防护环境下网站木马后门检测方法及装置 | |
CN110727576A (zh) | 一种web页面测试方法、装置、设备及存储介质 | |
CN114143074B (zh) | webshell攻击识别装置及方法 | |
CN115589339A (zh) | 网络攻击类型识别方法、装置、设备以及存储介质 | |
CN112990404B (zh) | 样本标识码图案的生成方法及装置、获取方法及电子设备 | |
CN113076236A (zh) | 一种页面加载监控方法和装置 | |
CN112395602B (zh) | 静态安全特征数据库的处理方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A firmware vulnerability scanning system and method based on software genes Granted publication date: 20240524 Pledgee: Industrial Bank Co.,Ltd. Shanghai Changning sub branch Pledgor: SHANGHAI ROARPANDA NETWORK TECHNOLOGY Co.,Ltd. Registration number: Y2024310000875 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |