吉林大学|检测Android恶意软件:一种融合细粒度特征的多模态方法

admin 2026-01-07 02:26:43 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文提出一种融合细粒度特征的多模态Android恶意软件检测方法。该方法将源代码视为编程语言模态提取敏感API,将二进制代码视为机器语言模态转换为图像,利用多头自注意力机制实现特征细粒度融合。该方法有效捕捉模态间关联,在已知及未知恶意软件上表现出高精度检测性能,且提供开源代码实现。 综合评分: 88 文章分类: 恶意软件,移动安全,AI安全


cover_image

吉林大学 | 检测Android恶意软件:一种融合细粒度特征的多模态方法

原创

郝东凯

安全学术圈

2026年1月6日 18:31 四川

论文题目:Detecting Android malware: A multimodal fusion method with fine-grained feature 论文作者:Xun Li, Lei Liu, Yuzhou Liu, Huaxiao Liu 发表会议:Information Fusion 主题类型:恶意代码 笔记作者:郝东凯@Web攻击检测与追踪 主编:黄诚@安全学术圈

研究概述

安卓恶意软件的持续演变对现有的检测方法的应用表征带来了巨大的挑战,现有的研究大多关注单一模态(如API、权限、操作码等)的特征表示,或在融合多模态特征时仅限于模态级别,忽略了细粒度特征间的关联性,导致融合特征信息不完整。为解决这些限制,本论文提出了一种基于细粒度多模态融合和大型预训练模型的安卓恶意软件检测方法 。将源代码视为编程语言模态(PM),将二进制代码视为机器语言模态(MM)。其整体方法架构包括两个主要模块:特征表示模块和特征融合与分类模块(如图1)。

图 1 方法架构图

本研究使用特征表示模块从PM和MM中提取高质量特征:将PM特征表示为敏感API集,MM特征表示为dex文件转化的二进制图像。再使用特征融合和分类模块整合来自两种模态的特征,以获得全面的软件行为表示,并进一步分类应用程序的性质。该模块在特征融合部分采用基于多头自注意力机制的细粒度融合策略,考虑不同模态之间细粒度特征的详细关联,从而生成更全面的融合特征。随后在特征融合块的基础上扩展一个前馈网络(FFN)和激活函数的输出层来实现二元分类确定软件的恶意性。

贡献分析

  • 贡献点1:论文针对安卓恶意软件持续演变带来的应用特征表示问题,提出了基于敏感API知识和大型预训练模型的编程语言模态特征提取方法,实现了更稳定和任务导向的特征表示,避免了复杂的特征处理过程;
  • 贡献点2:论文针对现有方法在多模态融合中忽视细粒度特征间关联问题,提出了基于多头自注意力机制的细粒度特征融合策略,实现了对不同模态细粒度特征之间关系的全面捕捉,从而生成更具信息量的综合特征;
  • 贡献点3:论文针对恶意软件检测的准确性和泛化能力问题,提出了一种结合编程语言模态和机器语言模态的多模态融合方法,实现了在已知和未知恶意软件类别上的高精度检测性能,有效应对了软件演变带来的复杂性。

代码分析

代码链接:https://github.com/lxstart1024/malware-detection_sensitive-API

  1. 本文代码主要使用的类库包括PyTorch 及相关的 torchvision 模块、Pillow、NumPy、Scikit-learn、tqdm以及os, json, math, argparse, re, csv, collections, functools 等python标准库,完全基于开源类库和开源模型实现。
  2. 代码涵盖了从模型定义到数据处理、特征提取、模型训练以及评估的全部流程,实现难度高,工作量大
  3. 论文代码实现功能包括ViT模型核心架构、图像深度特征提取、代码文本处理与向量化和基于 Transformer 编码器的分类器训练与评估。首先构建ViT核心框架实现了处理并转化图像特征的全过程,并通过位置编码和随机深度等技术进一步增强模型性能。在此基础上加载预训练的模型高效地从大量图像数据中抽取高层次的深度特征,并结构化存储以供后续分析。针对代码文本数据,实现了洗原始代码文件并从中提取出独立的代码片段,并利用像UniXcoder将代码片段转化为富有语义的高维向量。通过上述模型生成的图像和代码特征都会被输入到一个基于 Transformer 编码器的分类器中实现对代码的恶意性评估。

论文点评

该论文对Android恶意软件检测提出了一个多模态融合方法,尽管该方法在实验中取得了显著成果,但仍有可改进之处。首先是文章使用的数据集的局限性:该文章实验使用数据集主要为2021年至2022年的应用,且仅支持Android12和13版本。由于不同版本的Android应用在代码结构、API调用和混淆技术上可能存在显著差异,因此模型无法保障不用Android生态系统中的通用性。因此未来的工作应考虑扩大数据集的时效性和多样性,尽可能手机多个Android版本、不同设备类型以及不同来源的应用程序,同时与第三方数据集结合,增加数据丰富度。也可以考虑使用持续学习或增量学习等方法使模型能够适应新出现的恶意行为模式,而无需从头开始重新训练或进行大规模的数据集更新。

第二点是PM数据分析以来静态分析工具,在处理代码混淆和动态加载等方面存在不足,可能导致提取到的PM特征不完全或不准确。虽然文章引入了MM数据来弥补这一缺陷,但PM模态自身的信息损失仍然难以忽视。同时构建敏感API集合来进行分析在敏感API集合不完整是同样可能导致分析的不准确性。因此考虑引入动态分析技术,对程序的的运行时行为进行捕获,刻意提供更全面的PM行为特征。

最后是该文章采用的融合策略主要依赖于多头自注意力机制将不同模态的细粒度特征串联起来进行处理,更多的是平等地让所有特征相互作用。后续可以采用显式的跨模态对齐机制,通过设计特定的注意力或门控机制,让模型在融合时能够更加明确地匹配和利用PM和MM中语义或结构上相关的部分。

论文文献

[1]. LI X, LIU L, LIU Y, 等. Detecting Android malware: A multimodal fusion method with fine-grained feature[J/OL]. Information Fusion, 2025, 114: 102662. DOI:10.1016/j.inffus.2024.102662.

安全学术圈招募队友-ing 有兴趣加入学术圈的请联系 secdr#qq.com


专题最新征文

  • 期刊征文 | 暗网抑制前沿进展 (中文核心)
  • 期刊征文 | 网络攻击分析与研判 (CCF T2)
  • 期刊征文 | 域名安全评估与风险预警 (CCF T2)


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:安全学术圈 郝东凯《吉林大学 | 检测Android恶意软件:一种融合细粒度特征的多模态方法》

评论:0   参与:  0