CN108595960A - 一种基于第三方软件存在漏洞的检测方法及系统 - Google Patents
一种基于第三方软件存在漏洞的检测方法及系统 Download PDFInfo
- Publication number
- CN108595960A CN108595960A CN201810322572.XA CN201810322572A CN108595960A CN 108595960 A CN108595960 A CN 108595960A CN 201810322572 A CN201810322572 A CN 201810322572A CN 108595960 A CN108595960 A CN 108595960A
- Authority
- CN
- China
- Prior art keywords
- instruction
- sequence
- preset instructions
- software
- inconsistent
- 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.)
- Pending
Links
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
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种基于第三方软件存在漏洞的检测方法及系统,为了实现检测第三方软件存在漏洞的目的,第三方软件中涉及了多条指令序列,每条指令序列中涉及多个代码来实现第三方软件的相应功能。其中,第三方软件中指令序列,或指令序列中的代码,或第三方软件中整体指令序列的排布等可能存在漏洞,这样导致在运行中,容易被利用,造成使用问题。这样先对第三方软件的软件特征组进行解析,将软件特征组与预设软件特征组进行匹配;将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;将比对结果形成软件特征信息表。使用户通过软件特征信息表可以获取到漏洞情况。
Description
技术领域
本发明涉及软件安全监测领域,尤其涉及一种基于第三方软件存在漏洞的检测方法及系统。
背景技术
随着软件规模越来越庞大,很多应用软件开发以及应用软件使用时,会使用到一些成熟的第三方软件(如数据库、Web中间件、ActiveX插件漏洞,涉及迅雷、暴风影音、百度超级搜霸、realplayer等)来缩短开发周期,或提高利用率,还可以提升软件质量以及用户体验。
但是,第三方软件中所包含的一些漏洞也会被引入到正在开发的软件,或者正在使用的系统中,从而对待开发软件以及运行的系统造成安全威胁。
如何快速确认当前使用的第三方软件是否含有已知漏洞变成为了比较紧迫的问题,而当前现有技术中有使用第三方软件漏洞完善的方式,比如获得第三方软件的最新版本信息,并获得当前操作系统中已经安装的第三方软件的信息;比较第三方软件的最新版本信息或最新补丁信息与当前操作系统中安装的第三方软件的信息,找到当前操作系统中已经安装的第三方软件中需要更新的第三方软件;下载并安装需要更新的第三方软件的最新版本或最新补丁。本发明可以自动检测并修补系统中的第三方软件的漏洞。
这是基于针对第三方软件已有的漏洞进行有针对性的在网络中获取最新版本信息,并进行更新。如果在开发和使用阶段中,如何能够获取到第三方软件的漏洞,并知晓漏洞的存在,漏洞的位置,漏洞的功能属性未做公开,如果不能知晓第三方软件的漏洞,并知晓漏洞的存在,漏洞的位置,漏洞的功能属性,导致对待开发软件以及运行的系统造成安全威胁。
发明内容
为了克服上述现有技术中的不足,本发明提供一种基于第三方软件存在漏洞的检测方法,检测方法包括:
解析第三方软件的软件特征组;
将软件特征组与预设软件特征组进行匹配;
将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;
将比对结果形成软件特征信息表。
优选地,方法还包括:
解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;
解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;
解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
将第一指令序列与第一预设指令序列进行匹配;
判断第一指令序列是否与第一预设指令序列一致;
将第二指令序列与第二预设指令序列进行匹配;
判断第二指令序列是否与第二预设指令序列一致;
将第N指令序列与第N预设指令序列进行匹配;
判断第N指令序列是否与第N预设指令序列一致。
优选地,方法还包括:
当第一指令序列与第一预设指令序列不一致时,将第一指令序列输入至软件特征信息表标识不一致;
当第二指令序列与第二预设指令序列不一致时,将第二指令序列输入至软件特征信息表标识不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列输入至软件特征信息表标识不一致。
优选地,方法还包括:
将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;
判断第一指令代码关键词与第一预设指令代码关键词是否一致;
将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;
判断第二指令代码关键词与第二预设指令代码关键词是否一致;
将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;
判断第N指令代码关键词与第N预设指令代码关键词是否一致。
优选地,方法还包括:
当第一指令代码关键词与第一预设指令代码关键词不一致时,将第一指令代码关键词输入至软件特征信息表标识不一致;
当第二指令代码关键词与第二预设指令代码关键词不一致时,将第二指令代码关键词输入至软件特征信息表标识不一致;
当第N指令代码关键词与第N预设指令代码关键词不一致时,将第N指令代码关键词输入至软件特征信息表标识不一致。
优选地,方法还包括:
当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
优选地,方法还包括:
调取软件特征组的所有指令序列,对软件特征组的指令序列进行编码;
获取指令序列调取编码,根据指令序列调取编码,调取软件特征组的指令序列;
将调取的指令序列与预设指令序列进行匹配,将调取的指令序列与预设指令序列进行比对,判断调取的指令序列是否与预设指令序列一致;
输出比对结果。
一种基于第三方软件存在漏洞的检测系统,包括:软件特征解析模块,软件特征匹配模块,软件特征比对判定模块以及输出模块;
所述软件特征解析模块用于解析第三方软件的软件特征组;
所述软件特征匹配模块用于将软件特征组与预设软件特征组进行匹配;
所述软件特征比对判定模块用于将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;
所述输出模块用于将所述软件特征比对判定模块的比对结果形成软件特征信息表。
优选地,所述软件特征解析模块还用于解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
所述软件特征匹配模块还用于将第一指令序列与第一预设指令序列进行匹配;将第二指令序列与第二预设指令序列进行匹配;将第N指令序列与第N预设指令序列进行匹配;
所述软件特征比对判定模块还用于判断第一指令序列是否与第一预设指令序列一致;判断第二指令序列是否与第二预设指令序列一致;判断第N指令序列是否与第N预设指令序列一致;当第一指令序列与第一预设指令序列不一致时,对第一指令序列进行标识;当第二指令序列与第二预设指令序列不一致时,对第二指令序列进行标识;当第N指令序列与第N预设指令序列不一致时,对第N指令序列进行标识。
优选地,所述软件特征比对判定模块还用于将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;判断第一指令代码关键词与第一预设指令代码关键词是否一致;
将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;判断第二指令代码关键词与第二预设指令代码关键词是否一致;
将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;判断第N指令代码关键词与第N预设指令代码关键词是否一致;
当第一指令代码关键词与第一预设指令代码关键词不一致时,对第一指令代码关键词进行标识;当第二指令代码关键词与第二预设指令代码关键词不一致时,对第二指令代码关键词进行标识;当第N指令代码关键词与第N预设指令代码关键词不一致时,对第N指令代码关键词进行标识;
所述软件特征比对判定模块还用于当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
从以上技术方案可以看出,本发明具有以下优点:
本发明为了实现检测第三方软件存在漏洞的目的,第三方软件中涉及了多条指令序列,每条指令序列中涉及多个代码来实现第三方软件的相应功能。其中,第三方软件中指令序列,或指令序列中的代码,或第三方软件中整体指令序列的排布等可能存在漏洞,这样导致在运行中,容易被利用,造成使用问题。这样先对第三方软件的软件特征组进行解析,将软件特征组与预设软件特征组进行匹配;将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;将比对结果形成软件特征信息表。使用户通过软件特征信息表可以获取到漏洞情况。
进一步的,本发明提供的方法及系统能够获取到第三方软件是否存在漏洞,并知晓漏洞的存在,漏洞的位置,能够知晓第三方软件的漏洞,并能够对第三方软件的漏洞进行列表时展出,减少对待开发软件以及运行的系统造成安全威胁。
附图说明
为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为基于第三方软件存在漏洞的检测方法整体流程图;
图2为基于第三方软件存在漏洞的检测方法实施例流程图;
图3为基于第三方软件存在漏洞的检测方法实施例流程图;
图4为基于第三方软件存在漏洞的检测方法实施例流程图;
图5为基于第三方软件存在漏洞的检测系统示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将运用具体的实施例及附图,对本发明保护的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本专利中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利保护的范围。
本发明提供一种基于第三方软件存在漏洞的检测方法,如图1所示,方法包括:
S1,解析第三方软件的软件特征组;
S2,将软件特征组与预设软件特征组进行匹配;
S3,将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;
S4,将比对结果形成软件特征信息表。
可以理解的是,为了实现检测第三方软件存在漏洞的目的,第三方软件中涉及了多条指令序列,每条指令序列中涉及多个代码来实现第三方软件的相应功能。其中,第三方软件中指令序列,或指令序列中的代码,或第三方软件中整体指令序列的排布等可能存在漏洞,这样导致在运行中,容易被利用,造成使用问题。这样先对第三方软件的软件特征组进行解析,将软件特征组与预设软件特征组进行匹配;将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;将比对结果形成软件特征信息表。使用户通过软件特征信息表可以获取到漏洞情况。
针对第三方软件存在漏洞的检测方法的具体实施方式下面以具体的实施例进行说明。
实施例一如图2所示,基于第三方软件存在漏洞的检测方法还包括:
S11,解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;
S12,解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;
S13,解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
可以理解的是,第三方软件中,具有多条指令序列,为了能够逐条分析,本实施例逐一提取指令序列,并对每条指令序列进解析提取。
S14,将第一指令序列与第一预设指令序列进行匹配;
第一预设指令序列可以通过使用爬虫工具在互联网上的漏洞管理平台中爬取对应第三方软件的漏洞,将CVE号、链接地址、漏洞概述、影响版本等信息,构成预设指令序列。还可以通过获取当前更新的第三方软件,或者基于指令序列的用途进行设置预设指令序列。具体设置预设指令序列的方式不做限定。
S15,判断第一指令序列是否与第一预设指令序列一致;
对第一指令序列与第一预设指令序列进行匹配,也就是按照次序先对第一指令序列进行比对。比对后判断第一指令序列是否与第一预设指令序列一致;这样就能获取到第一指令序列是否具有漏洞。
S16,将第二指令序列与第二预设指令序列进行匹配;
S17,判断第二指令序列是否与第二预设指令序列一致;
同样道理对第二指令序列的操作方式如第一指令序列。
S18,将第N指令序列与第N预设指令序列进行匹配;
S19,判断第N指令序列是否与第N预设指令序列一致。
当然在第三方软件中,涉及多条指令序列逐条分析,并进行匹配和比对得出是否具有漏洞。将比对结果形成软件特征信息表。使用户通过软件特征信息表可以获取到漏洞情况。
如果出现下列情况时,当第一指令序列与第一预设指令序列不一致时,将第一指令序列输入至软件特征信息表标识不一致;
当第二指令序列与第二预设指令序列不一致时,将第二指令序列输入至软件特征信息表标识不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列输入至软件特征信息表标识不一致。使用户通过软件特征信息表可以获取到漏洞情况。
如果第N指令序列与第N预设指令序列一致时,可以不做出动作,也可以输入至一致的至软件特征信息表中。
进一步的,本实施例中,如图3所示,
S21,将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;
之前对每条指令序列进行了匹配,并判断是否存在漏洞。这里对每条指令序列的代码关键词进行判断,判断是否存在漏洞。
预设的代码关键词可以为在先进行预设的代码关键词,基于第三方软件的用途,对每条指令序列进行代码关键词的预设,并通过使用爬虫工具在互联网上的漏洞管理平台中爬取对应第三方软件的漏洞,将CVE号、链接地址、漏洞概述、影响版本等信息,构成预设代码关键词。还可以通过获取当前更新的第三方软件,或者基于指令序列的用途进行设置预设代码关键词。具体设置预设代码关键词的方式不做限定。
S22,判断第一指令代码关键词与第一预设指令代码关键词是否一致;
S23,将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;
S24,判断第二指令代码关键词与第二预设指令代码关键词是否一致;
S25,将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;
S26,判断第N指令代码关键词与第N预设指令代码关键词是否一致。
依次类推,如果第三方软件中涉及了五条指令序列,那就逐一判断这五条指令序列的指令代码关键词与预设指令代码关键词是否一致。据此能够判断基于第三方软件中是否存在漏洞,获取存在漏洞的位置。
如果出现下述状况时,当第一指令代码关键词与第一预设指令代码关键词不一致时,将第一指令代码关键词输入至软件特征信息表标识不一致;当第二指令代码关键词与第二预设指令代码关键词不一致时,将第二指令代码关键词输入至软件特征信息表标识不一致;当第N指令代码关键词与第N预设指令代码关键词不一致时,将第N指令代码关键词输入至软件特征信息表标识不一致。
当然基于指令代码关键词的提取可以知晓代码关键词的作用,代码关键词的功能属性,也就是该代码关键词所要实现的功能,该代码关键词实现的功能是否容易被其他程序利用,而引起漏洞。这样知道代码关键词是否存在漏洞后,就可以知晓代码关键词所要实现的功能是否存在漏洞。
在本发明中还有一种实施例是:当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
这里可以看出,如果第三方软件的漏洞是基于指令序列的次序变化时,这样在判断时会导致每条指令序列和指令代码关键词均不符。如果按照之前的方式判断导致整个第三方软件都存在漏洞。
这样为了避免这种情况,当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;以此类推,一致对比判断至第N指令序列。这样实现了每条指令序列之间的对比判断。
在本发明中还包括一种实施例是:为了减少对第三方软件漏洞判断的过程,可以采取与上述不同的检验方法。如果用户打算获悉某一条指令序列是否存在漏洞时,则可以直接调出这条指令序列进行对比判断,输出结果。
本方法包括:如图4所示,
S31,调取软件特征组的所有指令序列,对软件特征组的指令序列进行编码;
S32,获取指令序列调取编码,根据指令序列调取编码,调取软件特征组的指令序列;
S33,将调取的指令序列与预设指令序列进行匹配,将调取的指令序列与预设指令序列进行比对,判断调取的指令序列是否与预设指令序列一致;
S34,输出比对结果。
这样实现对单一指令序列的检验,当然也可以提取多个指令序列进行判断,这样不需要对整个第三方软件的指令序列均进行匹配判断。
本发明还提供一种基于第三方软件存在漏洞的检测系统,如图5所示,包括:软件特征解析模块1,软件特征匹配模块2,软件特征比对判定模块3以及输出模块4;软件特征解析模块1用于解析第三方软件的软件特征组;软件特征匹配模块2用于将软件特征组与预设软件特征组进行匹配;软件特征比对判定模块3用于将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;输出模块4用于将所述软件特征比对判定模块的比对结果形成软件特征信息表。
本发明提供的实施例中,软件特征解析模块还用于解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
软件特征匹配模块还用于将第一指令序列与第一预设指令序列进行匹配;将第二指令序列与第二预设指令序列进行匹配;将第N指令序列与第N预设指令序列进行匹配;
软件特征比对判定模块还用于判断第一指令序列是否与第一预设指令序列一致;判断第二指令序列是否与第二预设指令序列一致;判断第N指令序列是否与第N预设指令序列一致;当第一指令序列与第一预设指令序列不一致时,对第一指令序列进行标识;当第二指令序列与第二预设指令序列不一致时,对第二指令序列进行标识;当第N指令序列与第N预设指令序列不一致时,对第N指令序列进行标识。
本发明提供的实施例中,软件特征比对判定模块还用于将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;判断第一指令代码关键词与第一预设指令代码关键词是否一致;
将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;判断第二指令代码关键词与第二预设指令代码关键词是否一致;
将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;判断第N指令代码关键词与第N预设指令代码关键词是否一致;
当第一指令代码关键词与第一预设指令代码关键词不一致时,对第一指令代码关键词进行标识;当第二指令代码关键词与第二预设指令代码关键词不一致时,对第二指令代码关键词进行标识;当第N指令代码关键词与第N预设指令代码关键词不一致时,对第N指令代码关键词进行标识;
所述软件特征比对判定模块还用于当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参考即可。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于第三方软件存在漏洞的检测方法,其特征在于,检测方法包括:
解析第三方软件的软件特征组;
将软件特征组与预设软件特征组进行匹配;
将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;
将比对结果形成软件特征信息表。
2.根据权利要求1所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;
解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;
解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
将第一指令序列与第一预设指令序列进行匹配;
判断第一指令序列是否与第一预设指令序列一致;
将第二指令序列与第二预设指令序列进行匹配;
判断第二指令序列是否与第二预设指令序列一致;
将第N指令序列与第N预设指令序列进行匹配;
判断第N指令序列是否与第N预设指令序列一致。
3.根据权利要求2所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
当第一指令序列与第一预设指令序列不一致时,将第一指令序列输入至软件特征信息表标识不一致;
当第二指令序列与第二预设指令序列不一致时,将第二指令序列输入至软件特征信息表标识不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列输入至软件特征信息表标识不一致。
4.根据权利要求2所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;
判断第一指令代码关键词与第一预设指令代码关键词是否一致;
将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;
判断第二指令代码关键词与第二预设指令代码关键词是否一致;
将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;
判断第N指令代码关键词与第N预设指令代码关键词是否一致。
5.根据权利要求2所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
当第一指令代码关键词与第一预设指令代码关键词不一致时,将第一指令代码关键词输入至软件特征信息表标识不一致;
当第二指令代码关键词与第二预设指令代码关键词不一致时,将第二指令代码关键词输入至软件特征信息表标识不一致;
当第N指令代码关键词与第N预设指令代码关键词不一致时,将第N指令代码关键词输入至软件特征信息表标识不一致。
6.根据权利要求2所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
7.根据权利要求2所述的基于第三方软件存在漏洞的检测方法,其特征在于,方法还包括:
调取软件特征组的所有指令序列,对软件特征组的指令序列进行编码;
获取指令序列调取编码,根据指令序列调取编码,调取软件特征组的指令序列;
将调取的指令序列与预设指令序列进行匹配,将调取的指令序列与预设指令序列进行比对,判断调取的指令序列是否与预设指令序列一致;
输出比对结果。
8.一种基于第三方软件存在漏洞的检测系统,其特征在于,包括:软件特征解析模块,软件特征匹配模块,软件特征比对判定模块以及输出模块;
所述软件特征解析模块用于解析第三方软件的软件特征组;
所述软件特征匹配模块用于将软件特征组与预设软件特征组进行匹配;
所述软件特征比对判定模块用于将匹配后的软件特征组与预设软件特征组进行比对,判断软件特征组与预设软件特征组是否一致;
所述输出模块用于将所述软件特征比对判定模块的比对结果形成软件特征信息表。
9.根据权利要求8所述的基于第三方软件存在漏洞的检测系统,其特征在于,
所述软件特征解析模块还用于解析软件特征组中第一指令序列以及第一指令序列所对应的指令代码关键词;解析软件特征组中第二指令序列以及第二指令序列所对应的指令代码关键词;解析软件特征组中第N指令序列以及第N指令序列所对应的指令代码关键词;
所述软件特征匹配模块还用于将第一指令序列与第一预设指令序列进行匹配;将第二指令序列与第二预设指令序列进行匹配;将第N指令序列与第N预设指令序列进行匹配;
所述软件特征比对判定模块还用于判断第一指令序列是否与第一预设指令序列一致;判断第二指令序列是否与第二预设指令序列一致;判断第N指令序列是否与第N预设指令序列一致;当第一指令序列与第一预设指令序列不一致时,对第一指令序列进行标识;当第二指令序列与第二预设指令序列不一致时,对第二指令序列进行标识;当第N指令序列与第N预设指令序列不一致时,对第N指令序列进行标识。
10.根据权利要求8所述的基于第三方软件存在漏洞的检测系统,其特征在于,
所述软件特征比对判定模块还用于将第一指令序列所对应的指令代码关键词与第一预设指令代码关键词进行比对;判断第一指令代码关键词与第一预设指令代码关键词是否一致;
将第二指令序列所对应的指令代码关键词与第二预设指令代码关键词进行比对;判断第二指令代码关键词与第二预设指令代码关键词是否一致;
将第N指令序列所对应的指令代码关键词与第N预设指令代码关键词进行比对;判断第N指令代码关键词与第N预设指令代码关键词是否一致;
当第一指令代码关键词与第一预设指令代码关键词不一致时,对第一指令代码关键词进行标识;当第二指令代码关键词与第二预设指令代码关键词不一致时,对第二指令代码关键词进行标识;当第N指令代码关键词与第N预设指令代码关键词不一致时,对第N指令代码关键词进行标识;
所述软件特征比对判定模块还用于当第一指令序列与第一预设指令序列不一致时,将第一指令序列与第二预设指令序列进行比对,判断是否一致;如果第一指令序列与第二预设指令序列不一致时,将第一指令序列依次与后续的预设指令序列进行比对判断是否一致;当第一预设指令序列与后续的预设指令序列比对均不一致时,标识第一预设指令序列不一致;
当第N指令序列与第N预设指令序列不一致时,将第N指令序列与第一预设指令序列进行比对,判断是否一致;如果第N指令序列与第一预设指令序列不一致时,将第N指令序列依次与第一预设指令序列的后续预设指令序列进行比对判断是否一致;当第N预设指令序列与第一预设指令序列的后续预设指令序列比对均不一致时,标识第N预设指令序列不一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810322572.XA CN108595960A (zh) | 2018-04-11 | 2018-04-11 | 一种基于第三方软件存在漏洞的检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810322572.XA CN108595960A (zh) | 2018-04-11 | 2018-04-11 | 一种基于第三方软件存在漏洞的检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108595960A true CN108595960A (zh) | 2018-09-28 |
Family
ID=63622012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810322572.XA Pending CN108595960A (zh) | 2018-04-11 | 2018-04-11 | 一种基于第三方软件存在漏洞的检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108595960A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110276171A (zh) * | 2019-06-10 | 2019-09-24 | 深圳开源互联网安全技术有限公司 | 第三方库文件安全评估方法、系统、装置及存储介质 |
TWI691158B (zh) * | 2019-04-24 | 2020-04-11 | 奇源科技有限公司 | 交流充電及供電電路 |
CN113094711A (zh) * | 2021-04-30 | 2021-07-09 | 云南电网有限责任公司 | 基于阶段性项目开发的开源代码检测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933368A (zh) * | 2014-03-21 | 2015-09-23 | 腾讯科技(深圳)有限公司 | 一种网络安全漏洞的检测方法及装置 |
CN106778279A (zh) * | 2015-11-25 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 漏洞挖掘方法及装置 |
CN107566350A (zh) * | 2017-08-15 | 2018-01-09 | 深信服科技股份有限公司 | 安全配置漏洞监控方法、装置以及计算机可读存储介质 |
CN107844705A (zh) * | 2017-11-14 | 2018-03-27 | 苏州棱镜七彩信息科技有限公司 | 基于二进制代码特征的第三方组件漏洞检测方法 |
-
2018
- 2018-04-11 CN CN201810322572.XA patent/CN108595960A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933368A (zh) * | 2014-03-21 | 2015-09-23 | 腾讯科技(深圳)有限公司 | 一种网络安全漏洞的检测方法及装置 |
CN106778279A (zh) * | 2015-11-25 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 漏洞挖掘方法及装置 |
CN107566350A (zh) * | 2017-08-15 | 2018-01-09 | 深信服科技股份有限公司 | 安全配置漏洞监控方法、装置以及计算机可读存储介质 |
CN107844705A (zh) * | 2017-11-14 | 2018-03-27 | 苏州棱镜七彩信息科技有限公司 | 基于二进制代码特征的第三方组件漏洞检测方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI691158B (zh) * | 2019-04-24 | 2020-04-11 | 奇源科技有限公司 | 交流充電及供電電路 |
CN110276171A (zh) * | 2019-06-10 | 2019-09-24 | 深圳开源互联网安全技术有限公司 | 第三方库文件安全评估方法、系统、装置及存储介质 |
CN113094711A (zh) * | 2021-04-30 | 2021-07-09 | 云南电网有限责任公司 | 基于阶段性项目开发的开源代码检测方法及系统 |
CN113094711B (zh) * | 2021-04-30 | 2023-05-16 | 云南电网有限责任公司 | 基于阶段性项目开发的开源代码检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106131071B (zh) | 一种Web异常检测方法和装置 | |
CN106961419B (zh) | WebShell检测方法、装置及系统 | |
Yu et al. | Deescvhunter: A deep learning-based framework for smart contract vulnerability detection | |
CN112468520B (zh) | 一种数据检测方法、装置、设备及可读存储介质 | |
CN107341399B (zh) | 评估代码文件安全性的方法及装置 | |
CN105787366A (zh) | 基于组件关系的安卓软件可视化安全分析方法 | |
CN108595960A (zh) | 一种基于第三方软件存在漏洞的检测方法及系统 | |
WO2011032094A1 (en) | Extracting information from unstructured data and mapping the information to a structured schema using the naive bayesian probability model | |
CN114077741B (zh) | 软件供应链安全检测方法和装置、电子设备及存储介质 | |
US11568277B2 (en) | Method and apparatus for detecting anomalies in mission critical environments using word representation learning | |
CN109698831B (zh) | 数据防护方法和装置 | |
CN105610819B (zh) | 提供服务器信息的查询服务的方法和装置 | |
CN106453438A (zh) | 一种网络攻击的识别方法及装置 | |
US9838418B1 (en) | Detecting malware in mixed content files | |
CN109241484A (zh) | 一种基于加密技术的网页数据的发送方法及设备 | |
CN111049819A (zh) | 一种基于威胁建模的威胁情报发现方法及计算机设备 | |
CN105357179A (zh) | 网络攻击的处理方法及装置 | |
CN106161479A (zh) | 一种支持特征跨包的编码攻击检测方法和装置 | |
CN113221032A (zh) | 链接风险检测方法、装置以及存储介质 | |
CN110113315A (zh) | 一种业务数据的处理方法及设备 | |
CN104318162A (zh) | 源代码泄露检测方法及装置 | |
CN106485152A (zh) | 漏洞检测方法及装置 | |
CN104123496B (zh) | 一种流氓软件的拦截方法及装置、终端 | |
CN109657462B (zh) | 数据检测方法、系统、电子设备和存储介质 | |
CN112817877B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180928 |