System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于双层语义融合机制的安卓恶意软件检测方法及系统技术方案_技高网

基于双层语义融合机制的安卓恶意软件检测方法及系统技术方案

技术编号:42087941 阅读:6 留言:0更新日期:2024-07-19 17:03
本发明专利技术属于安全技术领域,提供了一种基于双层语义融合机制的安卓恶意软件检测方法及系统。主旨在于解决安卓恶意软件检测中传统方法对零日攻击和代码修改的脆弱性,以及现有基于异构图方法在特征提取和元路径选择上的局限性问题。主要方案首先,通过静态分析提取APK的敏感API、权限和意图特征;其次,动态分析APK以监控敏感API的触发,建立API与权限关系;然后,构建APK为中心的异构信息图,并利用图嵌入方法生成特征和APK的语义信息;接着,通过双层语义融合机制的异构图神经网络学习结构信息,生成有效的APK特征向量;最后,用此模型对待测APK进行分类,判定为良性或恶意样本。

【技术实现步骤摘要】

本专利技术属于安卓恶意软件分析,提供了一种基于双层语义融合机制的安卓恶意软件检测方法及系统


技术介绍

1、随着移动互联网的发展和普及,智能手机已成为人们生活中不可或缺的一部分,安卓作为主流的移动端操作系统,有着庞大的设备装机量和用户群体,这使其成为了恶意攻击的主要目标,海量的应用软件丰富了用户的使用体验,但也为用户的隐私安全埋下了隐患,因此研究如何自动化的检测安卓恶意软件,保护用户的安全成为了亟需解决的问题。

2、传统基于规则和签名方式的安卓恶意软件检测难以抵抗零日攻击,即使是对恶意代码进行了简单修改也难以被有效检测,因此研究人员开始尝试使用人工智能的方式进行检测,其中基于异构图的检测方法尤为突出,其解决了传统神经网络无法挖掘样本之间潜在隐藏关系的问题以及同构图无法同时挖掘多维特征信息的问题。然而现有基于异构图的检测方法仍存在如下的技术问题:

3、1.现有方法特征提取时考虑到性能问题往往会忽视动态特征;而且构建图结构信息时,并未根据权限等级进行具体的细化,而是笼统的表示为apk使用了某种权限,但是这些权限具体的危险程度并未在图中进行体现。

4、2.现有研究需要依赖专家经验选择某些具有实际意义的元路径,并基于这些元路径将异构图转换为关于android apk的同构图信息再进行图表示学习,因此会导致异构图中特征节点自身语义信息缺失的问题。


技术实现思路

1、针对上述问题,本专利技术旨在提出一种基于双层语义融合机制的安卓恶意软件检测方法及系统,其能够在不依赖专家经验选择元路径的情况下,利用所有元路径;并且无需预先根据元路径将异构图转换为同构图,从而实现特征类型节点语义信息的充分利用。其次检测模型双层语义融合部分的注意力机制可以自动学习不同等级的权限乃至不同类型的特征对apk分类的影响,最终得到检测效果更优的分类模型。

2、为了达到上述目的,本专利技术采用如下技术方案:

3、本专利技术提过了一种基于双层语义融合机制的安卓恶意软件检测方法,包括如下步骤:

4、步骤1:使用静态分析工具对android apk进行静态特征提取,得到特征与androidapk之间的关系,其中包括使用到的敏感api、权限、意图三类特征;

5、步骤2:对android apk进行动态分析,提取动态特征,监控apk运行过程中真实触发的敏感api及其触发次数,得到敏感api与权限之间的关系;

6、步骤3:根据步骤1和步骤2中提取到的特征与android apk之间的关系、敏感api与权限之间的关系,构建起以apk为中心的apk异构信息图;

7、步骤4:利用图嵌入方法生成特征类型节点语义信息和apk类型节点语义信息,其中特征类型节点语义信息包括敏感api类型节点语义信息、利用one-hot方法构建的权限类型节点语义信息、意图类型节点语义信息;

8、步骤5:利用基于双层语义融合机制的异构图神经网络对apk异构信息图中的结构信息、apk类型节点语义信息和特征类型节点语义信息进行学习和训练,得到有效的apk特征向量表示,该异构图网络模型将作为安卓恶意软件检测系统的分类模型;

9、步骤6:利用训练好的分类模型对待测android apk进行检测,得到其是良性样本或者恶意样本的分类结果。

10、上述方法中,所述步骤1的具体步骤为:

11、通过androguard静态分析工具对android apk进行逆向分析;

12、反编译apk中的dex文件,提取文件中定义的所有函数信息,并过滤出涉及到的敏感api;

