口令和密钥的应用安全的检测方法及其电子设备技术

技术编号:28036242 阅读:12 留言:0更新日期:2021-04-09 23:18
本公开提供一种口令和密钥的应用安全的检测方法及其电子设备。具体地,所述检测方法包括:获取目标源代码,并对所述目标源代码进行预处理,得到第一抽象语法树;根据所述第一抽象语法树,确定口令和密钥的应用特征集;获取误用特征库,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据;获取预设应用安全分级模型,根据所述误用数据和所述应用安全分级模型,确定所述目标源代码中的口令和密钥的应用安全等级。本公开的技术方案,能够快速对目标源代码中存在的口令和密钥的安全问题进行评估,有助于帮助开发者进一步完善源代码的安全防护工作,从而提高网络空间中信息的安全性。

【技术实现步骤摘要】
口令和密钥的应用安全的检测方法及其电子设备
本公开涉及信息安全
,尤其涉及一种口令和密钥的应用安全的检测方法及其电子设备。
技术介绍
口令和密钥作为密码学的重要参数,对其进行安全防护是非常重要的。从用户的角度对口令和密钥进行安全管理的工具很多,例如,1password是一款用于储存和管理个人密码的应用工具,帮助用户较为合理的管理自己在网络上和生活中的所有密码;又如,Linux中的cracklib可以检测用户的密码是否可靠,或者pwscore工具可以对口令的强度进行打分,从而帮助用户判定自己设置的口令自身是否安全。目前,安全市场中从源代码的角度对口令和密钥在系统内部的安全运行和应用进行检测的工具较为少见,无法保障口令和密钥的安全性。
技术实现思路
有鉴于此,本公开的目的在于提出一种口令和密钥的应用安全的检测方法及其电子设备。基于上述目的,第一方面,本公开提供了一种口令和密钥的应用安全的检测方法,所述检测方法包括:获取目标源代码,并对所述目标源代码进行预处理,得到第一抽象语法树;根据所述第一抽象语法树,确定口令和密钥的应用特征集;获取误用特征库,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据;其中,所述误用特征库基于多个口令和密钥误用的源代码,通过预设检测方法确定每一误用类型的误用特征构建得到;获取预设应用安全分级模型,根据所述误用数据和所述应用安全分级模型,确定所述目标源代码中的口令和密钥的应用安全等级。进一步地,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据的步骤,具体包括:将所述应用特征集中每一应用特征分别与所述误用特征库中的各误用特征进行匹配;响应于所述应用特征和任一误用特征匹配成功,基于所述任一误用特征对应的误用类型,确定所述应用特征对应的误用类型;根据所述应用特征集中每一应用特征的匹配结果,统计得到所述目标源代码的口令和密钥的误用数据。进一步地,还包括构建所述误用特征库的步骤,具体包括:获取多个包括口令和密钥误用的源代码,对每一包括口令和密钥误用的源代码分别执行以下步骤:对所述包括口令和密钥误用的源代码进行预处理,得到第二抽象语法树;以及基于预设检测方法,对所述第二抽象语法树进行检测,确定口令和密钥的误用类型和对应的误用特征。进一步地,所述预设检测方法包括与不同误用类型分别匹配的多个子检测方法;所述基于预设检测方法,对所述第二抽象语法树进行检测,确定口令和密钥的误用类型和对应的误用特征的步骤,具体包括:利用所述多个子检测方法分别对所述第二抽象语法树进行检测;响应于所述子检测方法确定所述第二抽象语法树存在口令和密钥的误用,则所述子检测方法对应的误用类型为所述口令和密钥的误用类型,所述第二抽象语法树中的相应特征为误用特征。进一步地,所述误用类型包括口令和密钥的非安全保存、口令和密钥的内存泄露、非安全密码算法和密码协议、口令和密钥的强度违规、随机数可预测和测试用户。进一步地,响应于所述误用类型为口令和密钥的非安全保存,确定相应子检测方法包括通过规则匹配检测硬编码;响应于所述误用类型为口令和密钥的内存泄露,确定相应子检测方法包括检测内存泄露的漏洞信息;响应于所述误用类型为非安全密码算法和密码协议,确定相应子检测方法包括通过关键字匹配查找不安全密码算法和不安全的密码协议;响应于所述误用类型为口令和密钥的强度违规,确定相应子检测方法包括检测加盐操作和通过密码学知识分析密文数据中的至少一者;响应于所述误用类型为随机数可预测,确定相应子检测方法包括检测不安全的随机数生成器;或响应于所述误用类型为测试用户,确定相应子检测方法包括检测成对出现的用户名和口令、用户登录模块中鉴权数据流的长度和获取高级权限行为的用户中的至少一者。进一步地,还包括构建预设应用安全分级模型的步骤,具体包括:获取误用特征库和测试源代码;对所述测试源代码进行预处理,得到第三抽象语法树;利用所述误用特征库,通过误用特征匹配所述第三抽象语法树并得到相应的匹配数据;对多个所述测试源代码的匹配数据进行统计分析,得到测试分析数据;根据误用类型的危害程度和所述测试分析数据,确定应用安全分级模型。进一步地,所述匹配数据包括潜在误用特征,还包括:响应于所述误用特征的部分字段匹配成功,确定所述第三抽象语法树对应的特征为潜在误用特征;响应于所述潜在误用特征为新误用特征或响应于所述潜在误用特征对应新误用类型,则根据所述新误用特征或所述新误用类型,分别更新所述误用特征库。进一步地,响应于外部提供新误用类型或者所述匹配数据对应新误用类型,更新所述误用特征库的步骤,具体包括:获取所述新误用类型对应的新子检测方法;根据所述新子检测方法对第四抽象语法树进行检测;其中,所述第四抽象语法树根据源代码预处理得到;响应于所述新子检测方法确定所述第四抽象语法树存在误用,则将所述新误用类型和所述第四抽象语法树中的相应特征更新至所述误用特征库。第二方面,本公开还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上述任意一所述的检测方法。从上面所述可以看出,本公开提供的口令和密钥的应用安全的检测方法,利用误用特征库和预设应用安全分级模型对目标源代码的应用安全进行评价,能够快速对目标源代码中存在的口令和密钥的安全问题进行评估,有助于帮助开发者进一步完善源代码的安全防护工作,从而提高网络空间中信息的安全性。附图说明为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开实施例提供的一种口令和密钥的应用安全的检测方法的流程示意图;图2为本公开实施例提供的确定目标源代码的口令和密钥的误用数据的流程示意图;图3为本公开实施例提供的构建误用特征库的流程示意图;图4为本公开实施例提供的构建预设应用安全分析模型的流程示意图;图5为本公开实施例提供的电子设备的结构示意图。具体实施方式为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出本文档来自技高网...

