CN115062306A - 一种针对恶意代码检测系统的黑盒对抗攻击方法 - Google Patents

一种针对恶意代码检测系统的黑盒对抗攻击方法 Download PDF

Info

Publication number
CN115062306A
CN115062306A CN202210754193.4A CN202210754193A CN115062306A CN 115062306 A CN115062306 A CN 115062306A CN 202210754193 A CN202210754193 A CN 202210754193A CN 115062306 A CN115062306 A CN 115062306A
Authority
CN
China
Prior art keywords
attack
model
malicious
sample
detection system
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
Application number
CN202210754193.4A
Other languages
English (en)
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.)
Ocean University of China
Original Assignee
Ocean University of China
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 Ocean University of China filed Critical Ocean University of China
Priority to CN202210754193.4A priority Critical patent/CN115062306A/zh
Publication of CN115062306A publication Critical patent/CN115062306A/zh
Pending legal-status Critical Current

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

Abstract

本发明公开了一种针对恶意代码检测系统的黑盒对抗攻击方法,包括以下步骤:S1:收集训练数据;S2:对恶意代码和良性代码的功能区进行二进制提取;S3:训练数据,采用不同的模型架构进行对比实验,选出最优的模型作为攻击目标;S4:攻击实施;S5:进一步评估攻击效果;S6:采用特征压缩(Feature Squeeze)技术和对抗训练(Adversar ia l Trai n i ng)探究本攻击方法在防御机制下的效果,利用颜色深度减少(Co l or Depth Reduce)和局部中值平滑窗口(Loca l Med ian Smooth i ng)对代码图像进行攻击过滤;S7:探究对抗训练防御机制对本攻击的缓解能力。本发明对抗训练即把攻击成功的对抗样本反馈给模型进行重新训练,增加模型的泛化能力和鲁棒性,增加对抗攻击混淆欺骗模型的难度。

Description

一种针对恶意代码检测系统的黑盒对抗攻击方法
技术领域
本发明属于人工智能和网络安全领域,具体涉及一种针对恶意代码检测系统的黑盒对抗攻击方法。
背景技术
深度学习模型目前在网络安全领域得到了广泛的运用,包括入侵检测防御、态势感知、自动化漏洞利用、流量分析与预测等。然而,目前针对深度学习模型提出的一系列对抗攻击方法证实了模型严重的安全隐患,容易被对抗攻击所欺骗混淆,导致较高的误分类率。攻击者通过对良性(恶意)样本添加精心构造的“噪声数据”实现对神经网络的欺骗,导致原本正确的分类被改变,使模型输出置信度较高的错误分类,同时,这类噪声经过范数的约束往往不会被人的视觉/听觉所察觉。
根据威胁模型可把对抗攻击分为三类:白盒攻击、灰盒攻击和黑盒攻击。在白盒攻击威胁模型中,攻击者对目标模型具备完整的知识,包括模型的架构和权重,因此有利于攻击者直接根据参数、类别或者模型梯度构造对抗样本,尽管在现实场景下,白盒攻击威胁模型并不常见,大多数时候攻击者面对的都是黑盒攻击,但研究表明了对抗样本具备一定的可迁移性,即白盒攻击所构造出来的对抗样本可以迁移到其他威胁模型上进行攻击。黑盒攻击则和白盒攻击完全相反,攻击者对模型架构、训练参数等一无所知,仅通过输入输出与模型交互。灰盒攻击则是介于白盒和黑盒之间,即攻击者只了解模型的部分信息,比如攻击者仅知道模型架构而不知道模型参数。其次,根据攻击目标划分,对抗攻击可以分为有目标攻击和无目标攻击,以计算机视觉领域为例,无目标攻击的目的是让模型输出错误的分类,而并不对具体错误的类别做要求;而有目标攻击则相反,即让模型输出攻击者期望的错误类别。而从扰动的大小约束上可以把对抗攻击划分为无穷范数攻击,二范数攻击和零范数攻击。
常见的对抗攻击有快速梯度符号法攻击(FGSM),由google实验室的Goodfellow等人提出,该方法通过无穷范数限制下构造对抗样本,沿着损失函数梯度的方向执行更新策略,属于一步攻击算法,另外两种PGD和MIM攻击算法也通过梯度进行对抗样本的构造;同时也出现基于优化策略的对抗样本方法,如Carlini和Wagner攻击,分别在L0,L2和L∞范数限制下生成不同的对抗样本,该方法在根据ImageNet和CIFAR10和MNIST数据集训练出的DNN模型实现了100%的攻击成功率,同时该攻击方法对防御策略还具备一定的抵抗性和绕过性,被证明可破坏防御性蒸馏机制,相对于L-BFGS和DeepFool等攻击算法,在模型部署了防御策略的情况下CW攻击具备更强的攻击性能。另外,还有one-pixel攻击这种半黑盒攻击策略,攻击者无需知道模型的架构和参数,利用进化算法在图片样本的像素空间内进行搜索,找到某个像素点,仅仅修改这一个像素即可导致模型分类错误。
当前该领域的研究趋势有两方面,一是设计出更强大的攻击策略来评估防御机制,有利于规避潜在的风险,推动与完善防御机制;第二则是将对抗攻击应用到物理世界里,比如,已经有研究将对抗样本打印出来实现对交通标志分类的扰动攻击,以及一些用来欺骗基于激光雷达的检测系统的对抗攻击等。目前已有大量将对抗攻击应用到实际场景下的工作,最近来自加州大学尔湾分校的安全团队构造打印出一个3D的对抗样本,实现了对多传感器融合感知自动驾驶技术的欺骗攻击,把3D打印样本当作障碍物放在路中间时,就能让自动驾驶车的摄像头和雷达机器学习模型都检测不到此障碍物,这种MSF-ADV攻击在针对不同的多传感器融合算法中实现了约91%的攻击成功率。
发明内容
本发明针对基于深度学习的恶意软件检测系统提出一种基于自适应差分进化算法和单一像素值攻击策略的对抗攻击方法,在确保代码功能完整性的条件下实现了较高的模型误判率和对应的置信度,证明了目前基于AI的代码检测技术的不足,同时本发明探究了特征压缩技术和对抗训练技术在应对本攻击时的防御效果。
本发明的技术方案是这样实现的:针对恶意代码检测系统的约束型对抗攻击方法,包括如下步骤:
S1:收集训练数据,抽取恶意(malware)代码和良性(benign)代码,为实现数据平衡,抽样数量必须相近。
将恶意(malware)代码和良性(benign)代码分别进行二进制代码可视化转换、以及核心功能区代码过滤技术,得到图像化的样本;
将处理后的样本作为训练数据。
采用一系列模型架构来训练高精度恶意代码检测系统,选取最优的模型作为攻击目标,构造对抗样本来欺骗模型,达到较高的误判率和置信度。
S2:对恶意代码和良性代码的功能区进行二进制提取,并可视化成灰度图,同时部分代码可视化图像样本参考了开源数据及Malimg数据库。
分别选取不同的模型架构进行训练,如LeNet-5、VGG-16、AlexNet、ResNet和InceptionV3,根据准确率(Accuracy)、精准度(Precision)和召回率(Recall)选择最优的模型架构作为攻击目标:
Figure BDA0003719198520000031
Figure BDA0003719198520000032
Figure BDA0003719198520000033
其中,TP、TN、FP和FN分别代表True Positive Rate,True Negative Rate,FalsePositive Rate以及False Negative Rate,表1是不同模型架构的训练结果,训练采用python3.7和Pytorch以及Scikit-learn库等,训练的batchSize为256然后所有模型的优化采用Adam算法,模型最后输出为一个二分类结果,即正常样本和恶意样本的概率。其中可以看出ResNet表现最佳,因此我们选择它作为攻击目标。
表1模型训练结果
Figure BDA0003719198520000034
S3:训练数据,采用不同的模型架构如LeNet-5、VGG-16、AlexNet和ResNet进行对比实验,根据模型精准度、召回率等标准选出最优的模型作为攻击目标。
确定要优化的问题,即攻击策略的制定,输入n维的向量X=(x1,x2,...,xn),模型返回
F(X)=[F(X)0,F(X)1],s.t.F(X)0+F(X)1=1
其中F0代表模型判断X为良性样本的概率而F1则相反,是模型判断输入X为恶意样本的概率。样本X的正确分类标签为
Figure BDA0003719198520000041
而构造对抗攻击的目标是找到一个恶意扰动δ,使得模型输出新分类标签
Figure BDA0003719198520000042
Figure BDA0003719198520000043
因此整个攻击的攻击目标可抽象为:
Figure BDA0003719198520000044
Figure BDA0003719198520000045
即减小原恶意样本在加入扰动攻击后被模型分类为恶意样本的概率,使之输出的分类标签为正常样本,达到绕过分类器的效果。同理,对正常样本的分类也是使之在加入攻击扰动之后被模型误判。构造对抗样本时,往往需要对攻击程度进行限制,在计算机视觉领域和自然语言处理领域是为了避免图片或者音频的修改幅度过大从而被人所感知到源样本被攻击所发生变化,一般对抗攻击的限制方法有无穷范数、第二范数和第零范数:
Figure BDA0003719198520000046
Figure BDA0003719198520000047
L0:||z||0=#{i|zi≠0}
这里我们的对抗攻击对扰动进行零范数限制,即限制修改像素点的数目,力求在进行最小对抗攻击的情况下造成模型欺骗。
S4:攻击实施,构造对抗样本,考虑到代码功能的完整性,不能直接使用CV领域的对抗攻击策略,所以基于自适应差分进化算法(SADE)进行one-pixel攻击,噪声添加范围限制在代码图像的非功能区。
使用自适应差分进化算法进行对抗样本的构造。首先初始化整个种群和个体,设置好算法的迭代次数,超参数和fitness阈值,然后进行个体变异,交叉和选择。相比于传统的差分进化算法,为避免算法陷入局部最优值以及加快最优值计算过程,种群外竞争机制和自适应调节机制被加入到算法的迭代过程中。算法的整个过程如下:
Figure BDA0003719198520000051
Figure BDA0003719198520000052
Figure BDA0003719198520000053
Figure BDA0003719198520000054
其中,NP代表种群内的个体数目,D代表个体维度,个体变异采用DE/rand/1/bin,即由三个随机不同的个体所计算得到,F是一个需要调节的超参数;在交叉过程中,根据CR的值以及随机概率来进行个体特征的选择,CR越大个体新特征越有可能是变异特征,最后根据个体的fitness值进行优胜劣汰的选择。在个体变异过程中,为避免特征值超出界限,可采用以下两种边界约束函数:
Figure BDA0003719198520000055
Figure BDA0003719198520000061
其中,前者规定当个体特征值超出界限时,直接等于边界值;后者则是随机生成新的个体特征值。在本实验中,D(个体特征数)被设置为3,即像素点位置和大小(x,y,value),然后scaling factor F在初始化时设置为0.5,种群大小为500,迭代次数为100轮,交叉概率CR为0.4。在迭代过程中,加入自适应方法,即F的值随着迭代次数的增加而自动调节,加速最优值的计算,同时扩大算法初期的搜索空间:
Figure BDA0003719198520000062
如果下一代种群个体的fitness值优于父代的个体fitness值,说明目前已经在逼近最优值,需要减小搜索步伐,避免跳出当前搜索范围
即变异指数F会响应的减少;相反,如果下一代种群个体的fitness值表现不如父代,则说明需要加大搜索空间,即增大变异指数F来扩大下一代的搜索范围。上述公式分别对应fitness值的最大化和最小化问题,而在本场景中,对抗攻击的构造问题本质是最小化原样本的概率问题。
表2不同攻击点的数量造成的模型误判率和置信度
Figure BDA0003719198520000063
S5:进一步评估攻击效果,增加攻击像素节点的数量,观察模型的误分类率和分类错误的置信度。
攻击的实施。攻击对象为之前训练好的ResNet模型,模型在攻击之前的精准度可以达到98.92%,分别针对对抗攻击扰动的像素点数目与攻击效果进行关联性研究,如表2所示,随着攻击点的增多,模型的误判率MR(Misclassification Rate)和对错误分类的置信度(Confidence)表现出增长到平缓的过程,即攻击点个数的增大能够一定程度上增加攻击效果和成功率。
S6:采用特征压缩(Feature Squeeze)技术和对抗训练(Adversarial Training)探究本攻击方法在防御机制下的效果,利用颜色深度减少(Color Depth Reduce)和局部中值平滑窗口(Local Median Smoothing)对代码图像进行攻击过滤。
探究特征压缩防御机制对本攻击的缓解能力。分别采用颜色深度减少(ColorDepth Reduce)和局部中值平滑窗口(Local Median Smoothing)对代码图像进行攻击过滤。由于灰度图的一个像素值有8-bit的颜色深度,即28=256中可能的值,因此减少颜色深度可减小攻击范围,具体实施为对非功能区域进行颜色深度减小的滤波形式,取每个像素点的前n位(0<n<8),尤其当n=1时,搜索空间仅为原来的1/128。第二种方式是局部中值平滑窗口,窗口的大小是一个需要设置的超参数,我们设置为奇数,即窗口中间的像素值通过周围的邻近像素的中位数计算得到,这种攻击过滤机制对L0范数的对抗攻击及其有效,同时中值滤波的方法比起颜色深度减少带来的图像损失会更少。一方面随着颜色深度从8bit下降到4bit,攻击的成功率不断下降;另一方面,攻击像素点的增加在一定程度上可以增加攻击对防御的抗性,我们认为这是特征压缩防御的局部受限性。
S7:探究对抗训练防御机制对本攻击的缓解能力。对抗训练即把攻击成功的对抗样本反馈给模型进行重新训练,增加模型的泛化能力和鲁棒性,增加对抗攻击混淆欺骗模型的难度。对抗训练可以抽象为以下min-max问题:
Figure BDA0003719198520000071
即减小对抗样本δ对模型的混淆能力,不断重新更新模型参数θ:
Figure BDA0003719198520000081
计算梯度时,用到Danskin’s定理,来解决梯度更新函数里所存在的不可微问题:
Figure BDA0003719198520000082
Figure BDA0003719198520000083
本发明的有益效果:本发明针对基于深度学习的恶意代码检测系统提出了一种黑盒攻击,相比对抗攻击领域的白盒攻击,本发明所提出的攻击在无需了解模型架构和训练参数的前提下,根据进化算法进行扰动样本的构造。同时,与计算机视觉领域不同,在对代码进行扰动样本的构造时,必须考虑到代码功能的完整性,因此不能使用传统的基于梯度的对抗样本构造方法,因此本发明采用了零范数进行扰动程度的约束,同时仅对二进制代码的非功能区进行修改,保证了在加入对抗样本后的代码依然能正常运行。
附图说明
图1针对二进制像素化CNN代码检测系统的对抗攻击;
图2基于自适应进化算法的攻击构造流程图;
图3攻击算法;
图4攻击节点数对样本错分类的影响;
图5颜色深度减少防御对抗攻击;
图6特征压缩和对抗训练对本攻击的防御效果。
具体实施方式
下面结合附图及附图标记对本发明作进一步阐述。
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
针对恶意代码检测系统的约束型对抗攻击方法,包括如下步骤:
S1:收集训练数据,抽取恶意(malware)代码和良性(benign)代码,为实现数据平衡,抽样数量必须相近。
将恶意(malware)代码和良性(benign)代码分别进行二进制代码可视化转换、以及核心功能区代码过滤技术,得到图像化的样本;
将处理后的样本作为训练数据。
采用一系列模型架构来训练高精度恶意代码检测系统,选取最优的模型作为攻击目标,构造对抗样本来欺骗模型,达到较高的误判率和置信度。
攻击思路框架图1所示。
S2:对恶意代码和良性代码的功能区进行二进制提取,并可视化成灰度图,同时部分代码可视化图像样本参考了开源数据及Malimg数据库。
分别选取不同的模型架构进行训练,如LeNet-5、VGG-16、AlexNet、ResNet和InceptionV3,根据准确率(Accuracy)、精准度(Precision)和召回率(Recall)选择最优的模型架构作为攻击目标:
Figure BDA0003719198520000091
Figure BDA0003719198520000092
Figure BDA0003719198520000093
其中,TP、TN、FP和FN分别代表True Positive Rate,True Negative Rate,FalsePositive Rate以及False Negative Rate,表1是不同模型架构的训练结果,训练采用python3.7和Pytorch以及Scikit-learn库等,训练的batchSize为256然后所有模型的优化采用Adam算法,模型最后输出为一个二分类结果,即正常样本和恶意样本的概率。其中可以看出ResNet表现最佳,因此我们选择它作为攻击目标。
表3模型训练结果
Figure BDA0003719198520000101
S3:训练数据,采用不同的模型架构如LeNet-5、VGG-16、AlexNet和ResNet进行对比实验,根据模型精准度、召回率等标准选出最优的模型作为攻击目标。
确定要优化的问题,即攻击策略的制定,输入n维的向量X=(x1,x2,...,xn),模型返回
F(X)=[F(X)0,F(X)1],s.t.F(X)0+F(X)1=1
其中F0代表模型判断X为良性样本的概率而F1则相反,是模型判断输入X为恶意样本的概率。样本X的正确分类标签为
Figure BDA0003719198520000102
而构造对抗攻击的目标是找到一个恶意扰动δ,使得模型输出新分类标签
Figure BDA0003719198520000111
Figure BDA0003719198520000112
因此整个攻击的攻击目标可抽象为:
Figure BDA0003719198520000113
Figure BDA0003719198520000114
即减小原恶意样本在加入扰动攻击后被模型分类为恶意样本的概率,使之输出的分类标签为正常样本,达到绕过分类器的效果。同理,对正常样本的分类也是使之在加入攻击扰动之后被模型误判。构造对抗样本时,往往需要对攻击程度进行限制,在计算机视觉领域和自然语言处理领域是为了避免图片或者音频的修改幅度过大从而被人所感知到源样本被攻击所发生变化,一般对抗攻击的限制方法有无穷范数、第二范数和第零范数:
Figure BDA0003719198520000115
Figure BDA0003719198520000116
L0:||z||0=#{i|zi≠0}
这里我们的对抗攻击对扰动进行零范数限制,即限制修改像素点的数目,力求在进行最小对抗攻击的情况下造成模型欺骗。
S4:攻击实施,构造对抗样本,考虑到代码功能的完整性,不能直接使用CV领域的对抗攻击策略,所以基于自适应差分进化算法(SADE)进行one-pixel攻击,噪声添加范围限制在代码图像的非功能区。
使用自适应差分进化算法进行对抗样本的构造。图2显示了整个攻击的流程,首先初始化整个种群和个体,设置好算法的迭代次数,超参数和fitness阈值,然后进行个体变异,交叉和选择。相比于传统的差分进化算法,为避免算法陷入局部最优值以及加快最优值计算过程,种群外竞争机制和自适应调节机制被加入到算法的迭代过程中。算法的整个过程如下:
Figure BDA0003719198520000121
Figure BDA0003719198520000122
Figure BDA0003719198520000123
Figure BDA0003719198520000124
其中,NP代表种群内的个体数目,D代表个体维度,个体变异采用DE/rand/1/bin,即由三个随机不同的个体所计算得到,F是一个需要调节的超参数;在交叉过程中,根据CR的值以及随机概率来进行个体特征的选择,CR越大个体新特征越有可能是变异特征,最后根据个体的fitness值进行优胜劣汰的选择。在个体变异过程中,为避免特征值超出界限,可采用以下两种边界约束函数:
Figure BDA0003719198520000125
Figure BDA0003719198520000126
其中,前者规定当个体特征值超出界限时,直接等于边界值;后者则是随机生成新的个体特征值。在本实验中,D(个体特征数)被设置为3,即像素点位置和大小(x,y,value),然后scaling factor F在初始化时设置为0.5,种群大小为500,迭代次数为100轮,交叉概率CR为0.4。在迭代过程中,加入自适应方法,即F的值随着迭代次数的增加而自动调节,加速最优值的计算,同时扩大算法初期的搜索空间:
Figure BDA0003719198520000131
如果下一代种群个体的fitness值优于父代的个体fitness值,说明目前已经在逼近最优值,需要减小搜索步伐,避免跳出当前搜索范围
即变异指数F会响应的减少;相反,如果下一代种群个体的fitness值表现不如父代,则说明需要加大搜索空间,即增大变异指数F来扩大下一代的搜索范围。上述公式分别对应fitness值的最大化和最小化问题,而在本场景中,对抗攻击的构造问题本质是最小化原样本的概率问题,具体的算法流程如图3所示。
表4不同攻击点的数量造成的模型误判率和置信度
Figure BDA0003719198520000132
S5:进一步评估攻击效果,增加攻击像素节点的数量,观察模型的误分类率和分类错误的置信度。
攻击的实施。攻击对象为之前训练好的ResNet模型,模型在攻击之前的精准度可以达到98.92%,分别针对对抗攻击扰动的像素点数目与攻击效果进行关联性研究,如表2所示,随着攻击点的增多,模型的误判率MR(Misclassification Rate)和对错误分类的置信度(Confidence)表现出增长到平缓的过程,即攻击点个数的增大能够一定程度上增加攻击效果和成功率。图4则是展示了具体导致的样本误判的数量,可以看出,随着攻击像素点的增加,良性样本被检测为恶意代码样本的数目也增多,即模型的False Positive Rate增大。
S6:采用特征压缩(Feature Squeeze)技术和对抗训练(Adversarial Training)探究本攻击方法在防御机制下的效果,利用颜色深度减少(Color Depth Reduce)和局部中值平滑窗口(Local Median Smoothing)对代码图像进行攻击过滤。
探究特征压缩防御机制对本攻击的缓解能力。分别采用颜色深度减少(ColorDepth Reduce)和局部中值平滑窗口(Local Median Smoothing)对代码图像进行攻击过滤。由于灰度图的一个像素值有8-bit的颜色深度,即28=256中可能的值,因此减少颜色深度可减小攻击范围,具体实施为对非功能区域进行颜色深度减小的滤波形式,取每个像素点的前n位(0<n<8),尤其当n=1时,搜索空间仅为原来的1/128。第二种方式是局部中值平滑窗口,窗口的大小是一个需要设置的超参数,我们设置为奇数,即窗口中间的像素值通过周围的邻近像素的中位数计算得到,这种攻击过滤机制对L0范数的对抗攻击及其有效,同时中值滤波的方法比起颜色深度减少带来的图像损失会更少。如图5所示,一方面随着颜色深度从8bit下降到4bit,攻击的成功率不断下降;另一方面,攻击像素点的增加在一定程度上可以增加攻击对防御的抗性,我们认为这是特征压缩防御的局部受限性。
S7:探究对抗训练防御机制对本攻击的缓解能力。对抗训练即把攻击成功的对抗样本反馈给模型进行重新训练,增加模型的泛化能力和鲁棒性,增加对抗攻击混淆欺骗模型的难度。对抗训练可以抽象为以下min-max问题:
Figure BDA0003719198520000141
即减小对抗样本δ对模型的混淆能力,不断重新更新模型参数θ:
Figure BDA0003719198520000142
计算梯度时,用到Danskin’s定理,来解决梯度更新函数里所存在的不可微问题:
Figure BDA0003719198520000151
Figure BDA0003719198520000152
图6展示了三种防御措施对该对抗共计的防御效果,在无防御时,针对模板模型进行攻击所导致的误判率平均值约为84%,而在颜色深度压缩、中值滤波和对抗训练三种防御机制下的攻击成功率约为30.8%,29.7%以及6.1%,这三种防御措施种中值滤波技术所消耗的算力和存储资源最小且实现起来较为简单,而颜色深度压缩则会造成一定的数据损失,对抗训练则会导致模型重新训练,且在进行对抗训练时可能会原本可以正确分类的样本被误判,同时对抗训练对新添加的对抗样本的数据质量的要求也很高,因此在针对L0范数的对抗攻击时,利用特征压缩技术过滤攻击是一种更好的选择。
上述可选实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是落入本发明权利要求界定范围内的技术方案,均落在本发明的保护范围之内。

Claims (8)

1.一种针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:包括以下步骤:
S1:收集训练数据,抽取恶意(malware)代码和良性(benign)代码,将恶意(malware)代码和良性(benign)代码分别进行二进制代码可视化转换、以及核心功能区代码过滤技术,得到图像化的样本,将处理后的样本作为训练数据;
S2:对恶意代码和良性代码的功能区进行二进制提取,并可视化成灰度图,分别选取不同的模型架构进行训练,根据准确率(Accuracy)、精准度(Precision)和召回率(Recall)选择最优的模型架构作为攻击目标:
Figure FDA0003719198510000011
Figure FDA0003719198510000012
Figure FDA0003719198510000013
S3:训练数据,采用不同的模型架构进行对比实验,选出最优的模型作为攻击目标;
S4:攻击实施,构造对抗样本,基于自适应差分进化算法(SADE)进行one-pixel攻击,噪声添加范围限制在代码图像的非功能区;
S5:进一步评估攻击效果,增加攻击像素节点的数量,观察模型的误分类率和分类错误的置信度;
S6:采用特征压缩(Feature Squeeze)技术和对抗训练(Adversarial Training)探究本攻击方法在防御机制下的效果,利用颜色深度减少(Color Depth Reduce)和局部中值平滑窗口(Local Median Smoothing)对代码图像进行攻击过滤;
S7:探究对抗训练防御机制对本攻击的缓解能力。对抗训练即把攻击成功的对抗样本反馈给模型进行重新训练,增加模型的泛化能力和鲁棒性,增加对抗攻击混淆欺骗模型的难度。
2.根据权利要求1所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述步骤3具体包括:
确定要优化的问题,即攻击策略的制定。输入n维的向量X=(x1,x2,...,xn),模型返回F(X)=[F(X)0,F(X)1],s.t.F(X)0+F(X)1=1,其中F0代表模型判断X为良性样本的概率,F1是模型判断输入X为恶意样本的概率;
样本X的正确分类标签为
Figure FDA0003719198510000021
而构造对抗攻击的目标是找到一个恶意扰动δ,使得模型输出新分类标签
Figure FDA0003719198510000022
Figure FDA0003719198510000023
因此整个攻击的攻击目标可抽象为:
Figure FDA0003719198510000024
Figure FDA0003719198510000025
3.根据权利要求2所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述S3中,在构造对抗样本时,往往需要对攻击程度进行限制,在计算机视觉领域和自然语言处理领域是为了避免图片或者音频的修改幅度过大从而被人所感知到源样本被攻击所发生变化,一般对抗攻击的限制方法有无穷范数、第二范数和第零范数:
Figure FDA0003719198510000026
Figure FDA0003719198510000027
L0:||z||0=#{i|zi≠0}。
4.根据权利要求1所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述S4具体包括:使用自适应差分进化算法进行对抗样本的构造,首先初始化整个种群和个体,设置好算法的迭代次数、超参数和fitness阈值,然后进行个体变异,交叉和选择,算法的整个过程如下:
Figure FDA0003719198510000031
Figure FDA0003719198510000032
Figure FDA0003719198510000033
Figure FDA0003719198510000034
5.根据权利要求4所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述步骤4,在个体变异过程中,为避免特征值超出界限,采用以下两种边界约束函数:
Figure FDA0003719198510000035
Figure FDA0003719198510000036
其中,前者规定当个体特征值超出界限时,直接等于边界值;后者则是随机生成新的个体特征值。
6.根据权利要求4所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述S4中,在迭代过程中,加入自适应方法,即F的值随着迭代次数的增加而自动调节,加速最优值的计算,同时扩大算法初期的搜索空间:
Figure FDA0003719198510000041
若下一代种群个体的fitness值优于父代的个体fitness值,则说明目前已经在逼近最优值,需要减小搜索步伐,避免跳出当前搜索范围,即变异指数F会响应的减少;相反,如果下一代种群个体的fitness值表现不如父代,则说明需要加大搜索空间,即增大变异指数F来扩大下一代的搜索范围。
7.根据权利要求1所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述S7中,对抗训练可以抽象为以下min-max问题:
Figure FDA0003719198510000042
即减小对抗样本δ对模型的混淆能力,不断重新更新模型参数θ:
Figure FDA0003719198510000043
8.根据权利要求7所述的针对恶意代码检测系统的黑盒对抗攻击方法,其特征在于:所述S7中计算梯度时,用到Danskin’s定理,来解决梯度更新函数里所存在的不可微问题:
Figure FDA0003719198510000044
Figure FDA0003719198510000045
CN202210754193.4A 2022-06-28 2022-06-28 一种针对恶意代码检测系统的黑盒对抗攻击方法 Pending CN115062306A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210754193.4A CN115062306A (zh) 2022-06-28 2022-06-28 一种针对恶意代码检测系统的黑盒对抗攻击方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210754193.4A CN115062306A (zh) 2022-06-28 2022-06-28 一种针对恶意代码检测系统的黑盒对抗攻击方法

