一种硬编码凭证检测方法、系统、设备及可读存储介质技术方案

技术编号:37963032 阅读:8 留言:0更新日期:2023-06-30 09:38
本发明专利技术涉及硬编码密码检测技术领域,提供一种硬编码凭证检测方法、系统、设备及可读存储介质,所述方法包括获取待检测的目标文件;根据待检测的目标文件确定第一字符串集;对第一字符串集进行粗筛选处理,得到第二字符串集,第二字符串集为筛选出敏感的第一字符串数据之后的字符串集;对第二字符串集中包括的每个第二字符串数据的香浓熵进行计算,得到第一计算结果;根据第一计算结果对第二字符串集进行筛选,得到第三字符串集;对第三字符串集中的每个第三字符串数据进行检测,判断第三字符串数据是否为硬编码凭证,得到第一检测结果,本发明专利技术可以有效的提高硬编码凭证的检测精度。本发明专利技术可以有效的提高硬编码凭证的检测精度。本发明专利技术可以有效的提高硬编码凭证的检测精度。

【技术实现步骤摘要】
一种硬编码凭证检测方法、系统、设备及可读存储介质


[0001]本专利技术涉及硬编码密码检测
,具体而言,涉及一种硬编码凭证检测方法、系统、设备及可读存储介质。

技术介绍

[0002]互联网未来的开发者服务趋向逐渐向云架构、SaaS平台和微服务等多种形式发展,密码等数字身份验证凭证的数量和多样性正快速增长,越来越多的硬编码秘密和存储在多个公共代码托管网站的凭证信息的快速传播对软件供应链安全构成巨大威胁,使用自动化的方法来检测和保护存储库中的密钥,是当前凭证硬编码问题严重的时代中亟待解决的安全问题,因此亟需一种硬编码凭证检测方法以实现硬编码凭证的精确检测。

技术实现思路