【技术保护点】
1.一种口令和密钥的应用安全的检测方法,所述检测方法包括:/n获取目标源代码,并对所述目标源代码进行预处理,得到第一抽象语法树;/n根据所述第一抽象语法树,确定口令和密钥的应用特征集;/n获取误用特征库,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据;其中,所述误用特征库基于多个口令和密钥误用的源代码,通过预设检测方法确定每一误用类型的误用特征构建得到;/n获取预设应用安全分级模型,根据所述误用数据和所述应用安全分级模型,确定所述目标源代码中的口令和密钥的应用安全等级。/n

【技术特征摘要】
1.一种口令和密钥的应用安全的检测方法,所述检测方法包括:
获取目标源代码,并对所述目标源代码进行预处理,得到第一抽象语法树;
根据所述第一抽象语法树,确定口令和密钥的应用特征集;
获取误用特征库,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据;其中,所述误用特征库基于多个口令和密钥误用的源代码,通过预设检测方法确定每一误用类型的误用特征构建得到;
获取预设应用安全分级模型,根据所述误用数据和所述应用安全分级模型,确定所述目标源代码中的口令和密钥的应用安全等级。


2.根据权利要求1所述的检测方法,其中,将所述应用特征集和所述误用特征库进行匹配,确定所述目标源代码的口令和密钥的误用数据的步骤,具体包括:
将所述应用特征集中每一应用特征分别与所述误用特征库中的各误用特征进行匹配;
响应于所述应用特征和任一误用特征匹配成功,基于所述任一误用特征对应的误用类型,确定所述应用特征对应的误用类型;
根据所述应用特征集中每一应用特征的匹配结果,统计得到所述目标源代码的口令和密钥的误用数据。


3.根据权利要求1所述的检测方法,其中,还包括构建所述误用特征库的步骤,具体包括:
获取多个包括口令和密钥误用的源代码,对每一包括口令和密钥误用的源代码分别执行以下步骤:
对所述包括口令和密钥误用的源代码进行预处理,得到第二抽象语法树;以及
基于预设检测方法,对所述第二抽象语法树进行检测,确定口令和密钥的误用类型和对应的误用特征。


4.根据权利要求3所述的检测方法,其中,所述预设检测方法包括与不同误用类型分别匹配的多个子检测方法;
所述基于预设检测方法,对所述第二抽象语法树进行检测,确定口令和密钥的误用类型和对应的误用特征的步骤,具体包括:
利用所述多个子检测方法分别对所述第二抽象语法树进行检测;
响应于所述子检测方法确定所述第二抽象语法树存在口令和密钥的误用,则所述子检测方法对应的误用类型为所述口令和密钥的误用类型,所述第二抽象语法树中的相应特征为误用特征。


5.根据权利要求1所述的检测方法,其中,所述误用类型包括口令和密钥的非安全保存、口令和密钥的内存泄露、非安全密码算法和密码协议、口令和密钥的强度违规、随机数可预测和测试用户。


6.根据权利要...

【专利技术属性】
技术研发人员:徐国爱徐国胜王晨宇张洪盈
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京;11

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

1