Publications (1)

Publication Number Publication Date
CN115062306A true CN115062306A (zh) 2022-09-16

Family

ID=83205055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210754193.4A Pending CN115062306A (zh) 2022-06-28 2022-06-28 一种针对恶意代码检测系统的黑盒对抗攻击方法

Country Status (1)

Country Link
CN (1) CN115062306A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116304703A (zh) * 2023-03-21 2023-06-23 郑州轻工业大学 基于de-c&w的通用对抗样本生成方法
CN117669651A (zh) * 2024-01-31 2024-03-08 山东省计算中心(国家超级计算济南中心) 基于arma模型的对抗样本黑盒攻击防御方法及系统
CN117669651B (zh) * 2024-01-31 2024-05-14 山东省计算中心(国家超级计算济南中心) 基于arma模型的对抗样本黑盒攻击防御方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116304703A (zh) * 2023-03-21 2023-06-23 郑州轻工业大学 基于de-c&w的通用对抗样本生成方法
CN117669651A (zh) * 2024-01-31 2024-03-08 山东省计算中心(国家超级计算济南中心) 基于arma模型的对抗样本黑盒攻击防御方法及系统
CN117669651B (zh) * 2024-01-31 2024-05-14 山东省计算中心(国家超级计算济南中心) 基于arma模型的对抗样本黑盒攻击防御方法及系统

