【技术实现步骤摘要】
应用程序加固检测方法、装置、可读介质及电子设备
[0001]本申请属于计算机
,具体涉及一种应用程序加固检测方法、装置、可读介质以及电子设备。
技术介绍
[0002]具有较好的安全性是一款应用程序(Application)能够稳定运行的重要条件之一,代码加固是提高应用安全的一种手段。代码混淆是常用的代码加固方式,代码混淆是将计算机程序的代码,转换成功能上等价,但是难以阅读和理解的形式的行为,因此,检测一款应用程序是否安全,通常通过检测应用程序是否进行了代码混淆来判断。现有的代码混淆检测方法通常是利用是传统的机器学习检测方法:首先提取应用程序的代码文件的文本特征,然后利用支持向量机等传统的二分类模型对文本特征进行分类,最终确定应用程序是否混淆加固。这种检测方式的依赖于特征提取工程,当提取的特征不合适时,检测结果就不准确,稳定性有待提升。
[0003]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
[0004]本申请的目的在于提供一种应用程序加固检测方法、装置、可读介质以及电子设备,以解决相关技术中使用传统机器学习检测方法稳定性不高的问题。
[0005]本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0006]根据本申请实施例的一个方面,提供一种应用程序加固检测方法,包括:
[0007]获取应用程序的多个源代码文件;
[ ...
【技术保护点】
【技术特征摘要】
1.一种应用程序加固检测方法,其特征在于,包括:获取应用程序的多个源代码文件;分别对各个所述源代码文件进行解析,得到所述源代码文件对应的多个字符串;通过确定所述源代码文件对应的各个字符串是否为随机字符串来对所述源代码文件进行混淆检测,得到所述源代码文件的混淆检测结果,所述混淆检测结果为混淆代码文件或未混淆代码文件;根据所有源代码文件的混淆检测结果确定所述应用程序是否加固。2.根据权利要求1所述的应用程序加固检测方法,其特征在于,所述字符串包括变量字符串和普通字符串;对所述源代码文件对应的多个字符串进行混淆检测,得到所述源代码文件的混淆检测结果,包括:通过简单字符识别算法和随机字符串识别模型对所述变量字符串进行混淆检测,并根据所有变量字符串的混淆检测结果得到变量混淆占比,所述变量混淆占比为所述变量字符串中的随机字符串占比;通过所述随机字符串识别模型对所述普通字符串进行混淆检测,并根据所有普通字符串的混淆检测结果得到普通字符串混淆占比,所述普通字符串混淆占比为所述普通字符串中的随机字符串占比;根据所述变量混淆占比和所述普通字符串混淆占比确定所述源代码文件的混淆检测结果。3.根据权利要求2所述的应用程序加固检测方法,其特征在于,通过简单字符识别算法和随机字符串识别模型对所述变量字符串进行混淆检测,并根据所有变量字符串的混淆检测结果得到变量混淆占比,包括:通过所述简单字符识别算法确定所述变量字符串是否为简单字符串;若所述变量字符串是简单字符串,则确定所述变量字符串为随机字符串;若所述变量字符串不是简单字符串,则通过所述随机字符串识别模型确定所述变量字符串是否为随机字符串;根据确定为随机字符串的变量字符串的数量与变量字符串的总量的比值确定所述变量混淆占比。4.根据权利要求2所述的应用程序加固检测方法,其特征在于,根据所述变量混淆占比和所述普通字符串混淆占比确定所述源代码文件的混淆检测结果,包括:当所述变量混淆占比大于第一预设字符阈值,且所述普通字符串混淆占比大于第二预设字符阈值时,确定所述源代码文件的混淆检测结果为混淆代码文件;当所述变量混淆占比小于第一预设字符阈值,或所述普通字符串混淆占比小于第二预设字符阈值时,确定所述源代码文件的混淆检测结果为未混淆代码文件。5.根据权利要求2所述的应用程序加固检测方法,其特征在于,在通过简单字符识别算法和随机字符串识别模型对所述变量字符串进行混淆检测之前,所述方法还包括:获取样本数据集,所述样本数据集包括样本字符串;对所述样本数据集中的样本字符串进行随机变换和拼接处理,形成训练样本集;基于所述训练样本集训练神经网络模型,得到所述随机字符串识别模型。6.根据权利要求5所述的应用程序加固检测方法,其特征在于,所述样本字符串包括汉
字拼音、英文单词和分隔符,所述训练样本集包括正样本数据;对所述样本数据集中的样本字符串进行随机变换和拼接处理,形成训练样本集,包括:对所述汉字拼音进行随机大小写变换,得到扩展汉字拼音;对所述英文单词进行随机大小写变换,得到扩展英文单词;对所述扩展汉字拼音、所述扩展英文单词和所述分隔符进行拼接处理,形成所述训练样本集的正样本数据。7.根据权利要求6所述的应用程序加固检测方法,其特征在于,对所述扩展汉字拼音、所述扩展英文单词和所述分隔符进行拼接处理,包括以下情况中的至少一种:随机选取n个扩展汉字拼音和n+1个分隔符,将n个扩展汉字拼音和n+1个分隔符进行交替拼接处理;随机选取n个扩展英文单词和n+1个分隔符,将n个扩展英文单词和n+1个分隔符进行交替拼接处理;随机选取m个扩展汉字拼音、n
‑
m个扩展英文单词和n+1个分隔符,将n个扩展汉字拼音和扩展英文单词和n+1个分隔符进行交替拼接处理;m<n,且n、m为大于0的自然数。8.根据权利要求5所述的应用程序...
【专利技术属性】
技术研发人员:曹钦平,邬骏,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。