CN111444507B - 加壳软件是否误报的判定方法、装置、设备及存储介质 - Google Patents
加壳软件是否误报的判定方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111444507B CN111444507B CN202010540255.2A CN202010540255A CN111444507B CN 111444507 B CN111444507 B CN 111444507B CN 202010540255 A CN202010540255 A CN 202010540255A CN 111444507 B CN111444507 B CN 111444507B
- Authority
- CN
- China
- Prior art keywords
- target
- software
- processed
- vector
- 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.)
- Active
Links
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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Virology (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种加壳软件是否误报的判定方法、装置、设备和存储介质,该方法包括:在检测到目标软件的待处理数据时,获取待处理数据的是否存在恶意代码的目标分类结果;确定待处理数据的映射指向所述目标分类结果的第一目标决策显著向量和映射指向恶意代码的结果的第二目标决策显著向量;获取均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。本申请解决现有技术中未对加壳软件是否存在恶意代码的误报与否的识别,致使恶意代码的识别准确率低的问题。
Description
技术领域
本申请涉及金融科技(Fintech)的人工智能技术领域,尤其涉及一种加壳软件是否误报的判定方法、装置、设备及存储介质。
背景技术
目前,为了软件的安全,常常需要对软件的恶意代码进行查杀,进行恶意代码查杀的方式包括特征码方式,而为了躲避特征码方式的查杀,恶意代码开发人员使用加壳等方法对恶意代码进行处理,使生成的新型恶意代码文件不再体现可被检测的特征,为了提升对新型恶意代码的检测能力,往往将软件中加壳区域的特征用于恶意代码检测,而将软件中加壳区域的特征用于恶意代码检测致使检测误报增加,例如,根据Rahbarinia等人在2014年的研究,58%的恶意代码与54%的正常软件均使用了知名壳,这些壳中有69个(包括INNO、UPX等)被恶意代码和正常软件同时使用,而96.7%的加壳的正常软件被判定为恶意代码,杀软厂商使用鉴定为恶意代码的文件但实际正常的软件继续训练检测引擎等,导致更多误报,也即,目前,识别对加壳软件是否存在恶意代码的误报,是一个亟需解决的问题。
发明内容
本申请的主要目的在于提供一种加壳软件是否误报的判定方法、装置、设备和存储介质,旨在解决现有技术中未对加壳软件是否存在恶意代码的误报与否的识别,致使恶意代码的识别准确率低的技术问题。
为实现上述目的,本申请提供一种加壳软件是否误报的判定方法,所述加壳软件是否误报的判定方法包括:
在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;
获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
可选地,
所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的步骤,包括:
所述均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型。
可选地,所述获取用于确定是否误报的均方误差基线的步骤之前,所述方法包括:
获取具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练,得到满足预设条件的目标模型,其中,所述预设条件包括预设损失函数收敛;
将所述目标模型设置为所述预设编码模型。
可选地,所述确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量的步骤,包括:
获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;
确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度;
基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。
可选地,所述在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果的步骤之前,所述方法包括:
获取目标软件的可移植执行体PE文件;
确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果;
基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据。
可选地,所述确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量的步骤,包括:
对所述待处理数据进行分区处理,得到待处理分区数据;
确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
可选地,所述确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量的步骤,包括:
确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据;
确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量。
可选地,所述基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果的步骤,包括:
确定所述第一目标决策显著向量以及所述第二目标决策显著向量的目标均方误差;
若所述目标均方误差小于所述均方误差基线,则确定所述加壳软件误报与否的判定结果为误报。
本申请还提供一种加壳软件是否误报的判定装置,所述加壳软件是否误报的判定装置包括:
第一获取模块,用于在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
第一确定模块,用于确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;
第二获取模块,用于获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
可选地,
所述第二获取模块用于实现:
所述均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型。
可选地,所述加壳软件是否误报的判定装置包括:
第三获取模块,用于获取具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练,得到满足预设条件的目标模型,其中,所述预设条件包括预设损失函数收敛;
设置模块,用于将所述目标模型设置为所述预设编码模型。
可选地,所述第一确定模块包括:
第一获取单元,用于获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;
第一确定单元,用于确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度;
第二确定单元,用于基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。
可选地,所述加壳软件是否误报的判定装置包括:
第四获取模块,用于获取目标软件的可移植执行体PE文件;
第二确定模块,用于确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果;
第五获取模块,用于基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据。
可选地,所述第一确定模块包括:
分区单元,用于对所述待处理数据进行分区处理,得到待处理分区数据;
第三确定单元,用于确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
可选地,所述第三确定单元包括:
第一确定子单元,用于确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据;
第二确定子单元,用于确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量。
可选地,所述第一确定模块包括:
第三确定模块,用于确定所述第一目标决策显著向量以及所述第二目标决策显著向量的目标均方误差;
第四确定模块,用于若所述目标均方误差小于所述均方误差基线,则确定所述加壳软件误报与否的判定结果为误报。
本申请还提供一种加壳软件是否误报的判定设备,所述加壳软件是否误报的判定设备为实体设备,所述加壳软件是否误报的判定设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述加壳软件是否误报的判定方法的程序,所述加壳软件是否误报的判定方法的程序被处理器执行时可实现如上述的加壳软件是否误报的判定方法的步骤。
本申请还提供一种存储介质,所述存储介质上存储有实现上述加壳软件是否误报的判定方法的程序,所述加壳软件是否误报的判定方法的程序被处理器执行时实现如上述的加壳软件是否误报的判定方法的步骤。
本申请通过在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。在本申请中,在对目标软件进行是否存在恶意代码的分类后,还对分类结果进行是否误报的识别,具体地,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,以基于用于确定是否误报的均方误差基线(是基于具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的,因而能够准确确定是否误报),所述第一目标决策显著向量以及所述第二目标决策显著向量,准确确定所述加壳软件误报与否的判定结果,也即,在本实施例中,通过对加壳软件是否存在恶意代码的误报与否的识别,提升恶意代码的识别准确率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请加壳软件是否误报的判定方法第一实施例的流程示意图;
图2为本申请加壳软件是否误报的判定方法第一实施例中对待识别语音数据进行加壳软件是否误报的判定得到所述待识别语音数据的各候选结果的步骤细化流程示意图;
图3为本申请实施例方案涉及的硬件运行环境的设备结构示意图;
图4为本申请加壳软件是否误报的判定方法中的场景示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供一种加壳软件是否误报的判定方法,在本申请加壳软件是否误报的判定方法的第一实施例中,参照图1,所述加壳软件是否误报的判定方法包括:
步骤S10,在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
步骤S20,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;
步骤S30,获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
步骤S10,在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
在本实施例中,加壳软件是否误报的判定方法应用于加壳软件是否误报的判定***,该加壳软件是否误报的判定***属于加壳软件是否误报的判定设备,其中,加壳软件是否误报的判定***是可以通过接口与各个软件进行通信连接的,以实现对各个软件进行是否存在恶意代码的判断,以得到判断结果,在得到判断结果后,加壳软件是否误报的判定***还对该判断结果是否存在误报进行识别,得到识别结果,其中,需要说明的是,各个软件进行是否存在恶意代码的判断还可以不是在加壳软件是否误报的判定***中确定的,也即,可以基于各个软件在其他设备或者***上确定的是否存在恶意代码的判断结果,在加壳软件是否误报的判定***中进行该判断结果是否存在误报的判断。
在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果,具体地,在检测到目标软件的待处理数据时,获取所述待处理数据的待处理向量,获取所述待处理向量的是否存在恶意代码的目标分类结果,得到目标分类结果的方式可以是:在加壳软件是否误报的判定***中检测到目标软件的待处理数据(待处理向量)时,将所述待处理数据(待处理向量)输入至加壳软件是否误报的判定***中的预设分类模型(如图4所示,可以是预设多层感知机(Multilayer Perceptron,MLP)训练得到的加壳分类器中的模型,多层感知机(Multilayer Perceptron,MLP)是一种前馈人工神经网络,可以利用深度神经网络的特征学习能力以及非线性特征表达能力,快速学习到目标特征。预设多层感知机(Multilayer Perceptron,MLP)可以将一组输入向量映射到一组输出向量,具有直观且结构较简单的深度神经网络结果。使用多层感知机训练一个加壳分类器,从而使该分类器具备识别加壳区域特征的能力,其中,多层感知机的输入一般是一维向量,在输入层,有多少个输入就有多少个神经元)中,得到目标分类结果,需要说明的是,在本实施例中,还可以直接接收已经在外部分类模型中分类的目标分类结果。
其中,预设分类模型是已经训练的,对待处理数据进行分类的模型,该分类结果包括:存在恶意代码的类型或者不存在恶意代码的类型。
在本实施例中,可能存在的误报包括:将存在恶意代码的类型软件误报为不存在恶意代码的类型软件,或者将不存在恶意代码的类型软件误报为存在恶意代码的类型软件。在实施例中,以将不存在恶意代码的类型软件误报为存在恶意代码的类型软件为例进行具体说明。
所述在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果的步骤之前,所述方法包括:
步骤S01,获取目标软件的可移植执行体PE文件;
在本实施例中,是得到待处理数据的具体过程,也即,为了提升识别效率,可以只对目标软件的待处理数据进行识别而不是全部数据进行识别,具体地,例如,可以只对目标软件中加壳区域的代码(待处理数据)进行识别,而不是全部软件的代码进行识别。
具体地,首先获取目标软件的可移植执行体PE(Portable Executable)文件,特别地,获取加壳区域的可移植执行体PE(Portable Executable)文件(待处理数据)。
步骤S02,确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果;
确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果,其中,预设体积可以是2M(设置为2M的原因在于:对27万个恶意代码文件的大小进行了统计,其中小于1MB的PE文件占比达96.41%,大于1MB的仅有3.59%,设置为2M可以覆盖确定数量的特征,且可以避免过多处理数据),其中,对于一个PE文件,确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果,该比对结果可以是:大于预设体积,或者小于预设体积。
步骤S03,基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据。
基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据,具体地,若体积小于2MB则在PE文件后面添加0字节补齐至2MB,若体积大于2MB,则将PE文件的大于2MB的部分截断,得到待处理数据。
需要说明的是,输入至预设分类模型中的可以是待处理向量,因而,需要对待处理数据进行转换处理,例如,将一个PE文件样本S转换为一维向量,记为:
Xs=[x1,x2,…,xi],xi∈[0,255]
其中,需要说明的是,每个PE文件均由大量字节组成,而每个字节可表示成0到255的十进制数字,因此可以将每个PE文件S转换为一个一维向量[x1,x2....xi]其中,xi表示该文件中第i字节的值,xi∈[0,255],n表示该文件总的字节数,n的最长长度为2097152(2MB),之后将该一维向量作为多层感知机(预设分类模型)的输入向量,则输出PE文件所加壳的类别,其中,多层感知机包括:一个输入层,若干个全连接层,一个输出层等,输入层有2097152个神经元,全连接层的激活函数采用预设
步骤S20,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;
在本实施例中,在得到待处理数据后,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,具体地,利用预设梯度反向传播解释机制,或者利用预设深度学习的反向传播机制将多层感知机(加壳分类器)的预测信号从输出层神经元逐层传播到输入层,以推导得到PE样本中决定加壳类别的决策显著向量。具体推导过程可以是:基于输出层所使用的Softmax函数,确定得到目标分类结果的分类得分,确定各个字节(向量)分别对目标分类结果的分类得分的影响度或者是扰动力度,进而,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量。
在本实施例中,还确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,具体地,首先确定待处理数据每个片段的片段决策显著向量,然后基于片段决策显著向量确定对应每个字节对指向恶意代码的结果的影响度或者是扰动力度,进而,确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
步骤S30,获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
需要说明的是,加壳正常软件误报为恶意代码的根本原因在于:加壳决策向量以及恶意代码决策向量在加壳区域的特征的概率分布上具有一定的相似性。在本实施例中,通过具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定均方误差基线(由于通过具有预设误报标签的各加壳软件得到(或者训练得到的)均方误差基线,因而,能够作为基准准确对误报与否进行分类),进而确定是否存在误报。
在本实施例中,具体地,该用于确定是否误报的均方误差基线可以是预设的,对于不同的加壳软件是否误报的判定***,预设的用于确定是否误报的均方误差基线可能不同,而该预设的均方误差基线是之前已经训练好的。
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的步骤,包括:
所述均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型。
在本实施例中,均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型,其中,预设编码模型包括是编码层(或者是预设编码器)和解码层,整体地,使用训练好的编码器,获取训练集中的所有恶意代码决策向量的输出,然后计算该输出与训练集中对应加壳决策向量的均方误差,为避免噪声影响,将所有均方误差按从小到大排序,可以将排序在99%位置(预设位置)的误差值设置为误报正常加壳软件的均方误差基线,该基线与杀软引擎相关,不同杀软引擎的均方误差基线不同。
所述获取用于确定是否误报的均方误差基线的步骤之前,所述方法包括:
步骤A1,获取具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练,得到满足预设条件的目标模型,其中,所述预设条件包括预设损失函数收敛;
步骤A2,将所述目标模型设置为所述预设编码模型。
需要说明的是,在本实施例中,预设条件包括损失函数收敛或者训练此时达到预设次数,以下以所述预设条件包括预设损失函数收敛为例进行具体说明。
具体地,预设编码模型是通过无监督学习训练的神经网络模型,基于该模型中的编码层与解码层,对于输入向量X,用表示编码层函数,用表示解码层函数,由于预设编码模型的训练目标是使其损失函数最小或者收敛(预设条件),也即,可以得到训练好的预设编码模型。
在本实施例中,由于编码器是训练好的,因而,在获取具有预设误报标签的加壳软件的训练集中的恶意代码决策向量,将训练集中的恶意代码决策向量Ms作为编码层的输入后,则输出为,而损失函数为,训练目标使用损失函数最小或者收敛,即
在训练后,得到预设编码模型,在该预设编码模型中确定误报正常加壳软件(文件)的均方误差基线(该基线与杀软引擎相关,不同杀软引擎的均方误差基线不同)。对被任意检测引擎判定为恶意代码的PE文件(或者软件),将其输入至预设编码模型中,预设编码模型获取该文件的目标恶意代码决策向量Ms(第一目标决策显著向量)的自动编码器输出,与目标加壳决策向量Ps(第二目标决策显著向量)的均方误差,若该均方误差低于预设均方误差基线,则认为是误报。
本申请通过在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。在本申请中,在对目标软件进行是否存在恶意代码的分类后,还对分类结果进行是否误报的识别,具体地,确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,以基于用于确定是否误报的均方误差基线(是基于具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的,因而能够准确确定是否误报),所述第一目标决策显著向量以及所述第二目标决策显著向量,准确确定所述加壳软件误报与否的判定结果,也即,在本实施例中,通过对加壳软件是否存在恶意代码的误报与否的识别,提升恶意代码的识别准确率。
进一步地,参照图2,基于本申请中第一实施例,在本申请的另一实施例中,所述确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量的步骤,包括:
步骤S21,获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;
在本实施例中,分类结果包括是误报或者是非误报,获取所述待处理数据映射到各个分类结果的映射值包括:获取所述待处理数据映射到误报的映射值,或者获取所述待处理数据映射到非误报的映射值,其中,待处理数据映射到误报的映射值可以是90%,待处理数据映射到非误报的映射值可以是10%。
需要说明的是,可以基于输入Xs预测为K类加壳中的一种,具体地,根据输出层所使用的Softmax函数可知,对于每种加壳k∈K,都存在一个函数,基于该将输入Xs映射到类别空间的得分,分类结果取决于哪个类(误报或者非误报)的映射值最大,并得到最大映射值,即:
步骤S22,确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度;
步骤S23,基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。
借助求解得到针对类别k的输入Xs对应的决策显著向量,其中,在得到决策显著向量的过程中,通常会引入很多噪声,为此,进一步使用基于预设SmoothGrad的方法,通过在输入Xs多次加入随机噪声,然后利用预设反向传播方法或者上述反向传播方法求解决策显著向量,需要说明的是,由于可能存在多个多个决策显著向量,因而,将所有求解到的显著向量进行平均,得到平均结果,将该平均结果作为模型针对输入的第一目标决策显著向量,记为:
Ps=[p1,p2,…,pi],pi∈[0,1]
其中,PS表示输入Xs的第一目标决策显著向量,pi表示第i字节针对加壳分类结果的影响程度,范围为[0,1],0表示对结果无影响,1表示对结果有确定影响。
在本实施例中,获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度;基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。在本实施例中,实现基于所述第一扰动力度,准确确定指向所述目标分类结果的第一目标决策显著向量。
进一步地,基于本申请中第一实施例,在本申请的另一实施例中,所述确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量的步骤,包括:
步骤B1,对所述待处理数据进行分区处理,得到待处理分区数据;
在本实施例中,基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据的,也即,待处理数据大小可以经由预处理得到2097152大小的字节,其中,需要说明的是,PE文件(不同于图像文件)具有较为固定的结构属性,也即,一个PE文件一般包括头、结、导入/导出表、资源段、附加数据等部分。
利用PE文件的结构,首先将待处理数据按PE头、区块表、各个区块、区块间数据、资源、附加数据等分解为多个段或者分解为多个区,得到待处理分区数据。
步骤B2,确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,具体地,每个待处理分区数据或者每个段表示为,其中0≤ks<ke≤2097152,Sj为原始向量X的子向量,然后根据以下公式确定每个段(待处理分区数据)对预测结果的影响(通过观察去掉输入中某一特征后对模型预测结果的变化确定该特征的重要程度):
其中Xs\Sj表示去掉第j段特征的向量,Rj(XS)表示去掉第j段特征后的影响(第二扰动力度),以得到第二目标决策显著向量。
所述确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量的步骤,包括:
步骤C1,确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据;
步骤C2,确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量。
确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据,也即,通过上述步骤B1,以及步骤B2等首先确定影响力度或者扰动力度最大的目标待处理分区数据,确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量,具体地,通过如下公式确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度:
其中f(Xs)表示模型的决策函数,xi为待确定的第维特征Xs\xi表示去掉第维特征的向量,Ri(Xs)表示去掉第维特征后的影响度,假如去掉该特征后,结果与原输入结果不同则说明该特征对预测结果具有重要意义(第三扰动力度满足预设力度要求),影响度为1,否则,影响度为0。最后,根据每一维特征的影响,生成一个恶意代码检测引擎针对输入向量Xs预测为恶意代码的决策向量,记为:
在本实施例中,通过对所述待处理数据进行分区处理,得到待处理分区数据;确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。在本实施例中,准确确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
参照图3,图3是本申请实施例方案涉及的硬件运行环境的设备结构示意图。
如图3所示,该加壳软件是否误报的判定设备可以包括:处理器1001,例如CPU,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
可选地,该加壳软件是否误报的判定设备还可以包括矩形用户接口、网络接口、摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。矩形用户接口可以包括显示屏(Display)、输入子模块比如键盘(Keyboard),可选矩形用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的加壳软件是否误报的判定设备结构并不构成对加壳软件是否误报的判定设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块以及加壳软件是否误报的判定程序。操作***是管理和控制加壳软件是否误报的判定设备硬件和软件资源的程序,支持加壳软件是否误报的判定程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与加壳软件是否误报的判定***中其它硬件和软件之间通信。
在图3所示的加壳软件是否误报的判定设备中,处理器1001用于执行存储器1005中存储的加壳软件是否误报的判定程序,实现上述任一项所述的加壳软件是否误报的判定方法的步骤。
本申请加壳软件是否误报的判定设备具体实施方式与上述加壳软件是否误报的判定方法各实施例基本相同,在此不再赘述。
本申请还提供一种加壳软件是否误报的判定装置,所述加壳软件是否误报的判定装置包括:
第一获取模块,用于在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
第一确定模块,用于确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量;
第二获取模块,用于获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
可选地,
所述第二获取模块用于实现:
所述均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型。
可选地,所述加壳软件是否误报的判定装置包括:
第三获取模块,用于获取具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练,得到满足预设条件的目标模型,其中,所述预设条件包括预设损失函数收敛;
设置模块,用于将所述目标模型设置为所述预设编码模型。
可选地,所述第一确定模块包括:
第一获取单元,用于获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;
第一确定单元,用于确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度;
第二确定单元,用于基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。
可选地,所述加壳软件是否误报的判定装置包括:
第四获取模块,用于获取目标软件的可移植执行体PE文件;
第二确定模块,用于确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果;
第五获取模块,用于基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据。
可选地,所述第一确定模块包括:
分区单元,用于对所述待处理数据进行分区处理,得到待处理分区数据;
第三确定单元,用于确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量。
可选地,所述第三确定单元包括:
第一确定子单元,用于确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据;
第二确定子单元,用于确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量。
可选地,所述第一确定模块包括:
第三确定模块,用于确定所述第一目标决策显著向量以及所述第二目标决策显著向量的目标均方误差;
第四确定模块,用于若所述目标均方误差小于所述均方误差基线,则确定所述加壳软件误报与否的判定结果为误报。
本申请加壳软件是否误报的判定装置的具体实施方式与上述加壳软件是否误报的判定方法各实施例基本相同,在此不再赘述。
本申请实施例提供了一种存储介质,且所述存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的加壳软件是否误报的判定方法的步骤。
本申请存储介质具体实施方式与上述加壳软件是否误报的判定方法各实施例基本相同,在此不再赘述。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利处理范围内。
Claims (10)
1.一种加壳软件是否误报的判定方法,其特征在于,所述加壳软件是否误报的判定方法包括:
在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并对所述待处理数据进行分区处理,得到待处理分区数据;
确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,其中,第二扰动力度通过在去掉对应待处理分区数据后,所获取的分类结果的变化确定;
获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
2.如权利要求1所述的加壳软件是否误报的判定方法,其特征在于,
所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的步骤,包括:
所述均方误差基线是基于预设编码模型得到的,所述预设编码模型是基于具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练后得到的满足预设条件的目标模型。
3.如权利要求2所述的加壳软件是否误报的判定方法,其特征在于,所述获取用于确定是否误报的均方误差基线的步骤之前,所述方法包括:
获取具有预设误报标签的加壳软件的包括加壳决策向量与恶意代码决策向量的训练集,对预设基础模型进行训练,得到满足预设条件的目标模型,其中,所述预设条件包括预设损失函数收敛;
将所述目标模型设置为所述预设编码模型。
4.如权利要求1所述的加壳软件是否误报的判定方法,其特征在于,所述确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量的步骤,包括:
获取所述待处理数据映射到各个分类结果的映射值,以得到指向所述目标分类结果的最大映射值;
确定所述待处理数据中每个字节向量对所述最大映射值的第一扰动力度, 其中,第一扰动力度通过在对应字节向量的变化后,所获取的最大映射值的大小的变化确定;
基于所述第一扰动力度,确定指向所述目标分类结果的第一目标决策显著向量。
5.如权利要求1所述的加壳软件是否误报的判定方法,其特征在于,所述在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果的步骤之前,所述方法包括:
获取目标软件的可移植执行体PE文件;
确定所述PE文件的文件体积,并获取所述文件体积与预设体积的比对结果;
基于所述比对结果对所述可移植执行体PE文件进行预处理,得到待处理数据。
6.如权利要求1所述的加壳软件是否误报的判定方法,其特征在于,所述确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量的步骤,包括:
确定每个待处理分区数据对分类结果的第二扰动力度,并确定扰动力度最大的第二目标扰动力度,以得到所述第二目标扰动力度对应的目标待处理分区数据;
确定目标待处理分区数据中每个字节向量对映射指向恶意代码的结果的第三扰动力度,确定指向所述恶意代码的结果的第二目标决策显著向量。
7.如权利要求2-6任一项所述的加壳软件是否误报的判定方法,其特征在于,所述基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果的步骤,包括:
确定所述第一目标决策显著向量以及所述第二目标决策显著向量的目标均方误差;
若所述目标均方误差小于所述均方误差基线,则确定所述加壳软件误报与否的判定结果为误报。
8.一种加壳软件是否误报的判定装置,其特征在于,所述加壳软件是否误报的判定装置包括:
第一获取模块,用于在检测到目标软件的待处理数据时,获取所述待处理数据的是否存在恶意代码的目标分类结果;
第一确定模块,用于确定所述待处理数据的映射指向所述目标分类结果的第一目标决策显著向量,并对所述待处理数据进行分区处理,得到待处理分区数据,确定每个待处理分区数据对分类结果的第二扰动力度,以确定所述待处理数据的映射指向恶意代码的结果的第二目标决策显著向量,其中,第二扰动力度通过在去掉对应待处理分区数据后,所获取的分类结果的变化确定;
第二获取模块,用于获取用于确定是否误报的均方误差基线,基于所述均方误差基线,所述第一目标决策显著向量以及所述第二目标决策显著向量,确定所述加壳软件误报与否的判定结果;
其中,所述均方误差基线由具有预设误报标签的各加壳软件的加壳决策向量与对应恶意代码决策向量确定的。
9.一种加壳软件是否误报的判定设备,其特征在于,所述加壳软件是否误报的判定设备包括:存储器、处理器以及存储在存储器上的用于实现所述加壳软件是否误报的判定方法的程序,
所述处理器用于执行实现所述加壳软件是否误报的判定方法的程序,以实现如权利要求1至7中任一项所述加壳软件是否误报的判定方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有实现加壳软件是否误报的判定方法的程序,所述实现加壳软件是否误报的判定方法的程序被处理器执行以实现如权利要求1至7中任一项所述加壳软件是否误报的判定方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540255.2A CN111444507B (zh) | 2020-06-15 | 2020-06-15 | 加壳软件是否误报的判定方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540255.2A CN111444507B (zh) | 2020-06-15 | 2020-06-15 | 加壳软件是否误报的判定方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111444507A CN111444507A (zh) | 2020-07-24 |
CN111444507B true CN111444507B (zh) | 2020-11-03 |
Family
ID=71655538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010540255.2A Active CN111444507B (zh) | 2020-06-15 | 2020-06-15 | 加壳软件是否误报的判定方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444507B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798243A (zh) * | 2017-11-25 | 2018-03-13 | 国网河南省电力公司电力科学研究院 | 终端应用的检测方法和装置 |
CN109561084A (zh) * | 2018-11-20 | 2019-04-02 | 四川长虹电器股份有限公司 | 基于lstm自编码网络的url参数异常值检测方法 |
CN110647745A (zh) * | 2019-07-24 | 2020-01-03 | 浙江工业大学 | 基于深度学习的恶意软件汇编格式的检测方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587527B (zh) * | 2009-07-08 | 2011-12-28 | 北京东方微点信息技术有限责任公司 | 病毒程序扫描方法及装置 |
US10846403B2 (en) * | 2018-05-15 | 2020-11-24 | International Business Machines Corporation | Detecting malicious executable files by performing static analysis on executable files' overlay |
CN109165688A (zh) * | 2018-08-28 | 2019-01-08 | 暨南大学 | 一种安卓恶意软件家族分类器构建方法及其分类方法 |
CN110472417B (zh) * | 2019-08-22 | 2021-03-30 | 东北大学秦皇岛分校 | 基于卷积神经网络的恶意软件操作码分析方法 |
CN111047594B (zh) * | 2019-11-06 | 2023-04-07 | 安徽医科大学 | 肿瘤mri弱监督学习分析建模方法及其模型 |
-
2020
- 2020-06-15 CN CN202010540255.2A patent/CN111444507B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798243A (zh) * | 2017-11-25 | 2018-03-13 | 国网河南省电力公司电力科学研究院 | 终端应用的检测方法和装置 |
CN109561084A (zh) * | 2018-11-20 | 2019-04-02 | 四川长虹电器股份有限公司 | 基于lstm自编码网络的url参数异常值检测方法 |
CN110647745A (zh) * | 2019-07-24 | 2020-01-03 | 浙江工业大学 | 基于深度学习的恶意软件汇编格式的检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111444507A (zh) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Reasoning-rcnn: Unifying adaptive global reasoning into large-scale object detection | |
Maseer et al. | Benchmarking of machine learning for anomaly based intrusion detection systems in the CICIDS2017 dataset | |
Zhang et al. | MoWLD: a robust motion image descriptor for violence detection | |
US9727821B2 (en) | Sequential anomaly detection | |
WO2021052201A1 (zh) | 数据防窃取方法和相关产品 | |
CN111414946B (zh) | 基于人工智能的医疗影像的噪声数据识别方法和相关装置 | |
Lam et al. | Evaluation of multiple features for violent scenes detection | |
CN113297572A (zh) | 基于神经元激活模式的深度学习样本级对抗攻击防御方法及其装置 | |
Barros et al. | Malware‐SMELL: A zero‐shot learning strategy for detecting zero‐day vulnerabilities | |
CN116015703A (zh) | 模型训练方法、攻击检测方法及相关装置 | |
CN111694954A (zh) | 图像分类方法、装置和电子设备 | |
Chen et al. | HRCP: High-ratio channel pruning for real-time object detection on resource-limited platform | |
Tuncer et al. | Automated malware recognition method based on local neighborhood binary pattern | |
CN112613032B (zh) | 基于***调用序列的主机入侵检测方法及装置 | |
Meneghetti et al. | Detecting soccer balls with reduced neural networks: a comparison of multiple architectures under constrained hardware scenarios | |
CN113312920A (zh) | 基于图对比学习的验证方法、***、设备和存储介质 | |
Alohali et al. | Optimal Deep Learning Based Ransomware Detection and Classification in the Internet of Things Environment. | |
CN111444507B (zh) | 加壳软件是否误报的判定方法、装置、设备及存储介质 | |
CN116756578A (zh) | 车辆信息安全威胁聚合分析预警方法及*** | |
CN112507912B (zh) | 一种识别违规图片的方法及装置 | |
CN111400715B (zh) | 分类引擎诊断方法、装置及计算机可读存储介质 | |
CN114095268A (zh) | 用于网络入侵检测的方法、终端及存储介质 | |
Zheng et al. | Defence against adversarial attacks using clustering algorithm | |
Rahman et al. | An exploratory analysis of feature selection for malware detection with simple machine learning algorithms | |
CN112312590A (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 |