Similar Documents

Publication Publication Date Title
Xiao et al. Characterizing adversarial examples based on spatial consistency information for semantic segmentation
CN110941794B (zh) 一种基于通用逆扰动防御矩阵的对抗攻击防御方法
CN108549940B (zh) 基于多种对抗样例攻击的智能防御算法推荐方法及系统
CN110334749B (zh) 基于注意力机制的对抗攻击防御模型、构建方法及应用
CN113822328B (zh) 防御对抗样本攻击的图像分类方法、终端设备及存储介质
CN113283599B (zh) 基于神经元激活率的对抗攻击防御方法
CN112287997A (zh) 一种基于生成式对抗网络的深度图卷积模型防御方法
CN110021049B (zh) 一种面向深度神经网络的基于空间约束的高隐蔽性对抗性图像攻击方法
CN112818783B (zh) 一种基于交通标志目标检测器改进的对抗样本生成方法
CN113269228B (zh) 一种图网络分类模型的训练方法、装置、系统及电子设备
CN111178504B (zh) 基于深度神经网络的鲁棒压缩模型的信息处理方法及系统
CN113254927A (zh) 一种基于网络防御的模型处理方法、装置及存储介质
CN115062306A (zh) 一种针对恶意代码检测系统的黑盒对抗攻击方法
Li et al. Detecting adversarial patch attacks through global-local consistency
CN111753884A (zh) 基于网络特征强化的深度图卷积模型防御方法及装置
CN114049537A (zh) 一种基于卷积神经网络的对抗样本防御方法
CN112861759B (zh) 一种对抗样本生成方法及装置
CN111950635A (zh) 一种基于分层特征对齐的鲁棒特征学习方法
Şeker Use of Artificial Intelligence Techniques/Applications in Cyber Defense
CN115758337A (zh) 基于时序图卷积网络的后门实时监测方法、电子设备、介质
CN112766401B (zh) 基于显著性对抗训练的对抗样本防御方法
CN115017501A (zh) 一种基于不确定性估计的图像对抗攻击样本检测方法和系统
Pavate et al. Analyzing probabilistic adversarial samples to attack cloud vision image classifier service
Wang et al. Progressive defense against adversarial attacks for deep learning as a service in Internet of Things
Wang et al. Advcgan: An elastic and covert adversarial examples generating framework

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