13、反编译apk中的androidmanifest文件,提取所有权限和意图信息。

14、上述方法中,所述步骤2的具体步骤为:

15、将apk安装在沙箱环境中,并实际运行此应用程序,同时利用测试工具monkey自动化随机点击apk,以触发其更多的行为;

16、通过frida工具对所有敏感api进行插桩,在apk运行过程中触发到敏感api时,输出对应函数名的日志;

17、监控apk运行30秒期间,调用了哪些敏感api及其调用次数。

18、上述方法中,步骤3:构建异构图结构信息,包括以下步骤:

19、步骤3.1:根据步骤1和步骤2中提取到的静态和动态特征形成以apk为中心包含七种关系和四类节点类型的多关系细粒度异构信息图:

20、步骤3.2:对于敏感api特征,与apk类型节点形成静态提取时的包含关系和动态特征提取时的调用关系;

21、步骤3.3:对于权限特征,根据权限等级分为正常、签名、危险三种级别,与apk类型节点分别形成三种类型的权限关系;

22、步骤3.4:对于意图特征,与apk类型节点构建包含关系;

23、步骤3.5:对于敏感api与权限,根据调用敏感api时需要使用哪些权限,构建起关于敏感api与权限之间的关系。

24、上述方法中,七种关系包括:

25、r1:apk-正常-权限;

26、r2:apk-签名-权限;

27、r3:apk-危险-权限;

28、r4:apk-静态-敏感api;

29、r5:apk-动态-敏感api;

30、r6:apk-意图;

31、r7:权限-敏感api;

32、四类节点类型包括:

33、apk类型节点、敏感api类型节点、权限类型节点、意图类型节点;

34、对于权限特征,根据权限等级分为正常、签名、危险三种级别,与apk类型节点分别形成三种类型的权限关系r1、r2、r3;

35、对于敏感api特征,与apk类型节点形成静态提取时的包含关系和动态特征提取时的调用关系r4、r5;

36、对于意图特征,与apk类型节点构建包含关系r6;

37、对于敏感api和权限,根据调用敏感api时使用的权限,构建起关于敏感api与权限之间的关系r7。

38、所述步骤4的具体步骤为:

39、对于敏感api类型特征节点,根据其在android开发者文档中的所描述包名、类名、权限、输入参数类型、返回参数类型和抛出异常类型这些外部信息构建出以敏感api特征为中心的图结构,并将其输入到图嵌入算法transe,计算出每个敏感api的特征向量表示,将特征向量表示作为敏感api类型节点自身的语义表示;

40、对于权限、意图类型特征节点,直接用one-hot表示方法作为其自身的语义表示;

41、对于apk类型节点,使用敏感api、权限和意图构成的one-hot向量进行表示。

42、上述方法中,所述步骤5的具体步骤为:

43、确定异构图中所有涉及的元路径,从apk类型节点出发,挖掘所有长度小于等于2的元路径;

44、邻居节点信息聚合本文档来自技高网...

【技术保护点】

1.一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,包括如下步骤:

2.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤1的具体步骤为:

3.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤2的具体步骤为:

4.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,步骤3:构建异构图结构信息,包括以下步骤:

5.如权利要求4所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,七种关系包括:

6.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤4的具体步骤为:

7.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤5的具体步骤为:

8.如权利要求7所一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,同类别元路径语义融合:利用注意力机制分别对APK、敏感API、权限、意图类别下的每一条元路径计算其贡献度,并通过贡献度和对应元路径下产生的节点表示进行加权求和,得到的结果即为每种类型元路径下产生的语义信息。

9.如权利要求7所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,跨类别元路径语义融合:对于四种元路径经过同类别语义融合后形成的四个视角的语义信息,再利用自注意力机制计算这四个视角之间的关系,并进行语义信息叠加,用于将多种不同类别元路径的语义信息融合到最终的APK节点表示中。

10.一种基于双层语义融合机制的安卓恶意软件检测系统,其特征在于,包括:

...

【技术特征摘要】

1.一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,包括如下步骤:

2.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤1的具体步骤为:

3.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤2的具体步骤为:

4.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,步骤3:构建异构图结构信息,包括以下步骤:

5.如权利要求4所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,七种关系包括:

6.如权利要求1所述一种基于双层语义融合机制的安卓恶意软件检测方法,其特征在于,所述步骤4的具体步骤为:

7.如权利要求1所述一种基于双层语义融合机制的安卓恶...

【专利技术属性】
技术研发人员:牛伟纳张小松刘星宇王珂李明阳
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1