CN117574351A - 弱密码检测方法、装置和存储介质及电子设备 - Google Patents
弱密码检测方法、装置和存储介质及电子设备 Download PDFInfo
- Publication number
- CN117574351A CN117574351A CN202311843767.6A CN202311843767A CN117574351A CN 117574351 A CN117574351 A CN 117574351A CN 202311843767 A CN202311843767 A CN 202311843767A CN 117574351 A CN117574351 A CN 117574351A
- Authority
- CN
- China
- Prior art keywords
- weak password
- weak
- password
- detected
- dictionary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 98
- 238000003860 storage Methods 0.000 title claims abstract description 57
- 230000000875 corresponding effect Effects 0.000 claims abstract description 99
- 238000000034 method Methods 0.000 claims abstract description 55
- 230000002596 correlated effect Effects 0.000 claims abstract description 7
- 150000003839 salts Chemical class 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 21
- 238000010276 construction Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 239000000523 sample Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种弱密码检测方法、装置和存储介质及电子设备。该方法包括:获取预先构建的弱密码字典,其中,弱密码字典包括多个弱密码集合,同一个弱密码集合中不同的弱密码采用的组成模式相同,每个弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个弱密码集合的排列顺序与弱密码集合对应的有效匹配参数正相关,有效匹配参数用于表征弱密码集合中的弱密码能够匹配到真实弱密码的概率。通过本申请,解决了相关技术中应用的弱密码检测准确性较低的问题。
Description
技术领域
本申请涉及计算机领域,具体而言,涉及一种弱密码检测方法、装置和存储介质及电子设备。
背景技术
在现有技术中,对于应用的弱密码检测,常常是根据已知的用户信息生成弱密码表,再进行扫描检测。然而,在上述方式中,所生成的弱密码表只包含用户信息,存在弱密码表的生成局限性的缺陷,进而导致使用上述弱密码表所进行的、应用的弱密码检测的准确性较低的技术问题。
故,现有技术中,存在应用的弱密码检测的准确性较低的技术问题。
发明内容
本申请的主要目的在于提供一种弱密码检测方法、装置和存储介质及电子设备,以解决相关技术中应用的弱密码检测的准确性较低的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种弱密码检测方法。该方法包括:获取预先构建的弱密码字典,其中,弱密码字典包括多个弱密码集合,同一个弱密码集合中不同的弱密码采用的组成模式相同,每个弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个弱密码集合的排列顺序与弱密码集合对应的有效匹配参数正相关,有效匹配参数用于表征弱密码集合中的弱密码能够匹配到真实弱密码的概率。
为了实现上述目的,根据本申请的另一方面,提供了一种弱密码检测装置。该装置包括:获取单元,用于获取预先构建的弱密码字典,其中,弱密码字典包括多个弱密码集合,同一个弱密码集合中不同的弱密码采用的组成模式相同,每个弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;检测单元,用于根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个弱密码集合的排列顺序与弱密码集合对应的有效匹配参数正相关,有效匹配参数用于表征弱密码集合中的弱密码能够匹配到真实弱密码的概率。
为了实现上述目的,根据本申请的另一方面,提供了一种计算机可读的存储介质,其上存储有程序,该程序被处理器执行时实现上述应用的弱密码检测方法。
为了实现上述目的,根据本申请的另一方面,提供了一种用于应用的弱密码检测的电子设备,上述电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述应用的弱密码检测方法。
通过本申请提供的实施例,基于通用弱密码、用户信息以及特殊字符,组合生成多种组成模式的弱密码,并按照组成模式进行聚类得到多个弱密码集合,以及对多个弱密码集合按照用于指示能够匹配到真实弱密码的概率的有效匹配参数进行排序,进而得到弱密码字典,以用于对应用进行弱密码检测。通过包含了更加全面完整信息的弱密码字典,能够较好地覆盖弱密码的可能出现情况,进而达到了提高弱密码字典的覆盖全面性的目的,从而实现了提高对于应用的弱密码检测的准确性的技术效果;以及,通过基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,进而达到将更可能匹配的弱密码放到匹配列表的最开始,以有效减少匹配的次数的目的,从而还实现了提高对应用的弱密码检测的效率的有益效果。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例提供的应用的弱密码检测方法的流程图;
图2是根据本申请实施例提供的应用的弱密码检测方法的示意图;
图3是根据本申请实施例提供的应用的弱密码检测方法的示意图;
图4是根据本申请实施例提供的应用的弱密码检测装置的示意图;
图5是根据本申请实施例提供的应用的弱密码检测的电子设备的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本公开所涉及的相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。例如,本系统和相关用户或机构间设置有接口,在获取相关信息之前,需要通过接口向前述的用户或机构发送获取请求,并在接收到前述的用户或机构反馈的同意信息后,获取相关信息。
下面结合优选的实施步骤对本发明进行说明,图1是根据本申请实施例提供的应用的弱密码检测方法的流程图,如图1所示,该方法包括如下步骤:
步骤S101,获取预先构建的弱密码字典,其中,弱密码字典包括多个弱密码集合,同一个弱密码集合中不同的弱密码采用的组成模式相同,每个弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;
步骤S102,根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个弱密码集合的排列顺序与弱密码集合对应的有效匹配参数正相关,有效匹配参数用于表征弱密码集合中的弱密码能够匹配到真实弱密码的概率。
可选地,在本实施例中,上述应用的弱密码检测方法可以但不限于应用在计算机系统中的安全软硬件(包括但不限于主机安全管理软件、服务器安全管理系统、云服务器和云服务等)中的弱密码检测模块,结合用户信息、系统特征和应用类型,生成弱密码字典并优化扫描顺序的场景中。
需要说明的是,自从输入密码访问计算机的安全机制被提出以后,输入密码访问计算机的安全机制。围绕着密码认证这一机制,计算机领域展开了旷日持久的攻击-防御-升级的技术迭代过程。目前已经达成广泛共识的是:密码不允许用明文存储在任何位置,只允许用哈希算法计算出密码明文的哈希值,并且将其保存在有良好权限控制的位置,例如linux的系统密码;考虑到如果直接存储密码的哈希值,很容易通过提前计算可能密码的哈希值来攻破,因此实际工程应用中,往往会为每一个用户生成一个随机变量,称为盐值(Salt),并且将盐值与密码明文合并,再计算哈希值,这样能够防止潜在的破坏者用一个通用的密码-哈希对照表来检查用户密码的可能值。
弱密码(Weak passwords)指容易破译的密码,简单的数字组合、帐号相同的数字组合、键盘上的临近键或常见姓名、设备出厂配置的通用密码等都属于弱密码范畴。无论对于外部的入侵者,还是对于内部的安全管理员来说,找出系统中的弱密码都非常重要:对于入侵者,弱密码往往是攻破系统的第一步;而对于系统的安全管理员而言,找出并修改弱密码能够极大地增强系统的安全性。
可选地,在本实施例中,预先构建的弱密码字典包括多个弱密码集合,其中,同一个弱密码集合中不同的弱密码采用的组成模式相同,可以但不限于包括位于首部位置的弱密码前缀、位于中间位置的弱密码连接和位于尾部位置的弱密码后缀。
可选地,在本实施例中,弱密码前缀可以但不限于为从通用弱密码列表中提取出的字符串或基于用户信息确定出的字符串或特殊字符对应的字符串或空字符串,弱密码连接可以但不限于为特殊字符串对应的字符串或空字符串,弱密码后缀可以但不限于为从通用弱密码列表中提取出的字符串或基于用户信息确定出的字符串或特殊字符对应的字符串或空字符串。
需要说明的是,使用穷举的方法,按照上述规则进行弱密码前缀、弱密码连接和弱密码后缀的组合,生成各个组成模式的多个弱密码,并进行聚类,得到多个弱密码集合,其中,同一个弱密码集合中不同的弱密码采用的组成模式相同。
可以理解的是,每一个弱密码集合中所包括的各个弱密码,所对应的弱密码前缀、弱密码连接和弱密码后缀来自于同一个字符串列表或同为空字符串。
可选地,在本实施例中,基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,其中,有效匹配参数越大的弱密码集合,能够匹配到真实弱密码的概率越高,排序越靠前。
可以理解的是,将更可能匹配的弱密码放到匹配列表的最开始,能够有效减少匹配的次数。
通过本申请提供的实施例,基于通用弱密码、用户信息以及特殊字符,组合生成多种组成模式的弱密码,并按照组成模式进行聚类得到多个弱密码集合,以及对多个弱密码集合按照用于指示能够匹配到真实弱密码的概率的有效匹配参数进行排序,进而得到弱密码字典,以用于对应用进行弱密码检测。通过包含了更加全面完整信息的弱密码字典,能够较好地覆盖弱密码的可能出现情况,进而达到了提高弱密码字典的覆盖全面性的目的,从而实现了提高对于应用的弱密码检测的准确性的技术效果;以及,通过基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,进而达到将更可能匹配的弱密码放到匹配列表的最开始,以有效减少匹配的次数的目的,从而还实现了提高对应用的弱密码检测的效率的有益效果。
作为一种可选的方案,弱密码字典的构建过程包括:
S11,从通用弱密码列表中提取出第一字符串列表、基于用户信息确定出第二字符串列表、以及生成特殊字符对应的第三字符串列表;
S12,基于第一字符串列表、第二字符串列表、第三字符串列表,采用不同组合模式生成多个弱密码;
S13,将多个弱密码中的弱密码进行聚类处理,得到多个弱密码集合;
S14,分别获取多个弱密码集合中的各个弱密码集合对应的有效匹配参数;
S15,基于有效匹配参数,对各个弱密码集合进行排序处理,得到多个弱密码集合的排列顺序
S16,根据具有排列顺序的多个弱密码集合,构建得到弱密码字典。可选地,在本实施例中,将已有研究和实践中出现的弱密码整合为第一个列表,定义为常见弱密码列表。从上述常见弱密码列表中提取出常用于组合密码的部分字符串,定义为第一字符串列表,例如admin、password等。
可选地,在本实施例中,用户关联信息可以但不限于为特定用户的姓名、出生日期、公司名称、出生地、手机号码等信息。基于用户关联信息确定出第二字符串列表可以但不限于包括:从特定用户提取关联信息字符串,例如用户的姓名、出生日期、公司名称、出生地、手机号码等,加上与应用相关的字符串(例如对windows的弱密码检测中,可以加入默认用户名Administrator),定义为第二字符串列表。
可选地,在本实施例中,生成特殊字符对应的第三字符串列表可以但不限于包括:指定数字、特殊符号、字母的生成规则,例如只包含"!@#¥%"字符中的一个字符;或者长度不超过3的纯数字字符串等,基于这些规则,生成第三字符串列表。
可选地,在本实施例中,将待生成的弱密码分成三个部分,包括位于首部位置的弱密码前缀、位于中间位置的弱密码连接和位于尾部位置的弱密码后缀,其中,弱密码前缀和弱密码后缀可以但不限于为第一字符串列表中的第一字符串、或第二字符串列表中的第二字符串、或第三字符串列表中的第三字符串、或空字符串,弱密码连接只能是第三字符串列表中的第三字符串或空字符串。
需要说明的是,使用穷举的方法,对第一字符串列表、第二字符串列表、第三字符串列表中的字符串和空字符串进行组合,生成多个弱密码。
可以理解的是,在第一字符串列表包括M个字符串、第二字符串列表包括N个字符串、第三字符串列表包括P个字符串的情况下,弱密码前缀存在(M+N+P+1)种不同字符串(包括空字符串)的可能,弱密码连接存在(P+1)种不同字符串(包括空字符串)的可能,弱密码后缀存在(M+N+P+1)种不同字符串(包括空字符串)的可能,因此组合生成得到(M+N+P+1)*(P+1)*(M+N+P+1)个弱密码。
进一步举例说明,一种基于上述应用的弱密码检测方法的弱密码字典生成方法,能够引入用户的关联信息,并且生成覆盖率足够高的弱密码字典,如图2所示,生成方法描述如下:
首先将已有研究和实践中出现的弱密码整合为第一个列表,定义为常见弱密码列表;从常见弱密码列表中提取出常用于组合密码的部分字符串,例如admin、password等,定义为常用字符串列表1;从特定用户提取关联信息字符串,例如用户的姓名、出生日期、公司名称、出生地、手机号码等,加上与应用相关的字符串(例如对windows的弱密码检测中,可以加入默认用户名Administrator),定义为常用字符串列表2;指定数字、特殊符号、字母的生成规则,例如只包含"!@#¥%"字符中的一个字符;或者长度不超过3的纯数字字符串等,基于这些规则,生成常用字符串列表3;将待生成的密码分为三个部分,定义为前缀、连接和后缀,前缀和后缀可以是空字符串;前缀和后缀可以是常用字符串列表1、常用字符串列表2或常用字符串列表3中的一个字符串;连接只能是常用字符串列表3中的一个字符串或者空字符串;使用穷举的方法,用2-4中得到的常用字符串列表组合得到弱密码字典;至此,可以得到包含关联信息、常见密码组成元素的弱密码字典,该弱密码字典已经经过一次筛选和组合,既剪裁掉了无用的字符串,以免占用多余的时间和计算资源,又引入了关联信息,能够较好地覆盖弱密码的可能出现情况。
可选地,在本实施例中,将多个弱密码中弱密码前缀、弱密码连接和弱密码后缀分别对应的字符串列表均一致的弱密码进行聚类处理,得到4*2*4=32种类型的弱密码集合。
可以理解的是,每一个弱密码集合中所包括的各个弱密码,所对应的弱密码前缀、弱密码连接和弱密码后缀来自于同一个字符串列表或同为空字符串。
可选地,在本实施例中,基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,其中,有效匹配参数越大的弱密码集合,能够匹配到真实弱密码的概率越高,排序越靠前。
可以理解的是,将更可能匹配的弱密码放到匹配列表的最开始,能够有效减少匹配的次数。
通过本申请提供的实施例,基于从常见弱密码列表提取的第一字符串列表、基于用户关联信息确定的第二字符串列表、利用特殊字符生成的第三字符串列表和空字符串,组合生成多种类型的弱密码,并按照类型进行聚类得到多个弱密码集合,以及对多个弱密码集合按照用于指示能够匹配到真实弱密码的概率的有效匹配参数进行排序,进而得到弱密码字典,以用于对应用进行弱密码检测。包含了关联信息、常见密码组成元素的弱密码字典,又引入了关联信息,能够较好地覆盖弱密码的可能出现情况,进而达到了提高弱密码字典的覆盖全面性的目的,从而实现了提高对于应用的弱密码检测的准确性的技术效果;另,通过基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,进而达到将更可能匹配的弱密码放到匹配列表的最开始,以有效减少匹配的次数的目的,从而还实现了提高对应用的弱密码检测的效率的有益效果。
在本公开实施例中,部分或全部步骤、其可选实现方式可以与其他实施例中的部分或全部步骤任意组合,也可以与其他实施例的可选实现方式任意组合。
作为一种可选的方案,分别获取多个弱密码集合中的各个弱密码集合对应的有效匹配参数,包括:
S21,针对每一个弱密码集合执行以下操作:
S22,根据弱密码集合所包括的弱密码数量,得到弱密码集合对应的第一指标值,以及基于弱密码集合所对应的预设先验概率,得到弱密码集合对应的第二指标值;
S22,将第二指标值减去第一指标值得到的差值结果,确定为弱密码集合对应的有效匹配参数。
可选地,在本实施例中,弱密码集合对应的第一指标值与弱密码集合所包括的弱密码数量成正相关关系,其中,弱密码集合所包括的弱密码数量越多,弱密码对应的第一指标值越大。
可选地,在本实施例中,弱密码集合对应的第二指标值与弱密码集合的预设先验概率成正相关关系,其中,预设先验概率可以但不限于为根据以往的知识、经验或专家的意见,进行预先设定的概率值,以用来指导统计推断的过程。
可选地,在本实施例中,预设先验概率可以但不限于介于0至10之间。
可以理解的是,将更可能匹配的弱密码放到匹配列表的最开始,能够有效减少匹配的次数。但是每一条弱密码与实际密码匹配的概率并不容易直接得到,本实施例将问题简化一步,原本的目标可以表述为:对前述弱密码字典中的条目进行分类,然后按照类型排序,使得最终的平均匹配次数尽量少。
举例说明,将上述弱密码分为以下几类:仅包含常见弱密码的第一弱密码集合、仅包含用户关联信息的简单弱密码的第二弱密码集合、由常见弱密码和连接符组成的弱密码组成的第三弱密码集合、由用户关联信息和连接字符串组成的弱密码组成的第四弱密码集合、由用户关联信息和常见弱密码组成的弱密码组成的第五弱密码集合、包含用户关联信息、常见弱密码、连接字符串的弱密码的第六弱密码集合。
需要说明的是,上述几类弱密码的数量不会完全相同,并且每一类弱密码能够匹配到真实弱密码的概率也不相同,但是能够给出一个相对可靠的上下限,本实施例按照两个指标来确定弱密码的匹配顺序:该类弱密码的数量,并以10为底取对数,记为第一指标值;该类弱密码能够匹配实际密码的先验概率,此项根据实际情况,人为设置,取值范围是0至10,记为第二指标值。用每一类弱密码的第二指标值减去第一指标值,然后按照所得结果(即有效匹配参数)从大到小的顺序,重新排列扫描弱密码的顺序。
需要说明的是,基于上述第一指标值和上述第二指标值确定上述有效感知参数的证明如下:
1.问题转述
假设共有n种类型的弱密码,分别为D1,D2,...,Dn,其中包含正确密码的概率分别为P1,P2,...,Pn,按照1,2,...,n的顺序使用这些弱密码进行匹配,不难得出匹配成功所需尝试次数的数学期望为:
如何排列不同类型的弱密码的扫描顺序,使得上式的值最小?
2.一些假设
第一,一类弱密码的每条密码匹配到正确密码的概率都相同;第二,P(Di)可以采取的概率分布有:负指数分布或重尾分布;按密码本平均分布;按密码条数平均分布。显然负指数分布或者重尾分布更符合密码设置的实际情况,但是问题在于,难以直接对不同类型的弱密码概率分布做提前的假设。
平均分布赋予了长度较小的密码本较高的单条密码匹配成功的概率;按弱密码条数平均分布,则赋予了包含更多弱密码的类型更大的匹配成功率。此时不妨组合这两种分布,组合方式为:
上式可简化为:
P(Di)=(α·P1(Di)+(1-α)·P2(Di))
3.排序对期望次数的影响
不妨考虑一种最简化的情况:其他的弱密码类型均处于最优的排列,仅剩余相邻的弱密码类型A和弱密码类型B,则密码匹配次数的期望E应该满足:
E=Eother+min(EAB,EBA)
注:Eother并非是固定值,变动的部分是位于弱密码类型A和B之后的数学期望,具体值应为:(k+1)×(EAB-EBA),其中k为排列在弱密码类型A和B之后的字典数量。则不同排列顺序的数学期望变化是下述值的整数倍,故分析过程仍旧成立。
现在的问题变成了:考虑弱密码类型A和B的排列对数学期望的影响,比较EAB和EBA的大小:
其中PA和PB分别表示正确密码落入弱密码类型A和B的概率,而LA和LB则表示两个弱密码类型中所包含密码的数量。
若假设弱密码类型A和弱密码类型B中的一条密码是正确密码的概率分别为σA和σB,则上式可进一步合并为:
EAB-EBA=(σB-σA)·(LA×LB)
上述结果表明,只考虑相邻弱密码类型A和B的顺序时,将平均每条密码是正确密码的概率高的字典放在前面,其数学期望可以更小,这个结果也比较符合直觉。
在上述的概率分布下,某个弱密码类型的平均密码正确概率σi又可以表示为:
其中N为弱密码类型总数,Total为所有弱密码类型包含的密码总数。
4.结论
可见在给定的概率分布下,包含密码数量越少的弱密码类型i,其σi越大,则在排列中应该越靠前,才能使得密码的匹配次数的数学期望尽量小。
同时,需要考虑到不同弱密码类型之间可以预设一个概率值,因此综合两个指标来进行最后的排序:
1.该类弱密码的数量,并以10为底取对数,记为第一指标值;
2.该类弱密码能够匹配实际密码的先验概率,此项根据实际情况,人为设置,取值范围是0至10,记为第二指标值。
这两个参数的合并(即第二指标值减去第一指标值得到的有效匹配参数),能够兼顾先验知识和默认情况下的最优扫描。
作为一种可选的方案,基于多个弱密码集合中的各个弱密码集合所包括的弱密码数量,得到各个弱密码集合对应的第一指标值,包括:
S31,对弱密码数量取对数,得到各个弱密码集合对应的第一指标值;
基于多个弱密码集合中的各个弱密码集合所对应的预设先验概率,得到各个弱密码集合对应的第二指标值,包括:
S32,将预设先验概率与预设系数的乘积,确定为各个弱密码集合对应的第二指标值。
可选地,在本实施例中,可以但不限于以10为底,对弱密码数量取对数,得到弱密码集合对应的第一指标值。
可选地,在本实施例中,预设先验概率可以但不限于为根据以往的知识、经验或专家的意见,进行预先设定的概率值,以用来指导统计推断的过程,其中,预设先验概率可以但不限于介于0至10之间。
可选地,在本实施例中,预设系数可以但不限于用于对预设先验概率进行调整,其中,预设系数可以但不限于介于0.5至1.5之间。
通过本申请提供的实施例,对弱密码数量取对数,得到各个弱密码集合对应的第一指标值;将预设先验概率与预设系数的乘积,确定为各个弱密码集合对应的第二指标值。将上述第二指标值与上述第一指标值的差值,确定为上述有效感知参数。
作为一种可选的方案,根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,包括:
S41,从应用中获取密码保存信息、以及从缓存中获取密码缓存信息;
S42,在密码保存信息与密码缓存信息一致的情况下,将密码缓存信息确定为待检测对象;
S43,在密码保存信息与密码缓存信息不一致的情况下,将密码保存信息确定为待检测对象,并将密码保存信息加载至缓存中对密码缓存信息进行更新;
S44,基于弱密码字典对待检测对象进行弱密码检测。
可选地,在本实施例中,在进行弱密码检测之前,先获取密码保存信息,并与缓存内的信息(密码缓存信息)进行对比。如果密码保存信息未作修改,即密码保存信息与密码缓存信息一致,则可直接使用缓存内的信息(用于减少加密密码读取次数和避免重复的数据预处理过程)。若密码保存信息有改动,即密码保存信息与密码缓存信息不一致,则将最新的密码保存信息加载到缓存中,并对密码保存信息进行检查。
通过本申请提供的实施例,通过基于密码保存信息和/或密码缓存信息,确定待进行弱密码检查的待检查对象,达到了减少加密密码读取次数和避免重复的数据预处理过程的目的,从而实现了提高应用的弱密码监测效率的技术效果。
作为一种可选的方案,在根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测之前,方法还包括:
S51,获取应用对应的密码存储类型,其中,密码存储类型为加盐类型或不加盐类型;
基于弱密码字典对待检测对象进行弱密码检测,包括:
S52,在密码存储类型为不加盐类型的情况下,基于弱密码字典对待检测对象进行第一弱密码检测;
S53,在密码存储类型为加盐类型的情况下,基于弱密码字典对待检测对象进行第二弱密码检测。
可选地,在本实施例中,在应用对应的密码存储类型为加盐类型的情况下,对待检测对象进行与之对应的第一弱密码监测处理;在应用对应的密码存储类型为不加盐类型的情况下,对待检测对象进行与之对应的第二弱密码监测处理。
作为一种可选的方案,基于弱密码字典对待检测对象进行第一弱密码检测包括:
S61,获取待检测对象所对应的第一哈希值,并利用已计算的多个哈希值对第一哈希值进行第一匹配,其中,多个哈希值为已检测对象所对应的哈希值;
S62,在第一匹配成功的情况下,确定待检测对象为应用的弱密码;
S63,在第一匹配失败的情况下,获取弱密码字典所包括的各个弱密码对应的各个哈希值,并利用各个哈希值对第一哈希值进行第二匹配;
S64,在第二匹配成功的情况下,确定待检测对象为应用的弱密码;
S65,在第二匹配失败的情况下,确定未检测到应用的弱密码。
可选地,在应用对应的密码存储类型为不加盐类型的情况下,直接将待检测对象的哈希值与已经计算过的哈希值列表(即已计算的多个哈希值)进行对比,若已经计算过的哈希值列表中存在与待检测对象的哈希值对应的匹配记录(即相同的哈希值),则确定第一匹配成功、以及确定检测出弱密码,其中,已经计算过的哈希值列表为之前所检测过的其他待检测对象所对应的哈希值。
需要说明的是,在不存在匹配记录的情况下,进一步将待检测对象的哈希值与弱密码字典包括的弱密码对应的哈希值进行对比,若弱密码字典包括的弱密码对应的哈希值中存在与待检测对象的哈希值对应的匹配记录(即相同的哈希值),则确定第二匹配成功、以及确定检测出弱密码。
需要说明的是,若弱密码字典包括的弱密码对应的哈希值中不存在与待检测对象的哈希值对应的匹配记录,则确定第二匹配失败、以及确定未检测出弱密码。
作为一种可选的方案,基于弱密码字典对待检测对象进行第二弱密码检测,包括:
S71,获取能够保留的中间变量,并利用能够保留的中间变量提取用户密码的盐值和加密参数;
S72,利用盐值和加密参数,对弱密码字典中所包括的各个弱密码进行计算,得到目标中间变量;
S73,使用目标中间变量,对可保留的中间变量进行更新;
S74,利用目标中间变量,对弱密码字典中所包括的各个弱密码进行计算,得到各个弱密码对应的各个哈希值,利用各个哈希值对待检测对象所对应的第一哈希值进行第三匹配;
S75,在第三匹配成功的情况下,确定待检测对象为应用的弱密码;
S76,在第三匹配失败的情况下,确定未检测到应用的弱密码。
可选地,在应用对应的密码存储类型为加盐类型的情况下,获取可保留的中间变量,并利用可保留的中间变量提取用户密码的盐值和加密参数。利用盐值和加密参数,对弱密码字典中所包括的各个弱密码进行计算,得到目标中间变量,利用目标中间变量,对弱密码字典中所包括的各个弱密码进行计算,得到各个弱密码对应的各个哈希值,利用各个哈希值对待检测对象所对应的第一哈希值进行第三匹配。若上述各个哈希值中存在与待检测对象的哈希值对应的匹配记录(即相同的哈希值),则确定第三匹配成功、以及确定检测出弱密码,。
需要说明的是,若上述各个哈希值中不存在与待检测对象的哈希值对应的匹配记录,则确定第三匹配失败、以及确定未检测出弱密码。
可以理解的是,视各类应用对密码模块安全性的要求不同,对密码的存储可以分为加盐(salt,即设置密码时产生的一个随机数)和不加盐两种类型,针对这两种类型的应用,一种基于上述应用的弱密码检测方法的通用弱密码检测流程,如图3所示,用以加速检测速度,具体流程如下:
每次弱密码检测,都先获取密码保存信息,并与缓存内的信息进行对比,如果密码保存信息未作修改,则可直接使用缓存内的信息(用于减少加密密码读取次数和避免重复的数据预处理过程);若密码保存信息有改动,则将最新的密码保存信息加载到缓存中。
分密码信息加盐和未加盐两种情况,若密码信息未加盐,则可以直接将密码的哈希值与已经计算过的哈希值列表进行对比,若存在匹配记录,则已经检测出弱密码;而对于加盐的密码信息,则可以加载可保留的中间变量,并且提取出用户密码的盐值和加密参数(如加密算法、哈希轮数等参数)。
按照前文的弱密码字典的生成方式,生成弱密码字典并按照分组进行排序。
如果处理的是带盐值的密码,则将可保留的中间变量计算并更新到缓存(可保留的中间变量列表)中。
计算密码的哈希值,如果处理的是不带盐值的密码,则将计算出的哈希值更新到缓存(已计算的哈希值列表)中。
检查计算得到的哈希值列表是否与密码信息中的哈希值匹配,若匹配,则检出该应用的弱密码;若不匹配,则未检出该应用的弱密码。
在检测过程中,共有三类缓存,分别是:a)用于存储加密后密码信息的缓存,可以减少对加密密码的读取次数,并且避免重复的加密密码信息提取和处理过程;b)对于未加盐的密码保存方式,有用于存储已计算哈希的缓存,用于存储已经计算过的字符串所对应的哈希值,一是减少重复计算字符串的哈希值;二能够直接检索加密密码是否存在于缓存中,加速弱密码检测过程;c)对于加盐的密码保存方式,有用于存储中间变量的缓存,用于保存加盐计算过程中的中间变量(例如用于计算带盐哈希值的函数中间状态可以被缓存,减少重复初始化的计算资源消耗)。
上述三类缓存,在一个特定应用的扫描中只需要其中的a+b组合或者a+c组合;而在用于检测多个目标应用的通用弱密码检测平台中,需要构建a、b、c三种缓存。
通过本申请提供的实施例,基于用户信息和常用弱密码字符串生成弱密码字典,充分利用了用户关联信息,可以生成包含实际弱密码概率更高的字典,达到了减少弱密码检测对无用和低频字符串的扫描次数的效果;基于弱密码的组成模式和该类弱密码长度,对弱密码字典中的待扫描项进行分类和重新排序,优化扫描顺序,达到了减少平均弱密码检测扫描次数的效果;通过设置缓存、缓存中间变量、查询哈希表等方式,对不同类型的应用弱密码监测进行优化,能够实现减少计算资源依赖,加快弱密码检测速度的效果。
综上,无论是减少对无用和低频字符串的扫描次数,还是减少扫描次数的数学期望,又或者加快弱密码检测的平均速度,最终带来的益处都是减少弱密码检测过程对计算资源的消耗和所需的扫描时间,同时保证较高的检测准确率和较低的漏检率。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例还提供了一种弱密码检测装置,需要说明的是,本申请实施例的应用的弱密码检测装置可以用于执行本申请实施例所提供的用于应用的弱密码检测方法。以下对本申请实施例提供的应用的弱密码检测装置进行介绍。
图4是根据本申请实施例的应用的弱密码检测装置的示意图。如图4所示,该装置包括:
获取单元402,用于获取预先构建的弱密码字典,其中,弱密码字典包括多个弱密码集合,同一个弱密码集合中不同的弱密码采用的组成模式相同,每个弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;
检测单元404,用于根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个弱密码集合的排列顺序与弱密码集合对应的有效匹配参数正相关,有效匹配参数用于表征弱密码集合中的弱密码能够匹配到真实弱密码的概率。
可选地,在本实施例中,预先构建的弱密码字典包括多个弱密码集合,其中,同一个弱密码集合中不同的弱密码采用的组成模式相同,可以但不限于包括位于首部位置的弱密码前缀、位于中间位置的弱密码连接和位于尾部位置的弱密码后缀。
可选地,在本实施例中,弱密码前缀可以但不限于为从通用弱密码列表中提取出的字符串或基于用户信息确定出的字符串或特殊字符对应的字符串或空字符串,弱密码连接可以但不限于为特殊字符串对应的字符串或空字符串,弱密码后缀可以但不限于为从通用弱密码列表中提取出的字符串或基于用户信息确定出的字符串或特殊字符对应的字符串或空字符串。
需要说明的是,使用穷举的方法,按照上述规则进行弱密码前缀、弱密码连接和弱密码后缀的组合,生成各个组成模式的多个弱密码,并进行聚类,得到多个弱密码集合,其中,同一个弱密码集合中不同的弱密码采用的组成模式相同。
可以理解的是,每一个弱密码集合中所包括的各个弱密码,所对应的弱密码前缀、弱密码连接和弱密码后缀来自于同一个字符串列表或同为空字符串。
可选地,在本实施例中,基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,其中,有效匹配参数越大的弱密码集合,能够匹配到真实弱密码的概率越高,排序越靠前。
可以理解的是,将更可能匹配的弱密码放到匹配列表的最开始,能够有效减少匹配的次数。
通过本申请提供的实施例,基于通用弱密码、用户信息以及特殊字符,组合生成多种组成模式的弱密码,并按照组成模式进行聚类得到多个弱密码集合,以及对多个弱密码集合按照用于指示能够匹配到真实弱密码的概率的有效匹配参数进行排序,进而得到弱密码字典,以用于对应用进行弱密码检测。通过包含了更加全面完整信息的弱密码字典,能够较好地覆盖弱密码的可能出现情况,进而达到了提高弱密码字典的覆盖全面性的目的,从而实现了提高对于应用的弱密码检测的准确性的技术效果;以及,通过基于各个弱密码集合对应的有效匹配参数,对各个弱密码集合进行排序处理,进而达到将更可能匹配的弱密码放到匹配列表的最开始,以有效减少匹配的次数的目的,从而还实现了提高对应用的弱密码检测的效率的有益效果。
作为一种可选的方案,装置还包括:
第一获取模块,用于从通用弱密码列表中提取出第一字符串列表、基于用户信息确定出第二字符串列表、以及生成特殊字符对应的第三字符串列表;
生成模块,用于基于第一字符串列表、第二字符串列表、第三字符串列表,采用不同组合模式生成多个弱密码;
聚类模块,用于将多个弱密码中的弱密码进行聚类处理,得到多个弱密码集合;
第二获取模块,用于分别获取多个弱密码集合中的各个弱密码集合对应的有效匹配参数;
排序模块,用于基于有效匹配参数,对各个弱密码集合进行排序处理,得到多个弱密码集合的排列顺序;
构建模块,用于根据具有排列顺序的多个弱密码集合,构建得到弱密码字典。
作为一种可选的方案,第二获取模块,包括:执行子模块,用于针对每一个弱密码集合执行以下操作;第一获取子模块,用于根据弱密码集合所包括的弱密码数量,得到弱密码集合对应的第一指标值,以及基于弱密码集合所对应的预设先验概率,得到弱密码集合对应的第二指标值;第一确定子模块,用于将第二指标值减去第一指标值得到的差值结果,确定为弱密码集合对应的有效匹配参数。
作为一种可选的方案,第一获取子模块,包括:第一获取子单元,用于对弱密码数量取对数,得到各个弱密码集合对应的第一指标值;第一获取子模块,包括:第二获取子单元,用于将预设先验概率与预设系数的乘积,确定为各个弱密码集合对应的第二指标值。
作为一种可选的方案,检测单元404,包括:第二获取模块,用于从应用中获取密码保存信息、以及从缓存中获取密码缓存信息;第二确定模块,用于在密码保存信息与密码缓存信息一致的情况下,将密码缓存信息确定为待检测对象;第三确定模块,用于在密码保存信息与密码缓存信息不一致的情况下,将密码保存信息确定为待检测对象,并将密码保存信息加载至缓存中对密码缓存信息进行更新;
检测模块,用于基于弱密码字典对待检测对象进行弱密码检测。
作为一种可选的方案,装置还包括:第三获取模块,用于在根据多个弱密码集合的排列顺序,对待检测应用进行弱密码检测之前,获取应用对应的密码存储类型,其中,密码存储类型为加盐类型或不加盐类型;检测模块,包括:第一检测子模块,用于在密码存储类型为不加盐类型的情况下,基于弱密码字典对待检测对象进行第一弱密码检测;第二检测子模块,用于在密码存储类型为加盐类型的情况下,基于弱密码字典对待检测对象进行第二弱密码检测。
作为一种可选的方案,第一检测子模块,包括:第一获取子单元,用于获取待检测对象所对应的第一哈希值,并利用已计算的多个哈希值对第一哈希值进行第一匹配,其中,多个哈希值为已检测对象所对应的哈希值;第一确定子单元,用于在第一匹配成功的情况下,确定待检测对象为应用的弱密码;第二获取子单元,用于在第一匹配失败的情况下,获取弱密码字典所包括的各个弱密码对应的各个哈希值,并利用各个哈希值对第一哈希值进行第二匹配;第二确定子单元,用于在第二匹配成功的情况下,确定待检测对象为应用的弱密码;第三确定子单元,用于在第二匹配失败的情况下,确定未检测到应用的弱密码。
作为一种可选的方案,第二检测子模块,包括:第三获取子单元,用于获取能够保留的中间变量,并利用能够保留的中间变量提取用户密码的盐值和加密参数;第一计算子单元,用于利用盐值和加密参数,对弱密码字典中所包括的各个弱密码进行计算,得到目标中间变量;更新子单元,用于使用目标中间变量,对可保留的中间变量进行更新;第二计算子单元,用于利用目标中间变量,对弱密码字典中所包括的各个弱密码进行计算,得到各个弱密码对应的各个哈希值,利用各个哈希值对待检测对象所对应的第一哈希值进行第三匹配;第四确定子单元,用于在第三匹配成功的情况下,确定待检测对象为应用的弱密码;第五确定子单元,用于在第三匹配失败的情况下,确定未检测到应用的弱密码。
本发明实施例提供了一种计算机可读的存储介质,其上存储有程序,该程序被处理器执行时实现上述应用的弱密码检测方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述应用的弱密码检测方法。
如图5所示,本发明实施例提供了一种电子设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述应用的弱密码检测方法。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来训练或优化目标模型,从而提高数据加载的效率。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种弱密码检测方法,其特征在于,包括:
获取预先构建的弱密码字典,其中,所述弱密码字典包括多个弱密码集合,同一个所述弱密码集合中不同的弱密码采用的组成模式相同,每个所述弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;
根据所述多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个所述弱密码集合的排列顺序与所述弱密码集合对应的有效匹配参数正相关,所述有效匹配参数用于表征所述弱密码集合中的弱密码能够匹配到真实弱密码的概率。
2.根据权利要求1所述的方法,其特征在于,所述弱密码字典的构建过程包括:
从通用弱密码列表中提取出第一字符串列表、基于用户信息确定出第二字符串列表、以及生成特殊字符对应的第三字符串列表;
基于所述第一字符串列表、所述第二字符串列表、所述第三字符串列表,采用不同组合模式生成多个弱密码;
将所述多个弱密码中的弱密码进行聚类处理,得到多个弱密码集合;
分别获取所述多个弱密码集合中的各个弱密码集合对应的有效匹配参数;
基于所述有效匹配参数,对所述各个弱密码集合进行排序处理,得到多个弱密码集合的排列顺序
根据具有所述排列顺序的多个弱密码集合,构建得到所述弱密码字典。
3.根据权利要求2所述的方法,其特征在于,所述分别获取所述多个弱密码集合中的各个弱密码集合对应的有效匹配参数,包括:
针对每一个弱密码集合执行以下操作:
根据所述弱密码集合所包括的弱密码数量,得到所述弱密码集合对应的第一指标值,以及基于所述弱密码集合所对应的预设先验概率,得到所述弱密码集合对应的第二指标值;
将所述第二指标值减去所述第一指标值得到的差值结果,确定为所述弱密码集合对应的所述有效匹配参数。
4.根据权利要求3所述的方法,其特征在于,
所述基于所述多个弱密码集合中的各个弱密码集合所包括的弱密码数量,得到所述各个弱密码集合对应的第一指标值,包括:
对所述弱密码数量取对数,得到所述各个弱密码集合对应的所述第一指标值;
所述基于所述多个弱密码集合中的各个弱密码集合所对应的预设先验概率,得到所述各个弱密码集合对应的第二指标值,包括:
将所述预设先验概率与预设系数的乘积确定为所述各个弱密码集合对应的第二指标值。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,包括:
从所述待检测应用中获取密码保存信息、以及从缓存中获取密码缓存信息;
在所述密码保存信息与所述密码缓存信息一致的情况下,将所述密码缓存信息确定为待检测对象;
在所述密码保存信息与所述密码缓存信息不一致的情况下,将所述密码保存信息确定为所述待检测对象,并将所述密码保存信息加载至所述缓存中对所述密码缓存信息进行更新;
基于所述弱密码字典对所述待检测对象进行弱密码检测。
6.根据权利要求5所述的方法,其特征在于,
在所述根据所述多个弱密码集合的排列顺序,对待检测应用进行弱密码检测之前,所述方法还包括:
获取所述待检测应用对应的密码存储类型,其中,所述密码存储类型为加盐类型或不加盐类型;
所述基于所述弱密码字典对所述待检测对象进行弱密码检测,包括:
在所述密码存储类型为所述不加盐类型的情况下,基于所述弱密码字典对所述待检测对象进行第一弱密码检测;
在所述密码存储类型为所述加盐类型的情况下,基于所述弱密码字典对所述待检测对象进行第二弱密码检测。
7.根据权利要求6所述的方法,其特征在于,所述基于所述弱密码字典对所述待检测对象进行第一弱密码检测包括:
获取所述待检测对象所对应的第一哈希值,并利用已计算的多个哈希值对所述第一哈希值进行第一匹配,其中,所述多个哈希值为已检测对象所对应的哈希值;
在所述第一匹配成功的情况下,确定所述待检测对象为所述待检测应用的弱密码;
在所述第一匹配失败的情况下,获取所述弱密码字典所包括的各个弱密码对应的各个哈希值,并利用所述各个哈希值对所述第一哈希值进行第二匹配;
在所述第二匹配成功的情况下,确定所述待检测对象为所述待检测应用的弱密码;
在所述第二匹配失败的情况下,确定未检测到所述待检测应用的弱密码。
8.根据权利要求6所述的方法,其特征在于,所述基于所述弱密码字典对所述待检测对象进行第二弱密码检测,包括:
获取能够保留的中间变量,并利用所述能够保留的中间变量提取用户密码的盐值和加密参数;
利用所述盐值和所述加密参数,对所述弱密码字典中所包括的各个弱密码进行计算,得到目标中间变量;
使用所述目标中间变量,对所述可保留的中间变量进行更新;
利用所述目标中间变量,对所述弱密码字典中所包括的各个弱密码进行计算,得到所述各个弱密码对应的各个哈希值,利用所述各个哈希值对所述待检测对象所对应的第一哈希值进行第三匹配;
在所述第三匹配成功的情况下,确定所述待检测对象为所述待检测应用的弱密码;
在所述第三匹配失败的情况下,确定未检测到所述待检测应用的弱密码。
9.一种弱密码检测装置,其特征在于,包括:
获取单元,用于获取预先构建的弱密码字典,其中,所述弱密码字典包括多个弱密码集合,同一个所述弱密码集合中不同的弱密码采用的组成模式相同,每个所述弱密码由通用弱密码、用户信息以及特殊字符中的至少一个组成;
检测单元,用于根据所述多个弱密码集合的排列顺序,对待检测应用进行弱密码检测,其中,任一个所述弱密码集合的排列顺序与所述弱密码集合对应的有效匹配参数正相关,所述有效匹配参数用于表征所述弱密码集合中的弱密码能够匹配到真实弱密码的概率。
10.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311843767.6A CN117574351A (zh) | 2023-12-28 | 2023-12-28 | 弱密码检测方法、装置和存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311843767.6A CN117574351A (zh) | 2023-12-28 | 2023-12-28 | 弱密码检测方法、装置和存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117574351A true CN117574351A (zh) | 2024-02-20 |
Family
ID=89884652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311843767.6A Pending CN117574351A (zh) | 2023-12-28 | 2023-12-28 | 弱密码检测方法、装置和存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117574351A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118711285A (zh) * | 2024-08-29 | 2024-09-27 | 大连洪荒之力电子科技有限公司 | 一种无钥智能互联多维防护门控方法 |
-
2023
- 2023-12-28 CN CN202311843767.6A patent/CN117574351A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118711285A (zh) * | 2024-08-29 | 2024-09-27 | 大连洪荒之力电子科技有限公司 | 一种无钥智能互联多维防护门控方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7086972B2 (ja) | 侵入検出のための継続的な学習 | |
CN110457912B (zh) | 数据处理方法、装置和电子设备 | |
CN105590055B (zh) | 用于在网络交互系统中识别用户可信行为的方法及装置 | |
US10547618B2 (en) | Method and apparatus for setting access privilege, server and storage medium | |
US11157652B2 (en) | Obfuscation and deletion of personal data in a loosely-coupled distributed system | |
CN112367338A (zh) | 恶意请求检测方法及装置 | |
CN110990829B (zh) | 在可信执行环境中训练gbdt模型的方法、装置及设备 | |
CN109492844B (zh) | 业务策略的生成方法和装置 | |
CN112100677A (zh) | 隐私数据的保护方法、装置及电子设备 | |
CN117574351A (zh) | 弱密码检测方法、装置和存储介质及电子设备 | |
CN110728585A (zh) | 核保方法、装置、设备及存储介质 | |
CN111949428B (zh) | 提高小程序服务可用性的方法、装置、设备和存储介质 | |
CN114265560A (zh) | 一种亿级合规指标业务数据的自规范存储系统 | |
CN112395613B (zh) | 静态特征库的加载方法、装置及设备 | |
CN113674083A (zh) | 互联网金融平台信用风险监测方法、装置及计算机系统 | |
CN116112264B (zh) | 一种基于区块链的策略隐藏大数据访问控制方法和装置 | |
US20240232695A1 (en) | Sensitive data detection using domain-enhanced attention neural networks | |
CN115277067A (zh) | 一种基于人工鱼群算法的计算机网络信息漏洞检测方法 | |
CN118484477A (zh) | 敏感规则的配置方法、设备、存储介质和计算机程序产品 | |
CN115694963A (zh) | 网络钓鱼识别方法、装置、设备及存储介质 | |
US20220129538A1 (en) | Password integrity scoring | |
CN111695159A (zh) | 数据的处理方法、装置及设备 | |
CN116962059A (zh) | Web攻击检测方法、装置、设备和非瞬态存储介质 | |
CN116647385A (zh) | 异常文件检测方法、装置、系统及存储介质 | |
CN115953221A (zh) | 一种基于tf-idf算法的电信订单拦截方法、系统、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |