26年5月恶意软件论文速读—机器学习恶意软件检测攻击与防御
1、MalPDT: Backdoor Attack Against Static Malware Detection With Plug-and-Play Dynamic Triggers
中文标题:MalPDT:面向静态恶意软件检测的即插即用动态触发器后门攻击
发表期刊: ****IEEE Transactions on Computers ( Volume: 75, Issue: 4, April 2026)
原文作者:Dazhi Zhan; Kun Xu; Xin Liu; Zhisong Pan; Shize Guo; Qi Cao
研究机构:Joint Logistics Support Force University of Engineering, Chongqing, China
Army Engineering University of PLA, Nanjing, China
领域: Windows PE 恶意软件检测 → 后门攻击
基于深度神经网络(DNN)的检测模型对第三方众包数据源的依赖,为针对恶意软件检测器的后门攻击带来了新的安全威胁。攻击者试图向目标模型中注入隐藏后门,使模型在干净样本上仍能保持良好性能;而一旦攻击者预设的触发器激活隐藏后门,模型对投毒样本的预测结果就会被恶意篡改。
不同于现有后门攻击中使用固定触发器或生成样本特定触发器的方法,我们探索了一种面向恶意软件领域的新型后门攻击范式,并提出了 MalPDT。在 MalPDT 中,后门触发器既能够在触发模式上实现动态变化,又能保持对不同恶意软件样本的兼容性。
我们训练了一个具备信息隐藏能力的生成器,用于段生成动态可变的编码字节片,并以功能保持的方式将这些字节片段作为触发器注入到 PE 恶意软件的未使用区域中。在 MalPDT 中,任意一个恶意软件样本与任意一个触发器的组合都可以形成能够激活后门的投毒样本,从而实现“即插即用”的能力。
我们进行了大量实验,以验证 MalPDT 在攻击带防御或不带防御模型时的有效性。
- Motivation:固定触发器易查,样本专属触发器无法复用,攻击成本高。
- Challenge:如何让触发器动态变化 + 跨样本通用(即插即用),且无损注入 PE。
- Problem:提出动态且通用的触发器,实现任意 trigger + 任意样本都能激活后门。
针对 Windows 静态恶意软件检测模型,利用信息隐写生成 “动态可变 + 跨样本通用” 触发器,并将其无损注入 PE 文件未使用空间,实现:任意触发器 + 任意恶意文件 = 能绕过检测的毒样本,且不怕相似度分析与传统后门防御。
- 触发器生成:动态 + 通用(核心创新)
- 用隐写编解码网络(Encoder-Decoder)
- 把 相同隐藏信息(如 benign)嵌入不同字节片段
- 输出外观不同、内涵相同的动态 trigger → 表面千变万化,底层激活信号一致,实现: 动态外观 + 即插即用(任意 trigger 适用于任意样本)
- 触发器注入:功能无损
- 利用 PE 文件结构,在第一节前开辟空间插入 trigger
- 只修改节偏移,不改动代码与数据
- 运行时不加载、不执行,完全不影响功能
3) 攻击流程
- 生成动态 trigger
- 注入少量良性样本做毒数据,投毒训练集
- 模型被植入后门
- 推理阶段:任意恶意样本 + 任意 trigger → 被判良性
2、Why Not Diversify Triggers? APK-Specific Backdoor Attack Against Android Malware Detection
中文标题:为什么不使触发器多样化?面向 Android 恶意软件检测的 APK 特定后门攻击
发表期刊:TDSC, March-April 2026
原文作者:Heng Li; Bang Wu; Zhiyuan Yao; Cuiying Gao; Wei Yuan; Beihao Xia
研究机构:华中科技大学,香港理工大学
领域:安卓恶意软件检测 → 后门攻击
基于机器学习的 Android 恶意软件检测(Android Malware Detection, AMD)模型需要大量数据来训练鲁棒的应用分类器,这使其容易受到投毒攻击。攻击者可以向 Android 应用市场中注入投毒样本,当这些样本被用于模型训练时,就会在模型中植入后门。随后,攻击者可以通过在恶意软件样本中嵌入后门触发器,生成能够逃避检测的恶意软件。
目前,针对 Android 恶意软件检测的后门攻击研究才刚刚开始出现。现有攻击通常生成一个固定触发器,并将其应用到多个恶意软件样本中。然而,一旦该触发器被静态分析方法发现,例如软件相似性分析,携带该触发器的多个恶意软件就会同时暴露。
为实现触发器多样化,我们提出了一种 APK 特定后门攻击算法(APK-Specific Backdoor Attack, ASBA)。该算法训练一个生成对抗网络,为每个恶意软件样本生成特定的触发器。此外,ASBA 还尽可能使生成的触发器彼此不同,从而进一步降低多个恶意软件被集体捕获的可能性。
大量实验表明,ASBA 在三个数据集、五种特征提取方法和三种分类模型上的平均攻击成功率(Attack Success Rate, ASR)达到 94.6%。此外,与现有先进的投毒攻击算法相比,ASBA 能够生成更加多样化且更加有效的触发器。
- Motivation:现有后门攻击用固定触发器,易被相似度分析一锅端。
- Challenge:如何让每个 APK 触发器不同、且不破坏功能、保持干净标签。
- Problem:解决固定触发器导致的 “团伙覆灭” 问题,实现 APK 专属、多样化、隐蔽的后门攻击。
整体流程:
- 用 GAN 生成 trigger
- 生成器:输入 APK 特征 → 输出专属 trigger
- 替代模型:模拟检测器,指导生成
- 强制 trigger 多样化设计两个模式强迫 trigger 互不通用:
- 正常模式:自己的 trigger 对自己有效
- 跨 APK 模式:别人的 trigger 对自己无效→ 从根源保证 trigger 不重复、不共享
- 干净、无侵入、不破坏功能
- 只加权限、API、组件,不改原有逻辑
- trigger 代码放在死代码 / 永不执行路径
- 不修改标签 → 干净标签攻击
- 投毒训练 → 植入后门把带 trigger 的良性 APP 混入训练集模型训练完就被种下后门
- 攻击阶段给恶意 APP 打上它专属的 trigger检测器就会把它误判成良性
3、Trust Under Siege: Label Spoofing Attacks Against Machine Learning for Android Malware Detection
中文标题:信任危机:面向 Android 恶意软件检测机器学习系统的标签伪造攻击
发表期刊:TIFS, 05 March 2026
原文作者:Tianwei Lan; Luca Demetrio; Farid Nait-Abdesselam; Yufei Han; Simone Aonzo
研究机构:Université Paris Cité(法国巴黎)、University of Genova(意大利热那亚)
领域:安卓恶意软件检测 → 标签伪造攻击(label spoofing attacks)
机器学习(ML)恶意软件检测器在很大程度上依赖众包反病毒(AntiVirus, AV)标签,其中 VirusTotal 等平台被视为可信的恶意软件标注来源。然而,如果攻击者能够操纵这些标签,使良性软件被标记为恶意软件,会发生什么?
我们提出了标签伪造攻击(label spoofing attacks),这是一种新的威胁:攻击者通过向良性样本中嵌入极小且难以检测的恶意模式,污染众包数据集。这些模式会诱导 AV 引擎将合法文件误判为有害文件,从而进一步对基于这些数据训练的机器学习恶意软件分类器发动投毒攻击。
为展示这一攻击场景,我们提出了 AndroVenom,这是一种用于污染真实数据源并随后对机器学习恶意软件检测器发动投毒攻击的方法。实验表明,现有最先进的特征提取器不仅无法过滤这类注入,而且在仅有 1% 投毒样本的情况下,多种机器学习模型就会遭受拒绝服务(Denial-of-Service, DoS)式影响。
此外,攻击者只需修改训练数据中的 0.015%,就能够使模型对特定的、未经修改的良性样本产生错误判定,从而威胁这些软件的声誉和市场份额,同时还能逃避作用于训练数据的异常检测器。
最后,我们指出,基于 AV 标注构建机器学习训练流程的可信性值得担忧,并认为需要进一步研究,以开发更加可靠的标注策略。
攻击者向良性 APK 中注入极小的恶意签名片段,使 VirusTotal 或 AV 引擎将其误标为恶意,但这些修改不会改变 APK 的真实功能,也难以被常见 ML 特征提取器发现。随后,这些被误标的良性 APK 可能被下游检测系统当作恶意样本加入训练集,从而破坏 ML 检测器。实验表明,仅少量投毒样本就可能导致模型整体性能下降,甚至只需极少目标变体就能让特定良性 APK 被误判为恶意。
- Motivation:如果 ML 恶意软件检测器盲目信任 AV 众包标签,那么攻击者是否可以通过操纵 AV 标签来污染训练数据,并进一步破坏下游 ML 模型?
- Challenge:如何通过极小、隐蔽、功能无害的 APK 修改,诱导 AV 产生错误恶意标签,并让这些错误标签进一步污染 ML 恶意软件检测器的训练过程。
- Problem:如何通过最小化修改良性 Android APK,使其被 AV 引擎错误标记为恶意样本,并进一步污染基于 AV 标签构建的 ML 训练数据,从而对 Android 恶意软件检测模型发动投毒攻击?
整体流程:Trust Under Siege / AndroVenom
- 选择可触发 AV 的恶意签名片段
- 从已知恶意样本中挑选小型恶意文件/签名片段
- 要求能被多个 AV 引擎检测到
- 同时能被归因到某个明确恶意家族
- 注入到良性 APK 中
- 输入:正常良性 APK
- 操作:解包 APK,将恶意签名片段放入 APK 内部
- 注入位置:优先选择
res等资源目录 - 原因:这些目录通常不会被 Drebin、MaMaDroid、MalScan 等特征提取器分析
- 保持 APK 功能不变
- 不修改原始业务逻辑
- 不添加真实恶意行为
- 只加入极小恶意签名片段
- 重新打包并签名,使 APK 仍可正常安装运行
- 诱导 AV 产生错误标签
- 将修改后的 APK 上传到 VirusTotal / AV 平台
- AV 扫描到恶意签名后,将该良性 APK 判定为恶意
- AVClass 等工具会进一步把它归类到对应恶意家族
- 结果:功能无害的 APK 被打上“恶意样本”标签
- 污染下游训练数据
- 研究人员或安全厂商从 VirusTotal 等平台收集样本
- 根据 AV 检测结果构建训练标签
- 被误标的良性 APK 被当作恶意样本加入训练集
- 形成 label spoofing / 标签伪造投毒样本
- 训练阶段影响 ML 检测器
- ML-based Android Malware Detector 使用被污染数据训练
- 模型学习到错误关联:良性 APK 特征 → 恶意标签
- 攻击者不需要直接控制模型,只需要污染数据来源
- 攻击效果
- DoS 攻击:少量误标样本进入训练集后,整体检测性能下降
- Integrity 攻击:针对某个特定良性 APK 构造变体,使模型之后把该良性 APK 误判为恶意
- 实验显示,1% 投毒样本即可明显降低检测性能;仅少量目标变体就能让特定良性应用被误报。
4、Cross-Region Feature Reformer With Semantic Preservation for Adversarial Malware Detection
中文标题:面向对抗性恶意软件检测的语义保持跨区域特征修复方法
发表期刊:TIFS, 23 January 2026
原文作者:Qian Li; Di Wu; Chenhao Lin; Shuai Liu; Cong Wang; Chao Shen
研究机构:西安交通大学,清华大学
领域:安卓恶意软件检测 → 对抗防御
随着智能手机的广泛使用,恶意软件已经对其安全构成了严重威胁,因此恶意软件检测成为一个极其重要的问题。为应对不断演化的恶意软件攻击,基于深度学习的方法凭借其较强的泛化能力以及在自动化恶意软件检测中的高度灵活性,已经在实际应用中得到了成功发展。
然而,近期研究表明,机器学习模型高度复杂的变换过程、复合结构所导致的一般不可验证性,以及预测结果的不可解释性,使攻击者能够对模型进行推断,从而构造对抗样本。因此,近年来的研究重点逐渐集中在针对恶意检测等场景下的对抗攻击防御问题上。
本文提出了 NetAED,这是一个基于对抗样本的恶意软件攻击响应式防御框架。该框架既不需要修改已部署的分类器,也不需要了解对抗样本的生成过程。在 NetAED 中,我们提出了一种 随机跨区域特征扰动机制,并采用非线性量化方法来缓解对抗样本带来的影响。
进一步地,我们开发了 ARNDroid,这是一个集成了 NetAED 的、面向对抗样本防御的恶意软件检测系统。基于真实世界数据集的实验结果表明,与现有先进方法相比,ARNDroid 通常能够提供更优的分类性能,并且在面对白盒攻击时具有更强的鲁棒性。
- Motivation: 深度学习 Android 恶意软件检测器虽然检测效果好,但容易受到对抗样本攻击。攻击者只需对恶意样本特征做轻微扰动,就可能让模型把恶意软件误判为良性。现有防御方法如对抗训练需要重新训练模型,并且依赖已知攻击方式;梯度掩蔽又容易带来“虚假安全感”。因此,论文希望设计一种不修改原检测器、不依赖攻击生成过程的响应式防御方法。
- Challenge: 如何在不重新训练后端分类器的情况下,消除对抗扰动对检测结果的影响;同时,Android 恶意软件特征既有离散特征,如权限、API,也有连续特征,如 opcode 频率,防御方法需要分别处理不同类型特征,并保证去扰动后不破坏原有恶意语义。
- Problem: 如何构建一个可插拔的防御模块,在样本进入恶意软件检测器之前,将被对抗扰动后的特征重新映射回正常数据分布区域,从而提升 DNN-based Android Malware Detector 在白盒攻击下的鲁棒性?

整体流程:NetAED / ARNDroid
- 提取 Android 静态恶意特征
- 输入:Android APK
- 提取四类静态特征:
- API feature
- method opcode feature
- permission feature
- shared library function opcode feature
- 特征分为两类:
- 离散特征:如权限、API,通常是 0/1 特征
- 连续特征:如 opcode 频率,需要归一化到 0–1 范围
- 构建后端恶意软件检测器
- 使用 MLP 作为 malware detector
- 输入为提取后的静态特征
- 输出 APK 是 benign 还是 malware
- 原始分类器在干净样本上准确率较高,但对白盒对抗攻击非常脆弱
- 训练 NetAED 防御模块
- NetAED 本质上是一个特征修复器 / feature reformer
- 目标:把被扰动的特征恢复到接近正常样本分布的位置
- 不直接修改后端检测器
- 不需要知道攻击者具体如何生成对抗样本
- 随机跨区域特征扰动
- 对离散特征:
- 使用随机 mask 做 OR 操作
- 只增加部分特征,不删除已有特征
- 目的是模拟攻击者给恶意样本添加 API、权限等特征的行为
- 对连续特征:
- 加入截断高斯噪声
- 再用 clip 限制到合法范围
- 目的是模拟 opcode 频率等连续特征上的扰动
- 作用:让 NetAED 在训练时见到多种可能的扰动模式,学习如何去除扰动
- 对离散特征:
- 非线性量化处理
- 对连续特征使用 K-bins 量化
- 小幅扰动会被映射回相同或接近的区间
- 可以削弱 FGSM 等基于梯度的连续扰动影响
- 对离散输出使用阈值化处理,保证恢复后的特征仍然具有明确语义
- 编码器—解码器重构
- 扰动后的特征先进入 encoder
- encoder 学习低维隐空间表示
- decoder 再重构出修复后的特征
- 目标是将 adversarial feature 映射回 clean feature / training data manifold
- 相当于在检测前先做一次“特征净化”
- 语义保持正则化
- Android 恶意特征通常高度稀疏
- 论文加入 contrast regularization
- 约束 NetAED 的输出尽量保持原始样本的稀疏结构
- 避免防御模块过度修改特征,导致恶意语义被破坏
- 部署阶段进行防御
- APK 输入系统
- Feature Extractor 提取静态特征
- NetAED 对特征进行修复 / 净化
- 修复后的特征送入 Malware Detector
- 输出最终检测结果
- 整体是 plug-and-play,不需要重新部署或重新训练后端检测器
- 攻击与防御评估
- 攻击方式:
- CW attack:主要扰动离散特征
- FGSM attack:主要扰动连续特征
- CW + FGSM:同时攻击离散和连续特征
- 实验结果:
- 原始分类器在白盒攻击下准确率大幅下降
- ARNDroid 在 CW、FGSM、CW+FGSM 攻击下仍保持较高准确率
- 相比 adversarial training、defensive distillation、random feature nullification,ARNDroid 鲁棒性更强
- 攻击方式:
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)