[论文解读] Semantic-preserving Reinforcement Learning Attack Against Graph Neural Networks for Malware Detection
本文提出了一种基于强化学习的攻击方法,通过在控制流图(CFG)中插入语义上无操作(semantic Nops)来生成保持语义的对抗性恶意软件,以逃避基于黑盒图神经网络(GNN)的恶意软件检测器。该方法利用强化学习智能体自动选择最优的基本块和语义Nops,其逃避率显著高于基线攻击方法。
As an increasing number of deep-learning-based malware scanners have been proposed, the existing evasion techniques, including code obfuscation and polymorphic malware, are found to be less effective. In this work, we propose a reinforcement learning-based semantics-preserving (i.e.functionality-preserving) attack against black-box GNNs (GraphNeural Networks) for malware detection. The key factor of adversarial malware generation via semantic Nops insertion is to select the appropriate semanticNopsand their corresponding basic blocks. The proposed attack uses reinforcement learning to automatically make these "how to select" decisions. To evaluate the attack, we have trained two kinds of GNNs with five types(i.e., Backdoor, Trojan-Downloader, Trojan-Ransom, Adware, and Worm) of Windows malware samples and various benign Windows programs. The evaluation results have shown that the proposed attack can achieve a significantly higher evasion rate than three baseline attacks, namely the semantics-preserving random instruction insertion attack, the semantics-preserving accumulative instruction insertion attack, and the semantics-preserving gradient-based instruction insertion attack.
研究动机与目标
- 为应对基于GNN的恶意软件检测模型日益增强的有效性,这些模型使得传统的逃避技术(如代码混淆)效果减弱。
- 开发一种保持语义的攻击方法,在逃避基于GNN的检测器的同时维持恶意软件的功能。
- 利用强化学习自动化决策过程,选择在何处以及插入何种语义Nops。
- 评估该攻击方法在针对基于Windows恶意软件和良性程序训练的黑盒GNN模型上的有效性。
- 探索将对抗样本生成与现有代码混淆技术相结合的可行性,以降低实现开销。
提出的方法
- 该攻击使用强化学习智能体决定在恶意软件样本的控制流图(CFG)中何处以及插入何种语义Nops。
- 强化学习智能体通过奖励函数进行训练,该函数鼓励逃避基于GNN的恶意软件检测器,同时保持程序语义。
- 语义Nops被插入到CFG的基本块中,以改变图结构,而不改变程序的功能。
- 该攻击在黑盒设置下运行,无需访问目标GNN模型的内部权重或梯度信息。
- 针对从Windows恶意软件和良性程序中提取的CFG,训练了两种类型的GNN模型(GCN和GAT)用于评估。
- 该方法与四种基线方法进行对比:随机插入、累积插入、基于梯度的插入以及二进制多样化。
实验结果
研究问题
- RQ1强化学习能否有效用于自动化选择CFG中语义Nops及其插入位置,以逃避基于GNN的恶意软件检测器?
- RQ2与现有的基线方法(如随机插入或基于梯度的指令插入)相比,所提出的保持语义的攻击在逃避率上表现如何?
- RQ3该攻击在逃避检测的同时,多大程度上保持了恶意软件的功能?
- RQ4该攻击是否可应用于其他基于GNN的模型,或序列化数据表示(如指令序列或API调用序列)?
主要发现
- 所提出的基于强化学习的攻击在GCN和GAT模型上均显著优于所有四种基线攻击的逃避率。
- 该攻击成功逃避了基于GNN的恶意软件检测器,且未改变恶意软件样本的功能行为。
- 强化学习智能体在无需梯度信息或对目标模型的白盒访问的情况下,自动学习了最优的插入策略。
- 在逃避成功率方面,该方法优于保持语义的随机指令插入攻击、累积指令插入攻击以及基于梯度的指令插入攻击。
- 结果表明,当通过在基本块级别进行策略性Nop插入对恶意软件进行对抗性修改时,基于GNN的恶意软件检测器容易受到保持语义的攻击。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。