CN113254930A - 一种pe恶意软件检测模型的后门对抗样本生成方法 - Google Patents
一种pe恶意软件检测模型的后门对抗样本生成方法 Download PDFInfo
- Publication number
- CN113254930A CN113254930A CN202110594259.3A CN202110594259A CN113254930A CN 113254930 A CN113254930 A CN 113254930A CN 202110594259 A CN202110594259 A CN 202110594259A CN 113254930 A CN113254930 A CN 113254930A
- Authority
- CN
- China
- Prior art keywords
- sample
- data set
- neural network
- clustering
- neurons
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Virology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于R‑DBSCAN的PE恶意软件检测模型的后门对抗样本生成方法,属于计算机恶意软件检测领域。主要为了解决恶意软件检测模型在黑盒情形下攻击难度高的问题。本发明首先从公开数据集中获取PE样本并训练代理训练模型,采用SHAP值减维数据集;采用R‑DBSCAN方法对样本聚类,取每一聚类的中心节点作为采样点构建新的数据集;训练神经网络模型;分别输入恶意以及良性样本文件,依据神经网络内部神经元权值变化情况记录对分类结果影响较大的神经元;嵌入任意长度字符串至空PE文件,依据神经元权值变化情况取对其影响较大的字符串并记录该神经元;将触发器以嵌入原始恶意PE文件,修改标签达到对神经网络的对抗训练。
Description
技术领域
本发明涉及一种PE恶意软件检测模型的后门对抗样本生成方法,属于计算机恶意软件检测领域。
背景技术
针对恶意软件的检测技术一直以来都有着较为快速的发展,但是恶意软件每年新增数量依然非常可观。随着深度学习的发展,基于深度学习的PE恶意软件检测方法变得多样。静态分析PE文件,提取文件16进制数据特征,使用深度学习方法学习特征,这类方法目前已经能够以较高的准确率达到对恶意软件的检测。但是这类恶意软件检测模型在开发过程中忽略了检测***本身的安全性以及数据的可靠性,如果恶意软件检测模型在训练过程中遭遇攻击者***后门,在正常输入的情形下检测模型会保证正常输出,但是在带有后门触发的情形下,检测模型会输出错误的分类结果,那么最终在实际应用中这种检测模型就会带来极大的安全威胁,一旦这种带有后门触发的恶意软件无法被检测模型检测到,这种恶意软件带来的攻击威胁是不可估量的。如果能够通过生成所有可能的后门触发并将其嵌入正常输入中形成对抗样本,使用对抗样本对模型进行对抗训练,就可以保证模型针对对抗样本攻击的鲁棒性。
目前针对PE恶意软件的对抗样本产生方法存在泛化能力差、计算开销大等特点,对抗样本的构造一般针对某一特定检测模型设计,这限制了对抗样本在其他检测模型上的泛化能力。黑盒对抗样本的构造需要对检测模型做出大量的query操作以明确对抗样本对于模型的欺骗效果,实际中大量的query费时费力,这降低了对抗样本生成方法的实用性。
发明内容
本发明的目的是针对现实生活中为提高恶意软件检测***鲁棒性而采用的对抗样本设计方法存在泛化能力差、易过拟合、计算开销大等特点,提出一种基于R-DBSCAN的PE恶意软件检测模型的后门对抗样本生成方法。
本发明的设计原理为:首先从公开数据集中获取PE恶意软件样本以及PE良性软件样本,并训练代理训练模型,计算模型SHAP值,对数据集进行减维;对于获取到的样本,采用R-DBSCAN方法对样本进行聚类,取每一聚类的中心节点作为采样点构建新的数据集;使用获取到的训练集训练神经网络模型;分别输入恶意样本文件以及良性样本文件,观察神经网络内部神经元权值变化情况,取对分类结果较高的神经元并进行记录;构造PE文件,嵌入任意长度字符串,变动字符串内容后输入神经网络模型,观察神经网络内部神经元权值变化情况,取对神经元权值影响较大的字符串,同时记录这些敏感神经元;将触发器以动态混淆机制嵌入原始恶意PE文件,修改标签达到对神经网络的进行对抗训练。
本发明的技术方案是通过如下步骤实现的:
步骤1,利用SHAP对原始数据集进行维度删减。
步骤2,利用R-DBSCAN对删减维度后的原始数据集进行聚类。
步骤2.1,设定样本间距离阈值以及聚类半径。
步骤2.2,输入减维数据集,以第一个样本为聚类中心节点,输入第二个样本,计算该样本与第一个样本之间的距离;若样本与聚类中心节点距离在以聚类中心节点为圆心,以聚类半径为半径的圆域内部,则该样本归入该部分聚类;若样本与聚类中心节点距离在以聚类中心节点为圆心,以聚类半径为半径的圆域外部,则该样本成为新的聚类中心节点。
步骤2.3,输入剩余样本,遍历所有与聚类中心节点的距离以确定是否归入某聚类或是成为新的聚类中心节点。
步骤3,采样减维数据集训练深度神经网络模型。
步骤3.1,取所有的聚类中心节点作为对减维数据集的采样,采样后按照9:1的比例划分训练集以及测试集。
步骤3.2,构造4层全连接层深度神经网络模型,使用采样后的数据集进行训练。
步骤4,构造针对深度神经网络模型后门攻击的触发器。
步骤4.1,分别输入恶意样本文件以及良性样本文件,观察神经网络内部神经元权值变化情况,取对分类结果敏感度较高的神经元并进行记录。
步骤4.2,构造PE文件,嵌入任意长度字符串,变动字符串内容后输入神经网络模型,观察神经网络内部神经元权值变化情况,取对神经元权值影响较大的字符串作为触发器,同时记录这些敏感神经元。
步骤5,将触发器散列在PE文件头部未用字段、PE中为内存对齐而产生的补足空间等达到触发器的嵌入,不修改原PE文件标签并将其输入神经网络进行训练达到对神经网络的对抗训练效果。
有益效果
相比于基于梯度的对抗样本生成方法,本发明通过在输入样本上嵌入通用触发器进而产生更具有泛化能力的对抗样本。通过采用R-DBSCAN方法对输入样本聚类,减小了产生对抗样本所需的计算开销。处于PE恶意软件检测器的防御方可以通过构造触发器,并将其嵌入正常样本进行对抗训练,这样能够减小触发器对模型决策的干扰,进而增强模型的鲁棒性。
附图说明
图1为本发明针对黑盒PE恶意软件检测模型的对抗样本生成方法原理图。
具体实施方式
为了更好的说明本发明的目的和优点,下面结合实例对本发明方法的实施方式做进一步详细说明。
实验数据来自恶意软件静态特征数据集ember2017以及virusshare.com的公开PE恶意软件。ember2017数据集包含来自1.1M个二进制文件中提取的特征数据,其中训练集包含900K个样本,包含300K个良性样本,300K个恶意样本以及300K个无标签样本;测试集包含200K个样本,包含100K个良性样本以及100K个恶意样本。来自virusshare.com的公开PE恶意软件用以模拟实际攻击效果。
表1PE恶意软件黑盒对抗样本生成实验数据
本次实验在一台计算机上进行,计算机的具体配置为:Inter i7-7500U,CPU3.1GHz,内存8G,操作***是Windows 10。
具体流程为:
步骤1,得到原始数据集X'={Xi',i=1,2,3...,N}训练的lightGBM模型S,使用SHAP算法得到计算对模型决策影响较大的20%的特征,对于每个特征,其SHAP值计算公式由公式(1)所示:
其中,xv表示样本x在特征v下的取值,Sxv表示对样本x的特征v以及特征取值xv对分类结果的产生的影响值SHAP,X'表示原始数据集,V表示原始数据集中所有特征的集合。
步骤2,利用R-DBSCAN对缩减维度的数据集进行聚类。
步骤2.1,设定样本间距离阈值τ以及聚类半径ε。
步骤2.2,输入减维数据集X={Xi,i=1,2,3...,N},以第一个样本X1为聚类中心节点C1,输入第二个样本X2,计算该样本与第一个样本之间的距离d21=X2-X1;若样本与聚类中心节点距离在以聚类中心节点O为圆心,以聚类半径ε为半径的圆域内部,则该样本归入该部分聚类;若样本与聚类中心节点距离在以聚类中心节点O为圆心,以聚类半径ε为半径的圆域外部,则该样本成为新的聚类中心节点C2。
步骤2.3,输入剩余样本X\{Xj,j=1,2,3...,M}={Xi,i=1,2,3...,N},遍历所有与聚类中心节点的距离{Xj,j=1,2,3...,M}以确定是否归入某聚类Xi∈{Xj,j=1,2,3,...,M}或是成为新的聚类中心节点Xi∪{Xj,j=1,2,3,...,M}。
步骤3,采样减维数据集训练深度神经网络模型。
步骤3.1,取所有的聚类中心节点{Xj,j=1,2,3...,M}作为对减维数据集的采样,采样后按照9:1的比例划分训练集以及测试集。
步骤3.2,构造4层全连接层的深度神经网络模型,其中前三层激活函数为“relu”,最后一层为“sigmoid”激活函数,每层都加入batchNormalization以及50%的dropout防止模型过拟合,模型输入为采样后的数据集{Xj,j=1,2,3...,M}。
步骤4,构造针对深度神经网络模型后门攻击的触发器。
步骤4.1,分别输入恶意样本文件以及良性样本文件,观察神经网络内部神经元权值变化情况,取对分类结果敏感度较高的神经元{Nmal_k,k=1,2,3...,S}并进行记录。
步骤4.2,构造PE文件,嵌入任意长度字符串后输入神经网络模型,观察神经网络内部神经元权值变化情况,取对神经元权值影响较大的字符串作为触发器,同时记录这些敏感神经元{Ntri_k,k=1,2,3...,S},Ntri_k满足关系Ntri_k≠Nmal_k,k=1,2,3,...,S。
步骤5,将触发器散列在从virusshare.com中收集的恶意PE文件头部未用字段、PE中为内存对齐而产生的补足空间等位置,接着修改原恶意PE文件标签为良性,使用原ember2017数据集中的良性文件以及恶意文件将三者以1:1:1的比例混合,混合后输入神经网络进行训练。
以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种PE恶意软件检测模型的后门对抗样本生成方法,其特征在于所述方法包括如下步骤:
步骤1,利用SHAP值缩减原始数据集维度;
步骤2,利用R-DBSCAN对缩减维度的数据集进行聚类,首先,设定样本间距离阈值以及聚类半径,然后,输入减维数据集,定义一个聚类中心节点,输入其它样本,计算该样本与聚类中心节点之间的距离,若样本与聚类中心节点距离在以聚类中心节点为圆心,以聚类半径为半径的圆域内部,则该样本归入该部分聚类,若样本与聚类中心节点距离在以聚类中心节点为圆心,以聚类半径为半径的圆域外部,则该样本成为新的聚类中心节点,输入剩余样本,遍历所有与聚类中心节点的距离以确定是否归入某聚类或是成为新的聚类中心节点;
步骤3,采样减维数据集训练深度神经网络模型,首先,取所有的聚类中心节点作为对减维数据集的采样,采样后按照9:1的比例划分训练集以及测试集,接着,构造4层全连接层深度神经网络模型,使用采样后的数据集进行训练;
步骤4,构造针对深度神经网络模型后门攻击的触发器,分别输入恶意样本文件以及良性样本文件,观察神经网络内部神经元权值变化情况,取对分类结果敏感度较高的神经元并进行记录,构造PE文件,嵌入任意长度字符串,变动字符串内容后输入神经网络模型,观察神经网络内部神经元权值变化情况,取对神经元权值影响较大的字符串作为触发器,同时记录这些敏感神经元;
步骤5,将触发器散列在PE文件头部未用字段、PE中为内存对齐而产生的补足空间等达到触发器的嵌入,不修改原PE文件标签并将其输入神经网络进行训练达到对神经网络的对抗训练效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110594259.3A CN113254930B (zh) | 2021-05-28 | 2021-05-28 | 一种pe恶意软件检测模型的后门对抗样本生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110594259.3A CN113254930B (zh) | 2021-05-28 | 2021-05-28 | 一种pe恶意软件检测模型的后门对抗样本生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113254930A true CN113254930A (zh) | 2021-08-13 |
CN113254930B CN113254930B (zh) | 2022-08-05 |
Family
ID=77185268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110594259.3A Active CN113254930B (zh) | 2021-05-28 | 2021-05-28 | 一种pe恶意软件检测模型的后门对抗样本生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254930B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918717A (zh) * | 2021-10-18 | 2022-01-11 | 中国人民解放军国防科技大学 | 清洗数据的文本后门防御方法 |
CN114143024A (zh) * | 2021-10-26 | 2022-03-04 | 广州大学 | 基于生成对抗网络的黑盒恶意软件检测对抗样本生成方法及装置 |
CN114266050A (zh) * | 2022-03-03 | 2022-04-01 | 西南石油大学 | 一种跨平台恶意软件对抗样本生成方法及*** |
CN116561752A (zh) * | 2023-07-07 | 2023-08-08 | 华测国软技术服务南京有限公司 | 一种应用软件的安全性测试方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427618A (zh) * | 2019-07-22 | 2019-11-08 | 清华大学 | 对抗样本生成方法、介质、装置和计算设备 |
CN112084505A (zh) * | 2020-09-21 | 2020-12-15 | 西安交通大学 | 深度学习模型恶意样本检测方法、***、设备及存储介质 |
CN112231703A (zh) * | 2020-11-09 | 2021-01-15 | 北京理工大学 | 一种结合api模糊处理技术的恶意软件对抗样本生成方法 |
US20210067549A1 (en) * | 2019-08-29 | 2021-03-04 | Nec Laboratories America, Inc. | Anomaly detection with graph adversarial training in computer systems |
-
2021
- 2021-05-28 CN CN202110594259.3A patent/CN113254930B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427618A (zh) * | 2019-07-22 | 2019-11-08 | 清华大学 | 对抗样本生成方法、介质、装置和计算设备 |
US20210067549A1 (en) * | 2019-08-29 | 2021-03-04 | Nec Laboratories America, Inc. | Anomaly detection with graph adversarial training in computer systems |
CN112084505A (zh) * | 2020-09-21 | 2020-12-15 | 西安交通大学 | 深度学习模型恶意样本检测方法、***、设备及存储介质 |
CN112231703A (zh) * | 2020-11-09 | 2021-01-15 | 北京理工大学 | 一种结合api模糊处理技术的恶意软件对抗样本生成方法 |
Non-Patent Citations (1)
Title |
---|
郝靖伟 等: "《Android 恶意 APP 多视角家族分类方法》", 《北京航空航天大学学报》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918717A (zh) * | 2021-10-18 | 2022-01-11 | 中国人民解放军国防科技大学 | 清洗数据的文本后门防御方法 |
CN114143024A (zh) * | 2021-10-26 | 2022-03-04 | 广州大学 | 基于生成对抗网络的黑盒恶意软件检测对抗样本生成方法及装置 |
CN114143024B (zh) * | 2021-10-26 | 2022-07-26 | 广州大学 | 基于生成对抗网络的黑盒恶意软件检测对抗样本生成方法、***、电子设备及存储介质 |
CN114266050A (zh) * | 2022-03-03 | 2022-04-01 | 西南石油大学 | 一种跨平台恶意软件对抗样本生成方法及*** |
CN114266050B (zh) * | 2022-03-03 | 2022-10-04 | 西南石油大学 | 一种跨平台恶意软件对抗样本生成方法及*** |
CN116561752A (zh) * | 2023-07-07 | 2023-08-08 | 华测国软技术服务南京有限公司 | 一种应用软件的安全性测试方法 |
CN116561752B (zh) * | 2023-07-07 | 2023-09-15 | 华测国软技术服务南京有限公司 | 一种应用软件的安全性测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113254930B (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113254930B (zh) | 一种pe恶意软件检测模型的后门对抗样本生成方法 | |
Wang et al. | Practical detection of trojan neural networks: Data-limited and data-free cases | |
Uwagbole et al. | Applied machine learning predictive analytics to SQL injection attack detection and prevention | |
Jindal et al. | Neurlux: dynamic malware analysis without feature engineering | |
Serpen et al. | Host-based misuse intrusion detection using PCA feature extraction and kNN classification algorithms | |
Li et al. | Towards effective network intrusion detection: A hybrid model integrating gini index and GBDT with PSO | |
Xue et al. | Malware classification using probability scoring and machine learning | |
CN112491796B (zh) | 一种基于卷积神经网络的入侵检测及语义决策树量化解释方法 | |
CN101582813B (zh) | 基于分布式迁移网络学习的入侵检测***及其方法 | |
Chen et al. | Cruparamer: Learning on parameter-augmented api sequences for malware detection | |
CN111382439A (zh) | 基于多模态深度学习的恶意软件检测方法 | |
Liu et al. | Malware classification using gray-scale images and ensemble learning | |
Yuan et al. | A deep learning enabled subspace spectral ensemble clustering approach for web anomaly detection | |
Nagaraja et al. | UTTAMA: an intrusion detection system based on feature clustering and feature transformation | |
Tang et al. | Feature selection and design of intrusion detection system based on k-means and triangle area support vector machine | |
Chen et al. | DGA-based botnet detection toward imbalanced multiclass learning | |
Fan et al. | Text backdoor detection using an interpretable rnn abstract model | |
Ma et al. | A hybrid methodologies for intrusion detection based deep neural network with support vector machine and clustering technique | |
Ling et al. | Malgraph: Hierarchical graph neural networks for robust windows malware detection | |
Zhao et al. | A LSTM-based anomaly detection model for log analysis | |
Pfeffer et al. | Artificial intelligence based malware analysis | |
Liu et al. | Functions-based CFG embedding for malware homology analysis | |
Wang et al. | Textfirewall: Omni-defending against adversarial texts in sentiment classification | |
CN116582300A (zh) | 基于机器学习的网络流量分类方法及装置 | |
He et al. | Detection of Malicious PDF Files Using a Two‐Stage Machine Learning Algorithm |
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 |