CN110689133A - 一种训练机器学习引擎的方法、系统及相关装置 - Google Patents

一种训练机器学习引擎的方法、系统及相关装置 Download PDF

Info

Publication number
CN110689133A
CN110689133A CN201810638258.2A CN201810638258A CN110689133A CN 110689133 A CN110689133 A CN 110689133A CN 201810638258 A CN201810638258 A CN 201810638258A CN 110689133 A CN110689133 A CN 110689133A
Authority
CN
China
Prior art keywords
executable file
information entropy
entropy
machine learning
extracted
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
Application number
CN201810638258.2A
Other languages
English (en)
Other versions
CN110689133B (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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201810638258.2A priority Critical patent/CN110689133B/zh
Priority to ES19821642T priority patent/ES2967250T3/es
Priority to SG11202012709TA priority patent/SG11202012709TA/en
Priority to PCT/CN2019/087564 priority patent/WO2019242444A1/zh
Priority to EP19821642.6A priority patent/EP3812975B1/en
Publication of CN110689133A publication Critical patent/CN110689133A/zh
Application granted granted Critical
Publication of CN110689133B publication Critical patent/CN110689133B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Control Of Vehicle Engines Or Engines For Specific Uses (AREA)

Abstract

本申请公开了一种训练机器学习引擎的方法,所述方法包括:获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;利用所述静态特征训练机器学习引擎。本方法能够稳定的提取可执行文件的静态特征使得机器学习引擎生成的检测模型具有较强鲁棒性的识别率。本申请还公开了一种训练机器学习引擎的系统、一种计算机可读存储介质及一种训练机器学习引擎的装置,具有以上有益效果。

Description

一种训练机器学习引擎的方法、系统及相关装置
技术领域
本发明涉及机器学习领域,特别涉及一种训练机器学习引擎的方法、系统、一种计算机可读存储介质及一种训练机器学习引擎的装置。
背景技术
大数据和机器学习技术是当前工业界和学术界研究的热点,机器学习和大数据技术被越来越多的用于了信息安全方面,并取得了不错的效果。其中,基于机器学习的恶意软件检测技术取得长足的进步,业界也涌现了一大批基于机器学习做恶意软件检测的公司,比如Cylance等,这些新兴公司颇受VC的青睐,也取得一些很好的成果。
目前的机器学习引擎一般采用软件的信息熵来作为机器学习的静态特征,通常的做法是对可执行文件的主要特征进行信息熵提取操作,将提取到的结果作为输入机器学习引擎的静态特征。但是由于这种对可执行文件的主要特征进行信息熵提取的操作是指仅对可执行文件的导入表、导出表以及节信息进行信息熵提取,这些特征比较通用,因此得到的样本特征颗粒度较粗。使用现有技术中得到的样本特征进行机器学习将会导致机器学习引擎的训练效果较差,具有较低的识别率。
因此,如何稳定的提取可执行文件的静态特征使得机器学习引擎生成的检测模型具有较强鲁棒性的识别率,是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种训练机器学习引擎的方法、系统、一种计算机可读存储介质及一种训练机器学习引擎的装置,能够稳定的提取可执行文件的静态特征使得机器学习引擎生成的检测模型具有较强鲁棒性的识别率。
为解决上述技术问题,本申请提供一种训练机器学习引擎的方法,该方法包括:
获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;
提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;
利用所述静态特征训练机器学习引擎。
可选的,按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分包括:
按照所述可执行文件的数据目录将所述可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay(覆盖)数据部分和可执行文件整体部分。
可选的,提取所有所述待提取部分的信息熵特征,将所有所述信息熵特征进行数据变换得到静态特征包括:
提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流;
对所述熵流进行DCT变换或DWT变换得到所述静态特征。
可选的,统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流包括:
将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;
将所有所述熵流分量累加得到所述熵流。
可选的,在获取可执行文件后,还包括:
根据所述可执行文件的通用格式信息确定所述可执行文件的文件格式,并根据所述文件格式选择对应的特征提取策略;
相应的,提取所有所述待提取部分的信息熵特征包括:
利用所述特征提取策略提取所有所述待提取部分的信息熵特征。
本申请还提供了一种训练机器学习引擎的系统,该系统包括:
文件划分模块,用于获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;
静态特征提取模块,用于提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;
训练模块,用于利用所述静态特征训练机器学习引擎。
可选的,所述文件划分模块包括:
文件获取单元,用于获取所述可执行文件;
划分单元,用于按照所述可执行文件的数据目录将所述可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay数据部分和可执行文件整体部分。
可选的,所述静态特征提取模块包括:
信息熵特征提取单元,用于提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
熵流统计单元,用于统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流;
数据变换单元,用于对所述熵流进行DCT变换或DWT变换得到所述静态特征。
可选的,所述熵流统计单元包括:
分块子单元,用于将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
熵流分量计算子单元,用于统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;
熵流分量累加单元,用于将所有所述熵流分量累加得到所述熵流。
可选的,还包括:
提取策略确定模块,用于根据所述可执行文件的通用格式信息确定所述可执行文件的文件格式,并根据所述文件格式选择对应的特征提取策略;
相应的,所述静态特征提取模块具体为利用所述特征提取策略提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征的模块。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述训练机器学习引擎的方法执行的步骤。
本申请还提供了一种训练机器学习引擎的装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述训练机器学习引擎的方法执行的步骤。
本发明提供了一种训练机器学习引擎的方法,包括获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;利用所述静态特征训练机器学习引擎。
本发明通过将可执行文件划分为多个待提取部分,针对每一个待提取部分都进行信息熵特征提取操作,再将所有的信息熵特征变换得到机器学习引擎训练时所需的静态特征以便进行机器学习引擎的训练。相对于现有技术中只针对可执行文件的主要特征进行信息熵提取的办法,本方案对可执行文件的进行按照数据目录的划分,通过化整为零的方式,针对每个待提取部分进行信息熵特征提取。由于现有技术是针对主要特征进行统一的信息熵特征提取,而这些主要特征比较通用,因此得到的静态特征的粒度较粗。本方案是相当于对可执行文件整体进行信息熵特征提取,进一步由通过将可执行文件划分为多个待提取部分进行提取,能够保证得到的静态特征的粒度较细。本方案能够稳定的提取可执行文件的静态特征使得机器学习引擎生成的检测模型具有较强鲁棒性的识别率。本申请同时还提供了一种训练机器学习引擎的系统、一种计算机可读存储介质和一种训练机器学习引擎的装置,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种训练机器学习引擎的方法的流程图;
图2为本申请实施例所提供的一种训练机器学习引擎的方法的提取信息熵特征并变换得到静态特征的流程图;
图3为本申请实施例所提供的另一种训练机器学习引擎的方法的流程图;
图4为本申请实施例所提供的一种优选的训练机器学习引擎的方法的流程图;
图5为本申请实施例所提供的一种训练机器学习引擎的系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种训练机器学习引擎的方法的流程图。
具体步骤可以包括:
S101:获取可执行文件,并按照可执行文件的数据目录将可执行文件划分为多个待提取部分;
其中,本实施例是针对训练机器学习引擎提出的方案,训练机器学习引擎所需要的样本为可执行文件的静态特征。可执行文件是指是可以由操作系统进行加载执行的文件,在不同的操作系统环境下,可执行文件的呈现方式不一样,例如在Windows系统下可执行文件的格式为PE(Portable Executable,可移植的可执行)文件,在Linux、Mac、Android等系统中均有其对应的可执行文件格式。此处不对可执行文件所在的系统进行具体的限定,本方案可以对多种系统下的可执行文件进行操作。
本步骤是按照可执行文件的数据目录将可执行文件划分为多个待提取部分,具体来说,可以是按照可执行文件结构中的section数组来划分,还可以按照可执行文件结构中其他数据目录进行划分,此处不进行具体的限定。例如,可以按照可执行文件的数据目录将可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay数据部分和可执行文件整体部分。作为一种优选的实施方案,可以在确定可执行文件的通用格式信息后,根据其相对应的通用格式的某些部分或者某些结构进行待提取部分的划分。
通过本步骤中将可执行文件划分为多个待提取部分的操作,能够将可执行文件按照数据目录细分为多个待提取部分,在进行信息熵特征提取的过程中,可以针对每一待提取部分的具体情况选择特定的特征提取方法,使本方案的信息熵特征的粒度更细,进而增加了静态特征的稳定性。
S102:提取所有待提取部分的信息熵特征,并将所有信息熵特征进行数据变换得到静态特征;
其中,本步骤是建立在S101已经将可执行文件划分为多个待提取部分的基础上,提取每一个待提取部分的信息熵特征。信息熵是指某种特定信息的出现概率,可以将信息熵和热力学熵进行类比。在本实施例中提到的信息熵特征就是待提取部分中各个信息出现的概率,通常来讲在计算机中信息是以字符的形式存在的,本步骤中提到的信息熵特征可以认为是可执行文件中关于各个字符出现概率的特征值。
可以理解的是,机器学习引擎在进行训练时所采用的样本为可执行文件的静态特征,本步骤通过数据变换将信息熵特征转化为静态特征,以便下一步进行机器学习引擎的训练。
S103:利用静态特征训练机器学习引擎;
本实施例通过将可执行文件划分为多个待提取部分,针对每一个待提取部分都进行信息熵特征提取操作,再将所有的信息熵特征变换得到机器学习引擎训练时所需的静态特征以便进行机器学习引擎的训练。相对于现有技术中只针对可执行文件的主要特征进行信息熵提取的办法,本实施例对可执行文件的进行按照数据目录的划分,通过化整为零的方式,针对每个待提取部分进行信息熵特征提取。由于现有技术是针对主要特征进行统一的信息熵特征提取,而这些主要特征比较通用,因此得到的静态特征的粒度较粗。本实施例是相当于对可执行文件整体进行信息熵特征提取,进一步由通过将可执行文件划分为多个待提取部分进行提取,能够保证得到的静态特征的粒度较细。本实施例能够稳定的提取可执行文件的静态特征使得机器学习引擎生成的检测模型具有较强鲁棒性的识别率。
下面请参见图2,图2为本申请实施例所提供的一种训练机器学习引擎的方法的提取信息熵特征并变换得到静态特征的流程图。
提取信息熵特征并变换得到静态特征的方式包括但不限于下述方式:
S201:提取所有待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
S202:统计信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到信息熵特征的熵流;
其中,在本方案中可以将信息熵和热力学熵进行类比,故在本方案中将借助信息流的净熵传递称为熵流。
在本步骤中仅仅是对二进制数据构成的信息熵特征进行了整体的熵流计算,作为一种优选的实施方案,可以将该二进制数据进行一定程度的分块操作,更加便于熵流的计算。例如:首先将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;再统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;最后将所有所述熵流分量累加得到所述熵流。
S203:对熵流进行DCT变换或DWT变换得到静态特征。
其中,DCT(Discrete Cosine Transform,离散余弦变换)是与傅里叶变换相关的一种变换,DWT(Discrete Walsh Transform,离散沃尔什变换)是一种以沃尔什函数为基本函数的一种非正弦正交变换,DCT变换或DWT变换可以将熵流变换为静态特征。
下面请参见图3,图3为本申请实施例所提供的另一种训练机器学习引擎的方法的流程图。
具体步骤可以包括:
S301:根据可执行文件的通用格式信息确定可执行文件的文件格式,并根据文件格式选择对应的特征提取策略;
本步骤的目的在于根据可执行文件的通用格式信息,确定可执行文件的具体小类(如为.NET格式、Py2exe格式、auotit格式、Nsis格式等),针对可执行文件所述的文件格式确定特征提取策略(如确定提取哪些特征)。
下面针对确定文件格式进行举例:在确定可执行文件的文件格式时,可以采用检测可执行文件数据目录中名称为“.NET MetaData Directory RVA”和“.NET MetaDataDirectory Size”的值是否为空,如果不为空则为.NET程序;还可以采用查看可执行文件中是否包含python运行时库的引用的方式,比如检查可执行文件导入表是否包含python*.dll的方式或者其它方式(资源中是否有python编译后的代码或者python代码等)判断是否为Py2exe格式的可执行文件。当然,不同文件格式的可执行文件有不同的确定方法,此处不对如何确定文件格式的具体方法进行限定,本领域的技术人员可以根据实际应用情况进行设置。
S302:根据特征提取策略提取可执行文件的静态特征;
其中,尽管不同特征提取策略是不同的,但是提取静态特征的目的可以是:把文档里面规定的结构、元数据都提取出来,按照定义的结构逐个将属性读取和解析出来,然后将数值型的数据转换到某个范围中,字符串型数据的截取一定长度、替换一些特殊字符等操作。
S303:利用静态特征训练机器学习引擎;
通过本实施中的方案能够获取粒度较细的静态特征,可以较好地训练机器学习引擎,提高及其学习引擎的识别率。当然,本实施例中的操作可以与第一个实施例或第二个实施例相结合,使用本实施例中根据所述文件格式选择对应的特征提取策略对前面两个实施例中信息熵特征进行提取操作。即,利用特征提取策略提取所述待提取部分的信息熵特征。
下面请参见图4,图4为本申请实施例所提供的一种优选的训练机器学习引擎的方法的流程图。
S401:获取可执行文件,并按照可执行文件的数据目录将可执行文件划分为多个待提取部分;
S402:根据可执行文件的通用格式信息确定可执行文件的文件格式,并根据文件格式选择对应的特征提取策略;
S403:利用特征提取策略提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
S404:将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
S405:统计每一字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;
S406:将所有熵流分量累加得到所述熵流;
S407:对熵流进行DCT变换或DWT变换得到所述静态特征;
S408:利用静态特征训练机器学习引擎。
请参见图5,图5为本申请实施例所提供的一种训练机器学习引擎的系统的结构示意图;
该系统可以包括:
文件划分模块100,用于获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;
静态特征提取模块200,用于提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;
训练模块300,用于利用所述静态特征训练机器学习引擎。
可选的,所述文件划分模块100包括:
文件获取单元,用于获取所述可执行文件;
划分单元,用于按照所述可执行文件的数据目录将所述可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay数据部分和可执行文件整体部分。
可选的,所述静态特征提取模块200包括:
信息熵特征提取单元,用于提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
熵流统计单元,用于统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流;
数据变换单元,用于对所述熵流进行DCT变换或DWT变换得到所述静态特征。
可选的,所述熵流统计单元包括:
分块子单元,用于将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
熵流分量计算子单元,用于统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式|p·log(p)|计算每一字节块中每一个字节的熵流分量;
熵流分量累加单元,用于将所有所述熵流分量累加得到所述熵流。
可选的,还包括:
提取策略确定模块,用于根据所述可执行文件的通用格式信息确定所述可执行文件的文件格式,并根据所述文件格式选择对应的特征提取策略;
相应的,所述静态特征提取模块具体为利用所述特征提取策略提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征的模块。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种训练机器学习引擎的装置,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述训练机器学习引擎的装置还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (12)

1.一种训练机器学习引擎的方法,其特征在于,包括:
获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;
提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;
利用所述静态特征训练机器学习引擎。
2.根据权利要求1所述方法,其特征在于,按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分包括:
按照所述可执行文件的数据目录将所述可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay数据部分和可执行文件整体部分。
3.根据权利要求1所述方法,其特征在于,提取所有所述待提取部分的信息熵特征,将所有所述信息熵特征进行数据变换得到静态特征包括:
提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流;
对所述熵流进行DCT变换或DWT变换得到所述静态特征。
4.根据权利要求3所述方法,其特征在于,统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流包括:
将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;
将所有所述熵流分量累加得到所述熵流。
5.根据权利要求1所述方法,其特征在于,在获取可执行文件后,还包括:
根据所述可执行文件的通用格式信息确定所述可执行文件的文件格式,并根据所述文件格式选择对应的特征提取策略;
相应的,提取所有所述待提取部分的信息熵特征包括:
利用所述特征提取策略提取所有所述待提取部分的信息熵特征。
6.一种训练机器学习引擎的系统,其特征在于,包括:
文件划分模块,用于获取可执行文件,并按照所述可执行文件的数据目录将所述可执行文件划分为多个待提取部分;
静态特征提取模块,用于提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征;
训练模块,用于利用所述静态特征训练机器学习引擎。
7.根据权利要求6所述系统,其特征在于,所述文件划分模块包括:
文件获取单元,用于获取所述可执行文件;
划分单元,用于按照所述可执行文件的数据目录将所述可执行文件划分为可执行文件头部分、可执行文件节部分、可执行文件Overlay数据部分和可执行文件整体部分。
8.根据权利要求6所述系统,其特征在于,所述静态特征提取模块包括:
信息熵特征提取单元,用于提取所有所述待提取部分的信息熵特征;其中,所述信息熵特征的数制为二进制;
熵流统计单元,用于统计所述信息熵特征对应的二进制数据中每一个字符占所述二进制数据中所有字符的比例,根据所述比例得到所述信息熵特征的熵流;
数据变换单元,用于对所述熵流进行DCT变换或DWT变换得到所述静态特征。
9.根据权利要求8所述系统,其特征在于,所述熵流统计单元包括:
分块子单元,用于将所述信息熵特征对应的二进制数据按照256个字节进行分块得到多个字节块;
熵流分量计算子单元,用于统计每一所述字节块中每一个字符占所属的字节块中所有字符的字节块比例p,并根据公式S=|p·log(p)|计算每一字节块中每一个字节的熵流分量S;
熵流分量累加单元,用于将所有所述熵流分量累加得到所述熵流。
10.根据权利要求6所述系统,其特征在于,还包括:
提取策略确定模块,用于根据所述可执行文件的通用格式信息确定所述可执行文件的文件格式,并根据所述文件格式选择对应的特征提取策略;
相应的,所述静态特征提取模块具体为利用所述特征提取策略提取所有所述待提取部分的信息熵特征,并将所有所述信息熵特征进行数据变换得到静态特征的模块。
11.一种训练机器学习引擎的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时执行如权利要求1至5任一项所述的训练机器学习引擎的方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的训练机器学习引擎的方法的步骤。
CN201810638258.2A 2018-06-20 2018-06-20 一种训练机器学习引擎的方法、系统及相关装置 Active CN110689133B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201810638258.2A CN110689133B (zh) 2018-06-20 2018-06-20 一种训练机器学习引擎的方法、系统及相关装置
ES19821642T ES2967250T3 (es) 2018-06-20 2019-05-20 Método y sistema para entrenar un motor de aprendizaje automático y dispositivo relacionado
SG11202012709TA SG11202012709TA (en) 2018-06-20 2019-05-20 Method and system for training machine learning engine and related device
PCT/CN2019/087564 WO2019242444A1 (zh) 2018-06-20 2019-05-20 一种训练机器学习引擎的方法、系统及相关装置
EP19821642.6A EP3812975B1 (en) 2018-06-20 2019-05-20 Method and system for training machine learning engine and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810638258.2A CN110689133B (zh) 2018-06-20 2018-06-20 一种训练机器学习引擎的方法、系统及相关装置

Publications (2)

Publication Number Publication Date
CN110689133A true CN110689133A (zh) 2020-01-14
CN110689133B CN110689133B (zh) 2023-09-05

Family

ID=68982765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810638258.2A Active CN110689133B (zh) 2018-06-20 2018-06-20 一种训练机器学习引擎的方法、系统及相关装置

Country Status (5)

Country Link
EP (1) EP3812975B1 (zh)
CN (1) CN110689133B (zh)
ES (1) ES2967250T3 (zh)
SG (1) SG11202012709TA (zh)
WO (1) WO2019242444A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378881A (zh) * 2021-05-11 2021-09-10 广西电网有限责任公司电力科学研究院 基于信息熵增益svm模型的指令集识别方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550746A (zh) * 2015-12-08 2016-05-04 北京旷视科技有限公司 机器学习模型的训练方法和训练装置
CN107153630A (zh) * 2016-03-04 2017-09-12 阿里巴巴集团控股有限公司 一种机器学习系统的训练方法和训练系统
US9864956B1 (en) * 2017-05-01 2018-01-09 SparkCognition, Inc. Generation and use of trained file classifiers for malware detection
CN107688744A (zh) * 2017-08-31 2018-02-13 杭州安恒信息技术有限公司 基于图像特征匹配的恶意文件分类方法及装置
CN107992764A (zh) * 2017-11-28 2018-05-04 国网河南省电力公司电力科学研究院 一种敏感网页识别与检测方法及装置
CN108108820A (zh) * 2017-12-20 2018-06-01 第四范式(北京)技术有限公司 用于选择机器学习样本的特征的方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644076B1 (en) * 2003-09-12 2010-01-05 Teradata Us, Inc. Clustering strings using N-grams
RU2580036C2 (ru) * 2013-06-28 2016-04-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ создания гибкой свертки для обнаружения вредоносных программ
CN104978522B (zh) * 2014-04-10 2018-05-08 北京启明星辰信息安全技术有限公司 一种检测恶意代码的方法和装置
US9465940B1 (en) * 2015-03-30 2016-10-11 Cylance Inc. Wavelet decomposition of software entropy to identify malware
CN106295337B (zh) * 2015-06-30 2018-05-22 安一恒通(北京)科技有限公司 用于检测恶意漏洞文件的方法、装置及终端
US9690938B1 (en) * 2015-08-05 2017-06-27 Invincea, Inc. Methods and apparatus for machine learning based malware detection
CN106778241B (zh) * 2016-11-28 2020-12-25 东软集团股份有限公司 恶意文件的识别方法及装置
CN108062478B (zh) * 2018-01-04 2021-04-02 北京理工大学 全局特征可视化与局部特征相结合的恶意代码分类方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550746A (zh) * 2015-12-08 2016-05-04 北京旷视科技有限公司 机器学习模型的训练方法和训练装置
CN107153630A (zh) * 2016-03-04 2017-09-12 阿里巴巴集团控股有限公司 一种机器学习系统的训练方法和训练系统
US9864956B1 (en) * 2017-05-01 2018-01-09 SparkCognition, Inc. Generation and use of trained file classifiers for malware detection
CN107688744A (zh) * 2017-08-31 2018-02-13 杭州安恒信息技术有限公司 基于图像特征匹配的恶意文件分类方法及装置
CN107992764A (zh) * 2017-11-28 2018-05-04 国网河南省电力公司电力科学研究院 一种敏感网页识别与检测方法及装置
CN108108820A (zh) * 2017-12-20 2018-06-01 第四范式(北京)技术有限公司 用于选择机器学习样本的特征的方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378881A (zh) * 2021-05-11 2021-09-10 广西电网有限责任公司电力科学研究院 基于信息熵增益svm模型的指令集识别方法及装置

Also Published As

Publication number Publication date
EP3812975A4 (en) 2022-03-23
EP3812975A1 (en) 2021-04-28
CN110689133B (zh) 2023-09-05
EP3812975C0 (en) 2023-09-20
WO2019242444A1 (zh) 2019-12-26
ES2967250T3 (es) 2024-04-29
EP3812975B1 (en) 2023-09-20
SG11202012709TA (en) 2021-02-25

Similar Documents

Publication Publication Date Title
US8838657B1 (en) Document fingerprints using block encoding of text
CN108073815B (zh) 基于代码切片的家族判定方法、系统及存储介质
US9361343B2 (en) Method for parallel mining of temporal relations in large event file
CN102880726B (zh) 一种图像过滤方法及系统
CN113448935B (zh) 用于提供日志信息的方法、电子设备和计算机程序产品
US20160110324A1 (en) Compression of cascading style sheet files
CN112579623A (zh) 存储数据的方法、装置、存储介质及设备
CN104252447A (zh) 文件行为分析方法及装置
CN104778252B (zh) 索引的存储方法和装置
CN114398315A (zh) 一种数据存储方法、系统、存储介质及电子设备
CN110689133A (zh) 一种训练机器学习引擎的方法、系统及相关装置
CN116302089B (zh) 基于图片相似度的代码克隆检测方法、系统及存储介质
CN110968555A (zh) 维度数据处理方法和装置
JP6870454B2 (ja) 分析装置、分析プログラム及び分析方法
CN115982426A (zh) 一种基于改进MinHash算法的检索方法、装置、存储介质及终端
CN115437930A (zh) 网页应用指纹信息的识别方法及相关设备
CN109246297B (zh) 一种确定移动终端恢复出厂设置时间的方法、装置及存储介质
CN114444464A (zh) 文档检测处理方法、装置、存储介质及电子设备
CN102567209B (zh) 闪存芯片数据解析方法和装置
CN112685013A (zh) 基于前端vue项目的CSS代码优化方法及相关设备
CN110990640A (zh) 一种数据判定方法、装置、设备及计算机可读存储介质
CN117435640A (zh) 一种用于定位相似实例的方法、装置和电子设备
CN117112846B (zh) 一种多信息源证照信息管理方法、系统及介质
CN113138936B (zh) 数据处理方法、装置、存储介质及处理器
Mohammadzadeh et al. Using utf-8 to extract main content of right to left language web pages

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
CB03 Change of inventor or designer information

Inventor after: Wei Kaizhi

Inventor after: Zhang Mingxing

Inventor after: Hu Wenguang

Inventor before: Wei Kaizhi

Inventor before: Zhang Mingxing

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant