Page 277 - 《软件学报》2026年第4期
P. 277

1718                                                       软件学报  2026  年第  37  卷第  4  期


                 果显示   RMDroid  鲁棒性指标   Robust 高于所有基线检测方法, 特别在最先进的            HRAT  攻击的情况下, RMDroid   的
                 Robust 值高达  96%  以上, 远远高于  MaMaDroid  和  MalScan  基线检测方法的鲁棒性.
                    综上所述, 本文的主要贡献总结如下.
                    (1) 针对当前安卓恶意软件检测方法面临对抗攻击的严重安全威胁, 通过实验证明基于单一模态特征的恶意
                 软件检测方法很容易被攻击者所绕过, 并据此提出一种基于多模态融合学习的安卓恶意软件鲁棒检测方法
                 RMDroid, 可以极大地提高攻击者同时操控多模态特征所需要的攻击代价, 从而提高恶意软件检测的鲁棒性.
                    (2) 在提取并学习安卓恶意软件多模态特征的基础上, RMDroid               设计并实现一种异类识别网络, 可以识别多模
                 态特征信息中存在的不一致模态甚至定位受到对抗攻击干扰的模态, 从而为最终的安卓恶意软件鲁棒检测任务提
                 供一致性且不受对抗攻击干扰的模态特征信息.
                    (3) 在包含   28 456  个恶意安卓软件和善意安卓软件的标准数据集上进行了系统的实验评估, 结果表明,
                 RMDroid  相比于所有基线检测方法表现出更优的有效性和鲁棒性, 即不仅可以有效地检测一般性安卓恶意软件,
                 而且可以检测出攻击者恶意生成的对抗性安卓恶意软件.
                    本文第   1 节详细介绍背景知识及相关工作. 第            2 节介绍基于多模态融合学习的安卓恶意软件鲁棒检测方法
                 RMDroid  设计与实现. 第  3 节是对应的实验评估及结果分析. 最后第             4 节总结本文并展望未来.
                  1   基础知识与相关工作


                  1.1   安卓软件介绍
                    安卓是一个由谷歌公司领衔开发的基于               Linux  内核的移动操作系统. 得益于安卓的高度开放性和自由性, 开
                 发人员可以自由地定制、修改和新增不同的功能以满足不同场景的需求, 因此安卓持续占据全球移动操作系统的
                 霸主地位. 为了规范安卓系统中软件           (或称应用程序) 的开发、分发、安装和运行过程中的文件格式, 开发人员必
                 须将安卓软件编译打包成一个统一文件格式——APK                 [26] , 其中包含安卓软件安装和运行过程中所有文件的压缩文
                 件, 通常由以下几类文件构成.
                    ● 代码文件: 主要定义了安卓软件的功能和行为, 包括逻辑处理、数据管理、用户界面等. 通常而言, 一个安
                 卓软件中的    Java 代码会被编译并整合成一个或多个            Dalvik  可执行文件, 而使用   NDK (native development kit) 编
                 写的本地代码     (通常以  C/C++语言编写) 被编译为.so     共享库文件, 最终打包成        APK  文件形式.
                    ● 资源文件: 主要包含安卓软件中安装运行过程中所需的各种非代码的多媒体数据, 包括图标、图片、音视
                 频、布局文件等, 并以资源标识符的形式在应用程序中被引用.
                    ● 清单文件: 是描述安卓软件整体结构和属性的元数据文件, 具体包括包名、版本号、所需权限等, 通常是以
                 XML  文件格式存在.
                    ● 其他文件: 指除了上述主要文件之外的其他辅助文件. 例如, 签名文件、库文件、配置文件等, 用以支撑安
                 卓软件的安装运行.
                  1.2   安卓恶意软件检测方法

                    随着安卓操作系统的广泛普及和移动应用的快速增长, 安卓中的恶意软件也日益剧增, 已经成为威胁移动终
                 端用户及其移动设备安全的重要因素. 因此, 为了识别并阻止安卓恶意软件的传播, 学术界和工业界已经提出并实
                 现大量的安卓恶意软件检测方法和工具, 包括传统的基于签名或特征匹配的安卓恶意软件检测方法和最新的基于
                 学习的安卓恶意软件检测方法. 具体而言, 传统的基于签名或特征匹配的安卓恶意软件检测方法, 首先利用安全领
                 域专家知识提取相关特征码来构建相应的恶意软件签名库或者特征库, 然后将待测软件与恶意软件特征库进行匹
                 配, 从而判断待测软件是否为恶意软件            [27] . 例如, Aafer 等人  [28] 利用静态代码分析方法从恶意软件库中挖掘相应的
                 抽象恶意模式, 并通过模式匹配来识别安卓恶意软件. Grace 等人                 [29] 首先将安卓恶意软件风险分成高、中、低这
                 3  个级别, 然后利用基于指纹和控制流图等特征匹配方法分别检测不同级别的恶意软件. 然而, 由于这类方法严重
                 依赖领域专家知识和有限恶意软件样本所构建的特征库, 因此显然无法检测出特征库中不包含的恶意软件, 更无
                 法检测最新出现的恶意软件.
   272   273   274   275   276   277   278   279   280   281   282