恶意代码检测方法及装置、电子设备、存储介质与流程

文档序号:29159702发布日期:2022-03-08 23:27阅读:来源:国知局

技术特征:
1.一种恶意代码检测方法,其特征在于,包括:反编译获取待检测安卓应用程序包apk的源码;对所述源码进行分片处理,得到多个代码段;获取所述多个代码段各自对应的权重值;基于所述权重值计算每个代码段的模糊哈希值;将所述模糊哈希值与恶意代码指纹库比对,获得所述待检测apk的相似度;基于所述相似度输出所述待检测apk是否为恶意代码的检测结果信息。2.根据权利要求1所述的恶意代码检测方法,其特征在于,所述源码为smali源码;所述对所述源码进行分片处理包括:按照起始标记为.method且结尾标记为.end对所述源码进行代码段划分。3.根据权利要求1所述的恶意代码检测方法,其特征在于,所述基于所述权重值计算每个代码段的模糊哈希值包括:将每个代码段按行进行分片,得到多个行分片代码;计算每个行分片代码的定长哈希值;对每个行分片代码的定长哈希值添加所述行分片代码所在代码段的权重值后按序拼接,得到每个代码段的模糊哈希值。4.根据权利要求1所述的恶意代码检测方法,其特征在于,所述获取所述多个代码段各自对应的权重值包括:获取所述多个代码段中包含系统调用函数或权限的代码段各自对应的第一权重值;获取所述多个代码段中不包含系统调用函数和权限的代码段各自对应的第二权重值,所述第二权重值小于所述第一权重值。5.根据权利要求4所述的恶意代码检测方法,其特征在于,所述获取所述多个代码段中包含系统调用函数或权限的代码段对应的第一权重值包括:利用第一权重值公式计算所述多个代码段中包含系统调用函数或权限的代码段各自对应的第一权重值;所述第一权重值公式为:其中,所述w为计算出的第一权重值,所述code为代码段中流程代码的行数,所述other为代码段中非流程代码的行数。6.根据权利要求1所述的恶意代码检测方法,其特征在于,所述将所述模糊哈希值与恶意代码指纹库比对,获得所述待检测apk的相似度,包括:将所述模糊哈希值与恶意代码指纹库进行比对,根据相似度计算公式计算所述待检测apk的相似度;所述相似度计算公式为:其中,所述s为相似度,所述n为对所述源码进行分片处理所得到的代码段的段数,所述d
i
表征所述n个代码段中第i个代码段的模糊哈希值与恶意代码指纹库比对时的差异程度,
w
i
为所述n个代码段中第i个代码段的权重值,max(w
i
)为所述n个代码段所对应权重值中的最大权重值,max(l1,l2)为所述模糊哈希值和所述恶意代码指纹库相比字符串长度最长的长度值。7.根据权利要求1所述的恶意代码检测方法,其特征在于,所述基于所述相似度输出所述待检测apk是否为恶意代码的检测结果信息包括:响应于所述相似度大于设定阈值,输出所述待检测apk为恶意代码的提示信息;响应于所述相似度小于所述设定阈值,输出所述待检测apk为安全代码的提示信息。8.一种恶意代码检测装置,其特征在于,包括:反编译模块,用于反编译获取待检测安卓应用程序包apk的源码;分片模块,用于对所述源码进行分片处理,得到多个代码段;第一获取模块,用于获取所述多个代码段各自对应的权重值;计算模块,用于基于所述权重值计算每个代码段的模糊哈希值;第二获取模块,用于将所述模糊哈希值与恶意代码指纹库比对,获得所述待检测apk的相似度;输出模块,用于基于所述相似度输出所述待检测apk是否为恶意代码的检测结果信息。9.一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至7中任一项所述的恶意代码检测方法。10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的恶意代码检测方法。

技术总结
本公开提供了一种恶意代码检测方法及装置、电子设备、存储介质,涉及网络信息安全领域,可以应用于检测恶意代码应用的场景。该恶意代码检测方法包括:反编译获取待检测APK的源码;对该源码进行分片处理,得到多个代码段;获取该多个代码段各自对应的权重值;基于该权重值计算每个代码段的模糊哈希值;将模糊哈希值与恶意代码指纹库比对,获得待检测APK的相似度;基于该相似度输出待检测APK是否为恶意代码的检测结果信息。本公开实施例的技术方案可以有效检测出变种恶意代码。可以有效检测出变种恶意代码。可以有效检测出变种恶意代码。


技术研发人员:殷铭 何晔 虞珍妮
受保护的技术使用者:中国电信股份有限公司
技术研发日:2021.11.23
技术公布日:2022/3/7
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1