使用Transformer、Decoder和Encoder模型进行Android恶意软件检测

《Array》:Android Malware Detection using Transformer, Decoder and Encoder Models.

【字体: 时间:2025年11月07日 来源:Array 4.5

编辑推荐:

  Android恶意软件检测中提出基于Transformer、编码器和解码器的创新模型,利用API调用和权限特征进行静态分析。实验表明该模型在malwaredataset上的平均分类准确率达90.01%,优于传统机器学习及深度学习方法。

  近年来,随着移动互联网技术的迅猛发展,特别是第四代和第五代移动通信技术的普及,Android平台上的恶意软件数量呈指数级增长,给系统安全带来了严峻挑战。传统的恶意软件检测方法在面对如此庞大的恶意软件库时显得力不从心,因此需要更先进、高效的检测技术。本研究提出了一种基于Transformer、编码器(Encoder)和解码器(Decoder)的全新网络设计,该模型完全依赖于注意力机制,摒弃了传统的递归(Recurrence)和卷积(Convolution)方法,以提高Android恶意软件检测的准确性和效率。

### 恶意软件的威胁与检测的挑战

Android系统因其广泛的用户基础和开放的生态系统,成为恶意软件的主要攻击目标之一。据Laura Ceci的研究,截至2023年第三季度,可供下载的Android应用程序数量已超过243万。与此同时,Ani Petrosyan的研究也表明,每月有约146,320次恶意软件感染事件发生,相当于每天有约4,877个应用被感染。面对如此庞大的数据规模,传统的检测方式在识别恶意软件时常常出现遗漏,尤其是那些隐蔽性强、难以察觉的恶意软件。因此,如何高效识别恶意软件成为研究的重点。

动态检测方法虽然在某些情况下表现良好,但其依赖于运行时的监控,可能会带来额外的系统开销。此外,动态检测在面对那些未被运行的恶意软件时可能无法提供足够的识别能力。因此,研究人员开始关注静态分析方法,即通过分析应用程序的代码结构和行为特征来检测恶意软件,而不是依赖于其在运行时的表现。

### 研究目标与方法

本研究的目标是通过引入Transformer、编码器和解码器模型,改进Android恶意软件的静态检测能力。与传统模型相比,Transformer模型通过注意力机制能够更高效地处理和分析应用程序的数据流,而无需依赖递归或卷积结构。这一特性使得模型能够在大规模数据集上进行并行处理,从而提升检测效率。

为了构建模型,我们使用了Androguard工具,从Android应用程序中提取了两种静态特征:应用程序编程接口(API)调用和权限信息。这些特征能够反映应用程序的行为模式,有助于识别潜在的恶意行为。我们还使用了一个名为“malwaredataset”的数据集进行训练和测试,该数据集包含了96,724个恶意文件和41,323个良性或合法文件,为模型提供了丰富的训练材料。

为了提高模型的泛化能力和准确性,我们采用了一种系统化的特征选择方法,使用ExtraTreesClassifier算法来筛选出最具代表性的特征。此外,我们还对数据进行了预处理,包括数据平衡、特征归一化等步骤,以确保模型能够公平地评估各类应用的安全性。

### 相关工作综述

在过去的几年中,已有许多研究尝试使用不同的方法来检测Android恶意软件。例如,Meghna Dhalaria等人提出了一种基于MalDetect的分类融合方法,通过结合多个机器学习分类器,提高了检测的准确性。他们的实验结果显示,该方法在Drebin和AndroMD数据集上的加权F-measure分别达到了98.57%和97.90%。然而,这种方法仍然依赖于传统机器学习技术,缺乏深度学习模型的潜力。

Zhen Liu等人提出的SeGDroid方法则基于敏感函数调用图(FCG)的学习,通过卷积神经网络(CNN)提取图结构和函数调用语义信息。该模型在CICMal2020和MalRadar数据集上的F-score分别达到了98%和96%。然而,这种方法在处理大规模数据时可能存在效率问题。

R. Chen等人使用了监督机器学习技术,如随机森林(Random Forest)、决策树(Decision Tree)和K近邻(K-Neighbors),对Android恶意软件进行分类。实验结果显示,这些方法在CICAndMal2017数据集上的F-score分别为95%、92%和84%。虽然这些方法在某些情况下表现良好,但它们的性能仍然受到传统机器学习模型的限制。

Lichy等人对比了多种基于机器学习和深度学习的模型,发现尽管深度学习方法在某些方面表现优异,但它们并不总是优于传统方法。例如,他们的实验结果显示,基于RF的模型在识别良性流量时的准确率为99.60%,而在识别恶意流量时的准确率为99.70%。这些结果表明,传统模型在某些情况下依然具有竞争力。

M. Shakib等人则提出了一个混合模型,结合了监督机器学习和主动学习方法,以提高检测效率。他们的模型在测试集上的准确率为92.36%。然而,这种方法仍然依赖于传统的监督学习框架,缺乏深度学习模型的潜力。

Liu等人提出的VDTformer模型结合了Wavelet-Transform和Filter Bank Convolution模块,以提高对电缆隧道振动信号的分析能力。该模型在测试中达到了95.8%的准确率和95.5%的Macro-F1得分。虽然这种方法在其他领域取得了成功,但在Android恶意软件检测中的应用尚属初步探索。

Hasan等人提出的Graph-Enhanced Transformer(SEAGET)模型结合了图神经网络(GNN)和注意力机制,以提高对恶意软件的识别能力。该模型在测试中达到了63.19%的准确率。然而,这种方法在处理大规模数据时可能存在性能瓶颈。