[0003]本专利技术的目的在于提供一种硬编码凭证检测方法、系统、设备及可读存储介质,以改善上述问题。
[0004]为了实现上述目的,本申请实施例提供了如下技术方案:一方面,本申请实施例提供了一种硬编码凭证检测方法,所述方法包括:获取待检测的目标文件;根据所述待检测的目标文件确定第一字符串集,所述第一字符串集中包括至少两个第一字符串数据;对所述第一字符串集进行粗筛选处理,得到第二字符串集,所述第二字符串集为筛选出敏感的第一字符串数据之后的字符串集;对第二字符串集中包括的每个第二字符串数据的香浓熵进行计算,得到第一计算结果;根据所述第一计算结果对所述第二字符串集进行筛选,得到第三字符串集;对第三字符串集中的每个第三字符串数据进行检测,判断所述第三字符串数据是否为硬编码凭证,得到第一检测结果。
[0005]第二方面,本申请实施例提供了一种硬编码凭证检测系统,所述系统包括:获取模块,用于获取待检测的目标文件;第一处理模块,用于根据所述待检测的目标文件确定第一字符串集,所述第一字符串集中包括至少两个第一字符串数据;第二处理模块,用于对所述第一字符串集进行粗筛选处理,得到第二字符串集,所述第二字符串集为筛选出敏感的第一字符串数据之后的字符串集;第三处理模块,用于对第二字符串集中包括的每个第二字符串数据的香浓熵进行计算,得到第一计算结果;第四处理模块,用于根据所述第一计算结果对所述第二字符串集进行筛选,得到第三字符串集;
检测模块,用于对第三字符串集中的每个第三字符串数据进行检测,判断所述第三字符串数据是否为硬编码凭证,得到第一检测结果。
[0006]第三方面,本申请实施例提供了一种硬编码凭证检测设备,所述设备包括存储器和处理器。存储器用于存储计算机程序;处理器用于执行所述计算机程序时实现上述硬编码凭证检测方法的步骤。
[0007]第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述硬编码凭证检测方法的步骤。
[0008]本专利技术的有益效果为:本专利技术通过待检测的目标文件确定第一字符串集,再对第一字符串集中的敏感数据进行初步筛选,得到第二字符串集,对第二字符串集中包括的每个第二字符串数据的香浓熵进行计算,筛选出明显不是硬编码凭证的第二字符串数据,得到第三字符串集,再对第三字符串集中的字符串数据进行检测,可以有效的提高硬编码凭证的检测精度。
[0009]本专利技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术实施例了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
[0010]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0011]图1为本专利技术实施例中所述的硬编码凭证检测方法流程示意图。
[0012]图2为本专利技术实施例中所述的硬编码凭证检测系统结构示意图。
[0013]图3为本专利技术实施例中所述的硬编码凭证检测设备结构示意图。
[0014]图中标注:901、获取模块;902、第一处理模块;903、第二处理模块;904、第三处理模块;905、第四处理模块;906、检测模块;9021、第一获取单元;9022、生成单元;9023、第一处理单元;9024、第二处理单元;9025、第三处理单元;9051、第二获取单元;9052、第四处理单元;9061、第五处理单元;9062、第六处理单元;90621、第七处理单元;90622、第八处理单元;90623、第九处理单元;90624、第十处理单元;906241、第十一处理单元;906242、第十二处理单元;906243、第十三处理单元;906244、第十四处理单元;800、硬编码凭证检测设备;801、处理器;802、存储器;803、多媒体组件;804、I/O接口;805、通信组件。
具体实施方式
[0015]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的
所有其他实施例,都属于本专利技术保护的范围。
[0016]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本专利技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1:
[0017]本实施例提供了一种硬编码凭证检测方法,可以理解的是,在本实施例中可以铺设一个场景,例如:通过SD客户端程序分装到PC的可执行文件中,在主流x86_64架构机器的Linux、Windows和MacOS系统上运行,本地扫描检测凭证信息(硬编码凭证)泄露的情况。
[0018]参见图1,图中示出了本方法包括步骤S1、步骤S2、步骤S3、步骤S4、步骤S5以及步骤S6,其中具体为:步骤S1、获取待检测的目标文件;可以理解的是,待检测的目标文件为待检测硬编码凭证泄露情况的目标文件。
[0019]步骤S2、根据所述待检测的目标文件确定第一字符串集,所述第一字符串集中包括至少两个第一字符串数据;可以理解的是,所述步骤S2中还包括步骤S21、步骤S22、步骤S23、步骤S24以及步骤S25,其中具体为:步骤S21、获取预设的关键字段;步骤S22、利用AC自动机生成待检测的目标文件的关键字段;可以理解的是,利用AC自动机可以生成目标文件的关键字列表,关键字列表中包括了目标文件的关键字段。
[0020]步骤S23、判断所述预设的关键字段与自动机生成所述待检测的目标本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种硬编码凭证检测方法,其特征在于,包括:获取待检测的目标文件;根据所述待检测的目标文件确定第一字符串集,所述第一字符串集中包括至少两个第一字符串数据;对所述第一字符串集进行粗筛选处理,得到第二字符串集,所述第二字符串集为筛选出敏感的第一字符串数据之后的字符串集;对第二字符串集中包括的每个第二字符串数据的香浓熵进行计算,得到第一计算结果;根据所述第一计算结果对所述第二字符串集进行筛选,得到第三字符串集;对第三字符串集中的每个第三字符串数据进行检测,判断所述第三字符串数据是否为硬编码凭证,得到第一检测结果。2.根据权利要求1所述的硬编码凭证检测方法,其特征在于,根据所述第一计算结果对所述第二字符串集进行筛选,得到第三字符串集,包括:获取预设的第一阈值;判断所述第二字符串集中包括的每个第二字符串数据的香浓熵与所述预设的第一阈值的大小关系,其中,若所述第二字符串集中包括的每个第二字符串数据的香浓熵小于所述预设的第一阈值,则将所述第二字符串数据在所述第二字符串集中滤除;若所述第二字符串集中包括的每个第二字符串数据的香浓熵大于所述预设的第一阈值,则将所述第二字符串数据保留在所述第二字符串集中,得到第三字符串集。3.根据权利要求1所述的硬编码凭证检测方法,其特征在于,对第三字符串集中的每个第三字符串数据进行检测,判断所述第三字符串数据是否为硬编码凭证,得到第一检测结果,包括:对所述第三字符串集中的每个第三字符串数据的密码复杂度进行计算,得到第二计算结果;判断所述第二计算结果与预设的第二阈值的大小关系,其中,若所述第二计算结果大于所述预设的第二阈值,则判断第三字符串数据为硬编码凭证,得到第一检测结果,并将所述第三字符串数据在所述第三字符串集中滤除;若所述第二计算结果小于所述预设的第二阈值,则将所述第三字符串数据保留在所述第三字符串集中,得到第四字符串集,并对所述第四字符串集中的第四字符串数据进行检测,判断所述第四字符串数据是否为硬编码凭证,得到第二检测结果。4.根据权利要求3所述的硬编码凭证检测方法,其特征在于,判断所述第四字符串数据是否为硬编码凭证,得到第二检测结果,包括对所述第四字符串数据中每个字符的ASCII码值进行计算,得到第三计算结果;根据所述第三计算结果依次确定第四字符串数据中相邻的字符是否存在拐点,得到第四字符串数据的拐点个数;将所述拐点个数除以所述第四字符串数据的长度,得到第四计算结果;判断所述第四计算结果与预设的第三阈值的大小关系,其中,若所述第四计算结果大于预设的第三阈值,则判断所述第四字符串数据为硬编码凭证,得到第二检测结果,并将所述第四字符串数据在所述第四字符串集中滤除;若所述第四计算结果小于预设的第三阈
值,则将所述第四字符串数据保留在所述第四字符串集中,得到第五字符串集,并对所述第五字符串集中的第五字符串数据进行检测,得到第三检测结果。5.一种硬编码凭证检测系统,其特征在于,包括:获取模块,用于获取待检测的目标文件;第一处理模块,用于根据所述待检测的目标文件确定第一字符串集,所述第一字符串集中包括至少两个第一字符串数据;第二处理模...

【专利技术属性】
技术研发人员:付杰申晏键靳岩
申请(专利权)人:上海比瓴科技有限公司
类型:发明
国别省市:

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

1