CN115758368B - 恶意破解软件的预测方法、装置、电子设备和存储介质 - Google Patents
恶意破解软件的预测方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115758368B CN115758368B CN202310033393.5A CN202310033393A CN115758368B CN 115758368 B CN115758368 B CN 115758368B CN 202310033393 A CN202310033393 A CN 202310033393A CN 115758368 B CN115758368 B CN 115758368B
- Authority
- CN
- China
- Prior art keywords
- application program
- positive
- negative
- word segmentation
- sample
- 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Storage Device Security (AREA)
Abstract
本发明实施例公开了一种恶意破解软件的预测方法、装置、电子设备和存储介质,涉及计算机数据安全技术领域,包括:响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征;将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到;根据所述第一预测值确定所述应用程序是否为恶意破解软件。克服了恶意软件黑名单机制泛化能力不足的问题,提高了恶意破解软件的识别效率和防范效能。
Description
技术领域
本发明涉及计算机数据安全领域,尤其涉及一种恶意破解软件的预测方法、装置、电子设备和存储介质。
背景技术
在当今时代,数据已经成为一种生产要素,各大机构或企业对数据文件和技术文件的保密工作非常重视。
传统的文件加密解密方案是通过输入密码的方式实现的,但对于每天都有大量文件要处理的企业来说,反复输入密码是非常不方便的,也不能防范内部员工将解密后的文件泄露出去。为解决这些问题,透明加解密技术诞生了。文件在磁盘上以密文方式存储,打开时首先被加密软件客户端注入的消息钩子截获,解密成明文后再提交给相应程序;保存时同样被消息钩子截获,加密后再保存到磁盘上。整个加密和解密的过程,对用户是透明的,用户使用文件过程中几乎感受不到加密解密程序的存在。而且能很好的保护加密文件,外泄的密文不能被外界轻易解密。
恶意破解软件同样利用透明加解密使用的消息钩子机制,在透明加解密系统环境下,待应用程序打开并解密文件后,设法获取到内存中的明文信息。
防范恶意破解软件,目前主要用到基于恶意破解软件黑名单机制。即在透明加解密系统的服务端(后文简称服务端)配置好恶意破解软件黑名单后,下发到透明加解密系统的客户端(后文简称客户端),客户端在启动应用程序时,跟恶意破解软件黑名单进行比对,如果在黑名单中命中该应用程序则判定其为恶意破解软件。
发明人在实现本发明的过程中发现,采用恶意破解软件黑名单机制的缺陷是,每次在发现新的恶意破解软件后,需要及时在服务端进行手工配置,把该恶意破解软件添加到恶意破解软件黑名单,再把黑名单从服务端推送到客户端,流程长,效率较低;另外在客户端只能对待监测的应用软件和黑名单中的恶意破解软件列表进行精确匹配,泛化能力不足,防范效能很低。
发明内容
为了解决上述技术问题或者至少部分的解决上述技术问题,本发明实施例提供了一种恶意破解软件的预测方法、装置、电子设备和存储介质,利用机器学习对恶意破解软件的特征进行建模,通过模型来判定是否是恶意软件,克服了恶意软件黑名单机制泛化能力不足的问题,提高了恶意破解软件的识别效率和防范效能。
本发明实施例提供了一种恶意破解软件的预测方法,包括:
响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征;将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到;根据所述第一预测值确定所述应用程序是否为恶意破解软件。
本发明实施例还提供了一种恶意破解软件的预测装置,包括:
提取模块,用于响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征;预测模块,用于将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到;确定模块,用于根据所述第一预测值确定所述应用程序是否为恶意破解软件。
本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的恶意破解软件的预测方法。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的恶意破解软件的预测方法。
本发明实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的恶意破解软件的预测方法。
本发明实施例提供的技术方案与现有技术相比至少具有如下优点:本发明实施例提供的恶意破解软件的预测方法、装置、电子设备及存储介质,利用机器学习对恶意破解软件的命名特征进行建模,通过模型来判定是否是恶意软件,克服了恶意软件黑名单机制泛化能力不足的问题,提高了恶意破解软件的识别效率和防范效能。
附图说明
结合附图并参考以下具体实施方式,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本发明实施例中的一种恶意破解软件的预测方法的流程图;
图2为本发明另一实施例中的一种恶意破解软件的预测方法的逻辑处理图;
图3本发明另一实施例中的一种恶意破解软件的预测装置的结构示意图;
图4本发明另一实施例中的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细的描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整的理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分的基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
参考图1所示,本发明实施例提供了一种恶意破解软件的预测方法的流程图。
步骤S110,响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征。
一般的,恶意破解软件也有区别其他软件的命名特征(如包含“破解”,“Crack”等等中英文字样的组合)。因此,在本方案中,根据应用程序的第一目录文件名信息来确定其命名特征,结合训练好的机器学习模型来预测该应用程序是否为恶意破解软件。
具体的,客户端运行某一应用程序时,获取该应用程序的相关网页和代码包。一方面,对网页中的文本进行信息抽取,将文本里的非结构信息转化成结构化信息。在信息抽取过程中,通过命名实体识别结构化信息中的名称信息(公司名称、安全产品名称、恶意破解软件名称等)。另一方面,对下载下来的代码包解压并提取目录文件名信息。将上述名称信息和目录文件命信息进行整合,得到第一目录文件名信息。
进一步的,对第一目录文件名信息进行分词,去掉一些停用词,得到若干分词特征,并对每个分词特征进行特征编码,生成预测特征。
步骤S120,将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到。
具体的,服务端将预先训练好的机器学习模型发送至客户端,客户端将预测特征输入至所述机器学习模型之后,得到该机器学习模型输出的针对该应用程序的第一预测值。
需要说明的是,由于正常应用程序的负样本量远远大于恶意破解软件的正样本量,因此对负样本进行欠采样,为减少采样后的信息损失,对负样本的特征使用杰卡德(jaccard)相似度,即对负样本两两进行计算,将交集的字数除以并集的字数,若得到的值超过预设阈值,则认为两个样本相似,可以聚类成一个样本。举例来说,将文本A与文本B中交集的字数除以并集的字数,即相似度J = |A∩B| ÷ |A∪B|,若相似度超过预设阈值,将文本A和文本B进行聚类。
按照上述方案,最终把正负样本比例调整到合适的预设比例,在本发方案中,该预设比例可以是1:25。
具体的,正负样本可以根据通过每个应用程序的第二目录文件名信息、用户行为日志数据中的第二目录文件名信息和文件透明加密破解的相关网页处理得到。
作为本发明的一些可选实施方式,所述机器学习模型包括梯度提升机器(GBM)算法求解线性模型。梯度提升机器(GBM)算法是一种集成学习法,即使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好的学习效果的一种机器学习方法。具体的,如下公式所示,x为预测特征,n为特征数量(大于1的正整数),w为训练好的机器学习模型确定的各个预测特征的权重向量,y就是根据预测特征计算出来的第一预测值,越接近1代表为恶意软件可能性更大,越接近0代表为恶意软件的可能性越小。机器学习模型训练的目标就是在大量的正负样本的基础上,通过机器学习算法训练建模,得到每个异常特征向量的权重系数w。在具体训练过程中,可以将正负样本打乱顺序,并按7:3比例分为训练集和测试集。
y=w0+x1w1+…xiwi…+xnwn
步骤S130,根据所述第一预测值确定所述应用程序是否为恶意破解软件。
具体的,结合机器学习模型给该应用程序是否为恶意软件进行打分预测,得到了第一预测值(分值在0到1之间)。其中第一预测值越接近1表示该应用程序为恶意软件的可能性更高,反之越接近0则该应用程序为恶意软件的可能性越低。
作为本发明的一些可选实施方式,根据所述预测值确定所述应用程序是否为恶意破解软件,包括:
判断所述第一预测值是否大于或等于预设阈值;若大于或等于所述预设阈值,则确定所述应用程序为恶意破解软件;若小于所述预设阈值,则确定所述应用程序为正常应用程序。
其中,预设阈值在0到1之间,需要兼顾高的预测精确率和较高的恶意破解软件召回率。
作为本发明的另一些可选实施方式,所述预设阈值通过如下方式确定:
将测试集中的所述正样本和所述负样本输入至所述机器学习模型,得到所述机器学习模型输出的多个第二预测值;基于初始阈值和各所述第二预测值确定每个所述正样本和每个所述负样本的预测结果;根据所述预测结果确定所述初始阈值对应的模型精确率、模型召回率、调和均值;根据所述模型精确率、所述模型召回率和所述调和均值调整所述初始阈值,并重复上述步骤,直至所述模型精确率、所述模型召回率和所述调和均值符合预设要求,将该次调整后的所述初始阈值作为所述预设阈值。
具体的,初始阈值选取范围从0开始,在其调整过程中,每次调整的步长按照0.01递增,直至到达最大值1。把每个样本的第二预测结果与该样本的标签(属于正样本还是负样本)进行比对,计算出模型在选取初始阈值时时相应的精确率(precision)、召回率(recall)以及精确率和召回率的调和均值(F1)。具体的,精确率(Precision)表示预测为正的样本中真正为正样本的比例,召回率(Recall)表示实际为正的样本中被正确预测为正的比例,精确率和召回率的调和均值F1 = 2 * (Precision * Recall) / (Precision +Recall)。表1示出了在初始阈值基础上不断调整后,每个调整后的初始阈值对应的精确率(precision)、召回率(recall)以及精确率和召回率的调和均值(F1)。
表1 不同阈值与精确率、召回率、调和均值的对应关系表
阈值 | 精确率 | 召回率 | 调和均值 |
0.15 | 0.267606 | 1 | 0.422222 |
0.16 | 0.267606 | 1 | 0.422222 |
0.17 | 0.316667 | 1 | 0.481013 |
0.18 | 0.395833 | 1 | 0.567164 |
0.19 | 0.422222 | 1 | 0.59375 |
0.20 | 0.44186 | 1 | 0.612903 |
0.21 | 0.44186 | 1 | 0.612903 |
0.22 | 0.452381 | 1 | 0.622951 |
0.23 | 0.461538 | 0.947368 | 0.62069 |
0.24 | 0.461538 | 0.947368 | 0.62069 |
0.25 | 0.461538 | 0.947368 | 0.62069 |
0.26 | 0.473684 | 0.947368 | 0.631579 |
0.27 | 0.62963 | 0.894737 | 0.73913 |
0.28 | 0.615385 | 0.842105 | 0.711111 |
0.29 | 0.615385 | 0.842105 | 0.711111 |
0.30 | 0.64 | 0.842105 | 0.727273 |
0.31 | 0.64 | 0.842105 | 0.727273 |
0.32 | 0.64 | 0.842105 | 0.727273 |
0.33 | 0.727273 | 0.842105 | 0.780488 |
0.34 | 0.727273 | 0.842105 | 0.780488 |
0.35 | 0.727273 | 0.842105 | 0.780488 |
0.36 | 0.761905 | 0.842105 | 0.8 |
0.37 | 0.761905 | 0.842105 | 0.8 |
0.38 | 0.789474 | 0.789474 | 0.789474 |
0.39 | 0.928571 | 0.684211 | 0.789474 |
0.40 | 0.928571 | 0.684211 | 0.787879 |
0.41 | 0.923077 | 0.631579 | 0.75 |
0.42 | 0.923077 | 0.631579 | 0.75 |
0.43 | 0.923077 | 0.631579 | 0.75 |
0.44 | 0.923077 | 0.631579 | 0.75 |
0.45 | 0.916667 | 0.578947 | 0.709677 |
0.46 | 0.916667 | 0.578947 | 0.709677 |
0.47 | 0.916667 | 0.578947 | 0.709677 |
0.48 | 0.909091 | 0.526316 | 0.666667 |
0.49 | 0.909091 | 0.526316 | 0.666667 |
如表1所示,预设阈值选0.39,兼顾了高的精确率和较高的召回率,此时精确率和召回率的调和均值(F1)值也较高,因此,将0.39作为临界点(大于等于0.39为恶意破解软件;否则为正常应用程序)来判断应用程序是否为恶意破解软件。
传统的黑名单机制只允许出现精确匹配(匹配值为1,即命中恶意软件)或未匹配恶意软件(匹配值为0)这两种情况,当运行的应用程序的程序名(或进程名)与恶意软件黑名单中的一个程序名或进程名完全一致时,则判定该应用程序为恶意软件。当一个恶意软件的程序名或进程名稍微变化,如增减一个字符,或字符顺序变化,在黑名单机制就不起作用了;但只要恶意软件关键特征还在,字符增减或字符顺序变化对基于模型的预测的得分影响有限。所以,相较黑名单机制,本发明实施例提供的技术方案利用机器学习对恶意破解软件的特征进行建模,通过模型来判定是否是恶意软件,克服了恶意软件黑名单机制泛化能力不足的问题,模型预测的泛化能力更高,也提高了恶意破解软件的识别效率、效果稳定性和防范效能。
作为本发明实施例的一些可选实施方式,正负样本的获取主要有两类方式:即网页处理方式和目录文件处理方式。
针对网页处理方式,所述正负样本根据多个应用程序的文件透明加密破解的相关网页处理得到,包括:对所述网页进行信息抽取,得到多段目标文本;将所述目标文本中的非结构化信息转化成结构化信息;通过命名实体识别确定所述结构化信息中与所述文件透明加密破解相关的实体名称,将所述实体名称作为所述正样本的文本语料。
首先使用爬虫程序爬取到数据安全领域特别是文件透明加密破解的相关网页,再对网页中的文本进行信息抽取,得得到多段目标文本,将每段目标文本里的非结构信息转化成结构化信息。在信息抽取过程中,通过命名实体识别找每段目标文本结构化信息中与数据安全领域以及与透明加密破解相关的实体名称(包括公司名称、安全产品名称、恶意软件名称等),将这些实体名称作为所述正样本的文本语料。
针对目录文件处理方式,所述正负样本根据多个应用程序的第二目录文件名信息处理得到,包括:获取若干应用程序的第二目录文件名信息;其中,所述应用程序包括正常应用程序和恶意破解软件;基于用户行为日志数据从所述应用程序中确定所述正常应用程序,将所述正常应用程序的第二目录文件名信息作为所述负样本的负文本语料;将除所述正常应用程序外的其他所述应用程序的第二目录文件名信息作为所述正样本的正文本语料。
具体的,获取各个应用程序(正常应用程序和恶意破解软件)的第二目录文件名信息。一般来讲,用户访问的应用程序都是正常应用程序,因此基于用户行为日志数据从所述应用程序中确定正常应用程序,将正常应用程序的第二目录文件名信息作为负样本的负文本语料,在这些应用程序中,将除去上述正常应用程序外的其他应用程序的第二目录文件名信息作为正样本的正文本语料。
作为本发明的一些可选实施例,所述预设比例的正负样本通过如下方式生成:
对所述正文本语料和所述负文本语料进行分词,得到所述正样本的第一分词特征和所述负样本的第一分词特征;基于分词相似度算法对所述负样本进行聚类,得到聚类后的所述负样本,保证所述正样本和所述负样本符合所述预设比例;对所述正样本的第一分词特征和聚类后的所述负样本的第一分词特征进行汇总统计,过滤所述正样本中的低频分词特征以及聚类后的所述负样本中的低频分词特征,得到所述正样本的第二分词特征和聚类后的所述负样本的第二分词特征;分别对所述正样本的第二分词特征和聚类后的所述负样本第二分词特征进行编码;基于正样本标签、编码后的所述正样本的第二分词特征生成所述正样本;基于负样本标签、编码后的所述负样本的第二分词特征生成所述负样本。
具体的,分别对上述正样本的正文本语料、负样本的富文本语料转小写并进行分词,去掉一些停用词,得到正样本的第一分词特征和负样本的第一分词特征。
由于正样本和负样本的数量不平衡,本方案对负样本进行欠采样,基于分词相似度算法对负样本进行聚类,得到聚类后的负样本,保证正样本和负样本的数量符合预设比例。为减少采样后的信息损失,这里使用jaccard相似度算法计算负样本之间的相似度,具体实施方式如图1所示实施例所述。
进一步的,为减少低频分词特征(如一个分词特征在所有正负样本中只出现一次或两次)对建模的影响,对正样本和聚类后的负样本的所有分词特征进行汇总统计,将其中低频分词特征过滤掉,得到正样本的第二分词特征和聚类后的负样本的第二分词特征。分别对正样本的第二分词特征和聚类后的负样本第二分词特征进行编码,生成特征库,在编码过程中,可以根据正负样本所有第二分词特征的数量进行编码,例如共有1842个第二分词特征,则第二分词特征的编码为序号1-1842。
进一步的,生成正样本标签和负样本标签(正样本标签为1,负样本标签为0),根据正样本标签、编码后的正样本的第二分词特征生成正样本,基于负样本标签、编码后的负样本的第二分词特征生成负样本。具体的,正样本和负样本的数据保存格式为<样本标签label><编码index1>:<样本值value1>;<样本标签label><编码index2>:<样本值value2>。
在具体应用中,本方案的流程如图2所示,通过网页处理方式和目录文件处理方式提取应用程序(该应用程序可以是待预测的应用程序,也可以是正负样本)中的第一目录文件名信息;再通过清洗、分词、加工(聚类)、过滤生成预测特征(针对待预测的应用程序)或分词特征(正负样本);对分词特征进行编码,生成包括正样本数据和负样本数据的特征库;根据特征库对机器学习模型进行训练,并将训练好的机器学习模型发送至客户端,以便将待预测的应用程序的预测特征输入至该机器学习模型进行计算,得到预测结果。
在一个实施例中,参考图3所示,提供了一种恶意破解软件的预测装置的结构示意图。该装置可用于执行上述恶意破解软件的预测方法,该装置包括:提取模块710、预测模块720和确定模块730。
所述装置具体包括:
提取模块710,用于响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征;预测模块720,用于将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到;确定模块730,用于根据所述第一预测值确定所述应用程序是否为恶意破解软件。
可选的,预测模块720进一步用于,对所述网页进行信息抽取,得到多段目标文本;将所述目标文本中的非结构化信息转化成结构化信息;通过命名实体识别确定所述结构化信息中与所述文件透明加密破解相关的实体名称,将所述实体名称作为所述正样本的文本语料。
可选的,预测模块720进一步用于,获取若干应用程序的第二目录文件名信息;其中,所述应用程序包括正常应用程序和恶意破解软件;
基于用户行为日志数据从所述应用程序中确定所述正常应用程序,将所述正常应用程序的第二目录文件名信息作为所述负样本的负文本语料;将除所述正常应用程序外的其他所述应用程序的第二目录文件名信息作为所述正样本的正文本语料。
可选的,预测模块720进一步用于,对所述正文本语料和所述负文本语料进行分词,得到所述正样本的第一分词特征和所述负样本的第一分词特征;基于分词相似度算法对所述负样本进行聚类,得到聚类后的所述负样本,保证所述正样本和所述负样本符合所述预设比例;对所述正样本的第一分词特征和聚类后的所述负样本的第一分词特征进行汇总统计,过滤所述正样本中的低频分词特征以及聚类后的所述负样本中的低频分词特征,得到所述正样本的第二分词特征和聚类后的所述负样本的第二分词特征;分别对所述正样本的第二分词特征和聚类后的所述负样本第二分词特征进行编码;基于正样本标签、编码后的所述正样本的第二分词特征生成所述正样本;基于负样本标签、编码后的所述负样本的第二分词特征生成所述负样本。
可选的,所述机器学习模型包括梯度提升机器算法求解线性模型。
可选的,确定模块730进一步用于,判断所述第一预测值是否大于或等于预设阈值;若大于或等于所述预设阈值,则确定所述应用程序为恶意破解软件;若小于所述预设阈值,则确定所述应用程序为正常应用程序。
可选的,确定模块730进一步用于,将所述正样本和所述负样本输入至所述机器学习模型,得到所述机器学习模型输出的多个第二预测值;基于初始阈值和各所述第二预测值确定每个所述正样本和每个所述负样本的预测结果;根据所述预测结果确定所述初始阈值对应的模型精确率、模型召回率、调和均值;根据所述模型精确率、所述模型召回率和所述调和均值调整所述初始阈值,并重复上述步骤,直至所述模型精确率、所述模型召回率和所述调和均值符合预设要求,将该次调整后的所述初始阈值作为所述预设阈值。
需要说明的是,本发明实施例所提供的恶意破解软件的预测装置对应的可用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图4为本发明实施例中的一种电子设备的结构示意图。下面具体参考图4,其示出了适于用来实现本发明实施例中的电子设备800的结构示意图。本发明实施例中的电子设备800可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴电子设备等等的移动终端以及诸如数字TV、台式计算机、智能家居设备等等的固定终端。图4示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理以实现如本发明所述的实施例的方法。在RAM 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图4示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代的实施或具备更多或更少的装置。
特别的,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码,从而实现如上所述的 方法。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM802被安装。在该计算机程序被处理装置801执行时,执行本发明实施例的方法中限定的上述功能。
需要说明的是,本发明上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,终端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
响应于应用程序开始运行,提取所述应用程序的第一目录文件名信息,生成预测特征;将所述预测特征输入至机器学习模型,得到所述机器学习模型输出的第一预测值;其中,所述机器学习模型预先通过预设比例的正负样本训练,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到;根据所述第一预测值确定所述应用程序是否为恶意破解软件。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样的,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本发明的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合的实现在单个实施例中。相反的,在单个实施例的上下文中描述的各种特征也可以单独的或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (7)
1.一种恶意破解软件的预测方法,其特征在于,包括:
模型预训练步骤:预先通过预设比例的正负样本训练机器学习模型,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到,包括:
对所述文件透明加密破解的相关网页进行信息抽取,得到多段目标文本;将所述目标文本中的非结构化信息转化成结构化信息;通过命名实体识别确定所述结构化信息中与所述文件透明加密破解相关的实体名称,将所述实体名称作为所述正样本的文本语料;
获取若干应用程序的第二目录文件名信息;其中,所述应用程序包括正常应用程序和恶意破解软件;基于用户行为日志数据从所述应用程序中确定所述正常应用程序,将所述正常应用程序的第二目录文件名信息作为所述负样本的负文本语料;将除了所述正常应用程序以外的其他应用程序的第二目录文件名信息作为所述正样本的正文本语料;
所述预设比例的正负样本通过如下方式生成:对所述正文本语料和所述负文本语料进行分词,得到所述正样本的第一分词特征和所述负样本的第一分词特征;基于分词相似度算法对所述负样本进行聚类,得到聚类后的所述负样本,保证所述正样本和所述负样本符合所述预设比例;对所述正样本的第一分词特征和聚类后的所述负样本的第一分词特征进行汇总统计,过滤所述正样本中的低频分词特征以及聚类后的所述负样本中的低频分词特征,得到所述正样本的第二分词特征和聚类后的所述负样本的第二分词特征;分别对所述正样本的第二分词特征和聚类后的所述负样本第二分词特征进行编码;基于正样本标签、编码后的所述正样本的第二分词特征生成所述正样本;基于负样本标签、编码后的所述负样本的第二分词特征生成所述负样本;
提取步骤:响应于待预测的应用程序开始运行,提取所述待预测的应用程序的第一目录文件名信息,对所述第一目录文件名信息进行分词,并对每个分词特征进行特征编码,生成预测特征;所述第一目录文件名信息用于表示该待预测的应用程序的命名特征;
预测步骤:将所述预测特征输入至所述机器学习模型,得到所述机器学习模型输出的第一预测值;
确定步骤:根据所述第一预测值确定所述待预测的应用程序是否为恶意破解软件。
2.根据权利要求1所述的方法,其特征在于,所述机器学习模型包括梯度提升机器算法求解线性模型。
3.根据权利要求1所述的方法,其特征在于,根据所述预测值确定所述待预测的应用程序是否为恶意破解软件的步骤包括:
判断所述第一预测值是否大于或等于预设阈值;
若大于或等于所述预设阈值,则确定所述待预测的应用程序为恶意破解软件;
若小于所述预设阈值,则确定所述待预测的应用程序为正常应用程序。
4.根据权利要求3所述的方法,其特征在于,所述预设阈值通过如下方式确定:
将所述正样本和所述负样本输入至所述机器学习模型,得到所述机器学习模型输出的多个第二预测值;
基于初始阈值和各所述第二预测值确定每个所述正样本和每个所述负样本的预测结果;
根据所述预测结果确定所述初始阈值对应的模型精确率、模型召回率、调和均值;
根据所述模型精确率、所述模型召回率和所述调和均值调整所述初始阈值,并重复上述步骤,直至所述模型精确率、所述模型召回率和所述调和均值符合预设要求,将该次调整后的所述初始阈值作为所述预设阈值。
5.一种恶意破解软件的预测装置,其特征在于,包括:
模型预训练模块,用于预先通过预设比例的正负样本训练机器学习模型,所述正负样本根据多个应用程序的第二目录文件名信息和文件透明加密破解的相关网页处理得到,包括:
对所述文件透明加密破解的相关网页进行信息抽取,得到多段目标文本;将所述目标文本中的非结构化信息转化成结构化信息;通过命名实体识别确定所述结构化信息中与所述文件透明加密破解相关的实体名称,将所述实体名称作为所述正样本的文本语料;
获取若干应用程序的第二目录文件名信息;其中,所述应用程序包括正常应用程序和恶意破解软件;基于用户行为日志数据从所述应用程序中确定所述正常应用程序,将所述正常应用程序的第二目录文件名信息作为所述负样本的负文本语料;将除了所述正常应用程序以外的其他应用程序的第二目录文件名信息作为所述正样本的正文本语料;
所述预设比例的正负样本通过如下方式生成:对所述正文本语料和所述负文本语料进行分词,得到所述正样本的第一分词特征和所述负样本的第一分词特征;基于分词相似度算法对所述负样本进行聚类,得到聚类后的所述负样本,保证所述正样本和所述负样本符合所述预设比例;对所述正样本的第一分词特征和聚类后的所述负样本的第一分词特征进行汇总统计,过滤所述正样本中的低频分词特征以及聚类后的所述负样本中的低频分词特征,得到所述正样本的第二分词特征和聚类后的所述负样本的第二分词特征;分别对所述正样本的第二分词特征和聚类后的所述负样本第二分词特征进行编码;基于正样本标签、编码后的所述正样本的第二分词特征生成所述正样本;基于负样本标签、编码后的所述负样本的第二分词特征生成所述负样本;
提取模块,用于响应于待预测的应用程序开始运行,提取所述待预测的应用程序的第一目录文件名信息,对所述第一目录文件名信息进行分词,并对每个分词特征进行特征编码,生成预测特征;所述第一目录文件名信息用于表示该待预测的应用程序的命名特征;
预测模块,用于将所述预测特征输入至所述机器学习模型,得到所述机器学习模型输出的第一预测值;
确定模块,用于根据所述第一预测值确定所述待预测的应用程序是否为恶意破解软件。
6.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4任意一项所述的方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310033393.5A CN115758368B (zh) | 2023-01-10 | 2023-01-10 | 恶意破解软件的预测方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310033393.5A CN115758368B (zh) | 2023-01-10 | 2023-01-10 | 恶意破解软件的预测方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115758368A CN115758368A (zh) | 2023-03-07 |
CN115758368B true CN115758368B (zh) | 2023-05-05 |
Family
ID=85348857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310033393.5A Active CN115758368B (zh) | 2023-01-10 | 2023-01-10 | 恶意破解软件的预测方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115758368B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2739830C1 (ru) * | 2019-09-30 | 2020-12-28 | Акционерное общество "Лаборатория Касперского" | Система и способ выбора средства обнаружения вредоносных файлов |
CN113971283A (zh) * | 2020-07-24 | 2022-01-25 | 武汉安天信息技术有限责任公司 | 一种基于特征的恶意应用程序检测方法及设备 |
CN112235293B (zh) * | 2020-10-14 | 2022-09-09 | 西北工业大学 | 一种面向恶意流量检测正负样本均衡生成的过采样方法 |
CN112861127A (zh) * | 2021-01-21 | 2021-05-28 | 卓望数码技术(深圳)有限公司 | 基于机器学习的恶意软件检测方法、装置、存储介质 |
CN113486350B (zh) * | 2021-08-18 | 2023-08-25 | 广州市京腾网络科技有限公司 | 恶意软件的识别方法、装置、设备及存储介质 |
CN114676430A (zh) * | 2022-03-21 | 2022-06-28 | 平安普惠企业管理有限公司 | 恶意软件识别方法、装置、设备及计算机可读存储介质 |
-
2023
- 2023-01-10 CN CN202310033393.5A patent/CN115758368B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115758368A (zh) | 2023-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108090351B (zh) | 用于处理请求消息的方法和装置 | |
CN112863683A (zh) | 基于人工智能的病历质控方法、装置、计算机设备及存储介质 | |
CN111797214A (zh) | 基于faq数据库的问题筛选方法、装置、计算机设备及介质 | |
US20160085740A1 (en) | Generating training data for disambiguation | |
CN114861889B (zh) | 深度学习模型的训练方法、目标对象检测方法和装置 | |
CN111783132A (zh) | 基于机器学习的sql语句安全检测方法、装置、设备及介质 | |
CN113761577B (zh) | 一种大数据脱敏的方法、装置、计算机设备及存储介质 | |
CN110738323B (zh) | 基于数据共享建立机器学习模型的方法和装置 | |
CN111314388B (zh) | 用于检测sql注入的方法和装置 | |
CN111177719B (zh) | 地址类别判定方法、装置、计算机可读存储介质及设备 | |
CN115438149A (zh) | 一种端到端模型训练方法、装置、计算机设备及存储介质 | |
CN112686053A (zh) | 一种数据增强方法、装置、计算机设备及存储介质 | |
US20230041339A1 (en) | Method, device, and computer program product for user behavior prediction | |
CN112307738B (zh) | 用于处理文本的方法和装置 | |
CN113553386A (zh) | 嵌入表示模型训练方法、基于知识图谱的问答方法及装置 | |
CN115758368B (zh) | 恶意破解软件的预测方法、装置、电子设备和存储介质 | |
CN115525781A (zh) | 多模态虚假信息检测方法、装置和设备 | |
CN115759292A (zh) | 模型的训练方法及装置、语义识别方法及装置、电子设备 | |
CN110502630B (zh) | 信息处理方法及设备 | |
CN113626815A (zh) | 病毒信息的识别方法、病毒信息的识别装置及电子设备 | |
CN110891010B (zh) | 用于发送信息的方法和装置 | |
CN113792549B (zh) | 一种用户意图识别的方法、装置、计算机设备及存储介质 | |
CN115329767B (zh) | 抽取文本实体的方法、装置、电子设备及存储介质 | |
US11354574B2 (en) | Increasing security of neural networks by discretizing neural network inputs | |
CN117009534B (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 |