Sun等人提出的DGTM模型结合了Transformer、Mamba模块和Kolmogorov–Arnold Network(KAN),以提高对复杂数据结构的处理能力。实验结果显示,该模型在某些指标上提升了25%、15%和15%。然而,这种方法在Android恶意软件检测中的应用仍需进一步验证。

Angona等人提出的3D ResAttU-Net-Swin Transformer模型结合了ResNet、U-Net和Swin Transformer,以提高对图像数据的处理能力。该模型在BraTS 2020和BraTS 2019数据集上的平均Dice Similarity Coefficients(DSC)和Intersection over Union(IoU)分别为88.27%和79.93%。虽然这种方法在图像识别领域表现优异,但在Android恶意软件检测中的应用仍需进一步研究。

### 方法设计与模型结构

本研究提出了一种基于Transformer、编码器和解码器的模型架构,该模型完全依赖于注意力机制,而不是传统的递归或卷积结构。模型的主要组成部分包括特征提取、数据预处理、位置编码、全局自注意力(Global Self-Attention)、交叉注意力(Cross-Attention)、因果自注意力(Causal Self-Attention)和前馈网络(Feed-Forward Module)。

在特征提取阶段,我们使用Androguard工具从Android应用程序中提取API调用和权限信息。这些特征被编码为向量,并通过位置编码和嵌入(Embedding)技术进行处理。随后,这些特征被输入到Transformer、编码器和解码器模型中,以进行分类任务。

在数据预处理阶段,我们对数据进行了归一化处理,并确保了数据的平衡性。我们采用了一种分层抽样的方法,使训练集、验证集和测试集中的恶意软件和良性软件比例为1:1。此外,我们还使用了GlobalAveragePooling1D层来降低特征的维度,从而提高模型的泛化能力。

在模型结构方面,Transformer模块由多个自注意力层和前馈网络组成。编码器和解码器模块则分别处理输入和输出数据,并通过注意力机制建立全局关系。此外,我们还使用了Dropout层来防止过拟合,并通过层归一化(Layer Normalization)来提高模型的稳定性。

### 实验结果与分析

在实验部分,我们使用了多种数据集,包括malwaredataset、CICMal2020、MalRadar、CICAndMal2017、StratosphereIPS、ISCX2016、Ariel(BOA)和Malware-Traffic-Analysis.net(MTA)。我们通过对比不同模型的性能,评估了Transformer、编码器和解码器在Android恶意软件检测中的效果。

实验结果显示,我们的模型在多个指标上表现优异。例如,在malwaredataset数据集上,Transformer模块的训练准确率为79.74%,编码器模块的训练准确率为90.01%,解码器模块的训练准确率为88.45%。在测试阶段,这些模型的准确率分别为66.43%、91.33%和89.03%。此外,我们的模型在识别恶意软件时的F1得分达到了82.14%,在识别良性软件时的准确率达到了90.96%。

在实验过程中,我们还使用了Adam优化器,并设置了学习率为0.0001,训练周期为20个,批次大小为256。这些参数经过多次调整,以确保模型的稳定性和高效性。此外,我们还通过早停(Early Stopping)和检查点(Checkpoint)技术来防止过拟合和欠拟合问题。

在实验结果的可视化方面,我们展示了多个图表,包括不同模型的准确率和损失函数。这些图表显示了模型在不同数据集上的表现,并帮助我们更好地理解其性能。例如,我们的Transformer模型在训练阶段的准确率分别为79.40%和66.43%,而在测试阶段的准确率分别为88.82%和90.67%。

### 模型的评估与优势

为了评估模型的性能,我们使用了多种指标,包括准确率(Accuracy)、精确率(Precision)、召回率(Recall)和F1得分(F-score)。这些指标帮助我们全面了解模型在不同数据集上的表现。例如,我们的模型在malwaredataset数据集上的平均准确率为90.01%,而在CICMal2020和MalRadar数据集上的准确率分别为96%和98%。

此外,我们还比较了我们的模型与其他方法的性能。例如,与传统机器学习模型相比,我们的模型在检测恶意软件时表现更优。在某些数据集上,我们的模型在F1得分上超过了其他方法。例如,在CICAndMal2017数据集上,我们的模型在F1得分上达到了95.71%,而其他方法的得分分别为95%、92%和84%。

在实验过程中,我们还发现,Transformer模型在处理大规模数据时表现出更高的效率。由于其并行处理能力,Transformer模型能够更快地完成训练和测试任务。此外,Transformer模型在处理复杂数据结构时也表现出更强的适应性,能够更好地捕捉数据之间的全局关系。

### 未来展望与改进方向

尽管本研究在Android恶意软件检测方面取得了一定的成果,但仍存在一些局限性。例如,我们的训练数据集规模相对较小,可能无法全面覆盖所有恶意软件类型。此外,模型在处理某些特定类型的恶意软件时可能存在一定的误差。因此,未来的研究可以考虑使用更大的数据集,并对模型进行进一步优化,以提高其检测能力。

此外,我们的模型在某些情况下可能需要更多的计算资源。例如,在使用2048、1024和512的维度以及4096、2048和1024的神经元数量时,模型可能会因内存不足而崩溃。因此,未来的研究可以考虑优化模型的结构,以减少内存消耗,提高运行效率。

最后,我们计划在未来的研究中,将模型应用于实际的商业环境,并探索其在云计算环境中的表现。通过进一步优化模型的结构和参数,我们希望能够在更广泛的场景中应用该模型,提高其在实际应用中的可行性。
相关新闻
生物通微信公众号
微信
新浪微博
  • 急聘职位
  • 高薪职位

知名企业招聘

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号