电子通信装置的制造及其应用技术1.本技术涉及计算机技术领域,具体涉及一种防止密码攻击的方法、装置及电子设备。背景技术:2.账号和密码是一种身份验证机制,例如,在使用各种应用时,需要用户设置账号以及对应的密码,并通过账号和密码登录该应用进而获取需要的数据或开展相应的工作等。然而,在一些情况下,用户的账号容易被攻击者获取,如果该账号的密码是弱密码的话,攻击者很有可能通过有限次的尝试而成功登录该账号,如此会对网络安全造成威胁。例如,当攻击者采用一组常见密码对多个账号发起账号登录攻击时,其中的某个账号被成功登录的可能性很大。技术实现要素:3.有鉴于此,本技术实施例提供了一种防止密码攻击的方法、装置及电子设备,能够在提供安全防御能力的同时,避免每次登录都进行二次认证操作,从而可以提高账号登录效率以及用户体验。4.第一方面,本技术的实施例提供了一种防止密码攻击的方法,包括:获取预设时段内来自第一源地址的多次登录请求所采用的登录密码;评估登录密码的密码泄露风险程度;基于登录密码的密码泄露风险程度,确定至少一个攻击候选密码,攻击候选密码为密码泄露风险程度处于预设范围的登录密码;基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,以防止来自第一源地址的密码攻击。5.第二方面,本技术的实施例提供了一种防止密码攻击的装置,包括:获取模块,用于获取预设时段内来自第一源地址的多次登录请求所采用的登录密码;确定模块,用于评估登录密码的密码泄露风险程度,并且基于登录密码的密码泄露风险程度,确定至少一个攻击候选密码,攻击候选密码为密码泄露风险程度处于预设范围的登录密码;执行模块,用于基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,以防止来自第一源地址的密码攻击。6.第三方面,本技术的实施例提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器,其中,处理器用于执行上述第一方面所述的防止密码攻击的方法。7.第四方面,本技术的实施例提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序用于执行上述第一方面所述的防止密码攻击的方法。8.第五方面,本技术的实施例提供了一种计算机程序产品,所述计算机程序产品中包括指令,所述指令被计算机设备的处理器执行时,使得所述计算机设备能够执行上述实施方式中的方法步骤。9.本技术实施例提供了一种防止密码攻击的方法、装置及电子设备,通过基于密码泄露风险程度从多次登录请求所采用的登录密码中确定攻击候选密码,进而根据采用攻击候选密码的登录请求的数量选择并执行对应的密码攻击防御策略,如此可以提高账号登录过程的安全性,防止恶意登录行为,具有一定的安全防御能力。此外,本技术实施例可以避免针对每次登录行为通过提供二次认证的方式来提高安全性,如此可以提高账号登录效率以及用户体验。而与未设置二次认证的常规账号登录方法相比,本技术实施例可以在保持同样账号登录效率和用户体验的基础上,具备更高的安全性,可以抵御密码攻击,防止恶意登录行为。附图说明10.图1所示为本技术一示例性实施例提供的防止密码攻击的系统的架构示意图。11.图2所示为本技术一示例性实施例提供的防止密码攻击的方法的流程示意图。12.图3所示为本技术另一示例性实施例提供的防止密码攻击的方法的流程示意图。13.图4所示为本技术一示例性实施例提供的防止密码攻击的装置的结构示意图。14.图5所示为本技术一示例性实施例提供的用于执行防止密码攻击的方法的电子设备的框图。具体实施方式15.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。16.泄露密码数据集是通过收集安全事件中泄露的密码而得到的集合。针对每个泄露的密码,可以统计其泄露的次数。泄露次数越高的密码,被更多人使用的可能性越高,因此更容易被攻击者作为攻击候选密码,即,攻击者利用该攻击候选密码对多个账号发起账号登录攻击。而且,密码的泄露次数越高,攻击成功的可能性也就越高。例如,攻击者采用一组常见密码(攻击候选密码)对成千上万个账号发起账号登录攻击,这种行为称为密码喷射攻击行为。17.在应用身份服务(identity as a service,idaas)的员工身份管理(employee identity access management,eiam)场景中,企业中所有的员工账号密码统一被托管在idaas产品中,不同企业管理员设置的账号认证策略和密码策略有很大区别。18.一般情况下,可以通过设置二次认证的方式来防御密码喷射攻击,二次认证可以包括面部识别,手机短信验证码等方式。例如,在用户登录某应用时,除了输入账号和密码,还要求用户输入手机短信验证码,以防止恶意登录;或者,在用户连续登录多次失败时,要求用户输入手机短信验证码来找回密码,以防止恶意登录。19.从行业角度来说,有的行业要求较高,例如,政务行业、金融行业等,一般会设置二次认证来防御密码喷射攻击。而对于大部分普通行业来说,没有设置二次认证,用户只要输入账号和密码即可登录成功。这些普通行业没有设置二次认证,可能是出于各种原因,例如,设置二次认证的登录方式比较繁琐,效率低,用户体验差等原因。20.如果某个企业的idaas实例出于体验或其他原因未配置二次认证功能时,此时只要企业中的任一员工账号存在弱密码(或密码被泄露过)时,攻击者基于密码喷射攻击方式就有可能获取到企业中该类账号的访问权限,并在随后基于该账号进行对应的横向渗透或提权攻击,这会对企业的应用安全造成极大的危害。21.普通行业一般可采用密码风控策略来防御密码喷射攻击,但是若单个账号的两次密码登录行为(该密码错误)间隔时间长,密码风控策略无法识别此类攻击,或账号的密码登录锁定会在下一次攻击行为发起前过期。22.因此,针对这种普遍的没有设置二次认证的行业,如果员工账号被攻击如何去防御,如何基于登录密码判断本次登录是否是攻击行为,是亟需解决的技术问题。23.鉴于上述技术问题,本技术实施例提供了一种防止密码攻击的方法,通过确定多次登录请求中采用攻击候选密码(高危密码)的登录请求的数量选择并执行对应的密码攻击防御策略,可以在保证用户体验的同时提供一定的安全防御能力。24.示例性系统25.图1所示为本技术一示例性实施例提供的防止密码攻击的系统100的架构示意图,其示出了一种对来自第一源地址的多次登录请求进行处理的应用场景。如图1所示,系统100包括:用户终端110和服务器120。用户终端110可以是电脑、平板或手机等设备,服务器120可以是应用身份服务(identity as a service,idaas)的员工身份管理(employee identity access management,eiam)平台。26.用户终端110可以生成针对某个账号的登录请求,并将登录请求发送给服务器120。例如,用户终端110可以根据用户输入的账号和登录密码生成登录请求。如果登录密码是对的,则该登录请求会通过服务器的验证,如果登录密码是错的,则该登录请求不会通过服务器的验证。27.在一定时间内,用户终端110上可以生成针对多个账号的多次登录请求,服务器120对多次登录请求进行检测,并根据检测结果执行不同的操作。28.例如,当检测结果为多次登录请求的验证不通过,且多次登录请求中登录密码采用高危密码(攻击候选密码)的登录请求的数量大于第一阈值,则服务器120对用户终端110的ip地址进行封禁,因为该ip地址上存在密码喷射攻击行为的可能性较大。29.当检测结果为多次登录请求中登录密码采用高危密码(攻击候选密码)的登录请求的数量大于第二阈值且小于或等于第一阈值,且多次登录请求中的当前登录请求的验证通过,则服务器120对当前登录请求执行阻断操作,以阻断当前登录行为,因为当前登录行为是恶意登录行为的可能性较大。30.当检测结果为多次登录请求中登录密码采用高危密码(攻击候选密码)的登录请求的数量大于第三阈值且小于或等于第二阈值,且多次登录请求中的当前登录请求的验证通过,则服务器120对当前登录请求执行二次认证操作,因为当前登录行为有可能是恶意登录行为。这里应理解,系统100本身可以具备二次认证能力,因为在用户注册账号时系统100可以获取用户的手机号或面部图像等信息,这些信息可以用于配置二次认证功能。而在实际应用过程中,企业可以根据需要选择是否为系统100配置二次认证功能。例如,本技术实施例是在满足一定条件时才触发二次认证功能,这样可以简化登录过程,提高用户体验。31.当检测结果为多次登录请求中登录密码采用高危密码(攻击候选密码)的登录请求的数量小于或等于第三阈值,且多次登录请求中的当前登录请求的验证通过,则服务器120对当前登录请求进行处理,以使得当前登录行为登录成功。32.为避免赘述,系统100对多次登录请求进行处理的具体过程可参见下面方法部分的描述。33.本实施例提供的防止密码攻击的系统可以根据一定时间内某个ip地址上使用高危密码的登录请求的数量的不同,执行不同的密码攻击防御策略,如此可以在保证网络安全的同时,避免因误判而造成用户体验差等不良影响。34.需要注意的是,上述应用场景仅是为了便于理解本技术的精神和原理而示出,本技术的实施例并不限于此。相反,本技术的实施例可以应用于可能适用的任何场景。35.示例性方法36.图2所示为本技术一示例性实施例提供的防止密码攻击的方法的流程示意图。图2的方法可由计算设备(例如,图1中的服务器)执行。如图2所示,该防止密码攻击的方法包括如下内容。37.210:获取预设时段内来自第一源地址的多次登录请求所采用的登录密码。38.第一源地址可以是ip地址或出口ip网关,例如,在一定时间内,同一ip地址上发出多次登录请求,或同一出口ip网关发出多次登录请求。39.220:评估登录密码的密码泄露风险程度。40.密码泄露风险程度用于评价对应登录请求所采用的登录密码被泄露的程度。41.登录请求对应用户的登录行为,例如,用户终端可以根据用户输入的账号和登录密码生成登录请求。在预设时段内,可以采用同一个登录密码对多个账号进行登录进而生成多次登录请求,或者,可以采用多个登录密码对同一个账号进行登录进而生成多次登录请求,或者,可以采用多个登录密码分别登录多个账号中的每个账号进而生成多次登录请求,或者,可以将多个账号划分成多个分组,采用多个登录密码分别登录不同分组中的账号,进而生成多次登录请求。42.服务器可以接收多次登录请求,并确定多次登录请求所采用的每个登录密码对应的密码泄露风险程度。43.在一示例中,可以根据预设的规则确定登录密码的密码泄露风险程度,例如,登录密码仅包括数字,则对应的密码泄露风险程度低,登录密码包括数字和字母,则对应的密码泄露风险程度高。应理解,预设的规则可以是复杂程度高的登录密码对应的密码泄露风险程度高,这里,预设的规则可以根据实际情况进行设置。44.在另一示例中,密码泄露风险程度可以用密码泄露次数表示,密码泄露次数用于表示登录密码在历史密码泄露事件中出现的次数,例如,可以通过密码数据集获取登录密码的密码泄露次数。密码数据集可包括多个泄露密码,以及每个泄露密码对应的泄露次数。或者,密码数据集包括多个泄露密码对应的哈希值,以及每个泄露密码对应的泄露次数,在这种情况下,可以计算登录密码对应的哈希值;基于哈希值从密码泄露数据集中获取密码泄露次数。通过利用哈希值表示对应的泄露密码,可以提高密码数据集的安全性,增加攻击者获取高频泄露密码的难度。因为使用明文表示泄露密码,攻击者容易识别密码数据集中的高频泄露密码,采用该高频泄露密码实施密码攻击行为更容易成功。45.应理解,密码泄露数据集可以通过公开渠道申请获取并动态更新的,因此通过动态更新的密码泄露数据集可以不断优化和提高本技术实施例提供的防止密码攻击的方法的攻击防御能力。46.在另一示例中,密码泄露风险程度可以基于密码泄露次数获得,例如,评估登录密码的密码泄露风险程度,包括:获取多次登录请求中的每次登录请求所采用的登录密码的密码泄露次数;基于密码泄露次数获取对应的密码泄露风险程度。47.具体地,密码泄露风险程度可用密码泄露得分表示。如可以按照预设函数确定一定密码泄露次数对应的密码泄露得分,其中,密码泄露次数越高的登录密码对应的密码泄露得分越高。密码泄露得分的区间范围可以是(0,100),(0,1)或(1,10)等等。48.例如可以通过如下公式确定密码泄露得分:[0049][0050]当密码泄露次数为0时,对应的密码泄露得分0;当密码泄露次数为1时,对应的密码泄露得分10;当密码泄露次数超过1万时,对应的密码泄露得分大于90,且位于区间[90,100)内。[0051]针对多种不同的泄露密码,其对应的密码泄露次数的分布是不均匀的,例如对多种泄露密码按照密码泄露次数进行排列,得到的密码泄露次数曲线是不平滑的。通过利用密码泄露得分来表征密码泄露次数,可以得到平滑的曲线。例如密码泄露次数为1万次以上的泄露密码可以视为高危密码,在此种条件下,密码泄露次数为1万次和为2万次的泄露密码容易被泄露的程度是差不多的,但是在密码泄露次数曲线上,密码泄露次数为1万次和为2万次的泄露密码之间的差距很大(对应差值为1万次)。因此,利用密码泄露得分可以通过较小的区间、更贴切地表征泄露密码容易被泄露的程度,且基于密码泄露得分可以拓展更多的功能。[0052]当然,也可以通过其他函数或规则根据密码泄露次数确定密码泄露得分,例如归一化函数等,只要密码泄露得分可以表征对应登录请求所采用的登录密码被泄露的容易程度即可。[0053]在其他示例中,密码泄露风险程度也可以用颜色深浅或其他可以区分泄露程度的方式来表示,本技术实施例对此不做限制。[0054]230:基于登录密码的密码泄露风险程度,确定至少一个攻击候选密码,攻击候选密码为密码泄露风险程度处于预设范围的登录密码。[0055]攻击候选密码可以表示该登录密码是高危密码,采用该登录密码进行登录的账号存在被恶意登录的可能性,即存在被攻击者攻击的可能性。换句话说,基于该登录密码生成的登录请求很可能是恶意登录请求。[0056]密码泄露风险程度越高,对应的登录密码是高危密码的可能性越大。服务器可以根据登录密码的密码泄露风险程度确定该登录密码是否为攻击候选密码。例如,密码泄露风险程度用密码泄露得分表示,密码泄露得分大于设定阈值,则确定对应的登录密码为攻击候选密码。具体地,可以将密码泄露得分处于预设范围的登录密码确定为攻击候选密码。多次登录请求对应的登录密码中可能没有、有一个或多个攻击候选密码。[0057]预设范围可以根据需要进行设置,例如,预设范围的上限为密码泄露得分的最大值;或者预设范围的上限为密码泄露得分最大值的90%、95%等,这样可以避免获取的处于最大值附近的密码泄露得分可能不准确的情况,进而避免影响密码攻击防御策略选择的准确度。在一示例中,密码泄露得分的最大值可取100,预设范围的上限可为100、90或95等。[0058]240:基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,以防止来自第一源地址的密码攻击。[0059]当多次登录请求对应的登录密码中存在攻击候选密码时,并不能说明第一源地址上存在密码攻击行为,需要进一步根据预设时段内多次登录请求中采用攻击候选密码的登录请求的数量判断存在密码攻击行为的可能性,即需要根据攻击候选密码对应的登录频次(单位时间内采用攻击候选密码进行登录的次数)判断存在密码攻击行为的可能性。[0060]具体地,当采用攻击候选密码的登录请求的数量越多时,第一源地址上存在密码攻击行为的可能性越大。根据多次登录请求中采用攻击候选密码的登录请求的数量的不同,可以采取不同的密码攻击防御策略。[0061]例如,可以分开统计采用不同攻击候选密码的登录请求的数量,对于任一攻击候选密码,只要对应的登录请求的数量满足任一密码攻击防御策略的触发条件,服务器即可执行对应的密码攻击防御策略。或者,可以统一统计采用不同攻击候选密码的登录请求的数量,对于采用攻击候选密码的登录请求的数量满足任一密码攻击防御策略的触发条件,服务器即可执行对应的密码攻击防御策略,这样可以有效地提高针对密码攻击的防御性,避免攻击者采用数量较多的登录密码尝试登录多个账号而未被及时防御的情况。[0062]无论是分开统计还是统一统计采用不同攻击候选密码的登录请求的数量,其对应的密码攻击防御策略的选择与执行过程是类似的,下文以统一统计采用不同攻击候选密码的登录请求的数量为例,对密码攻击防御策略的选择与执行过程进行详细描述。[0063]在一示例中,若多次登录请求中采用攻击候选密码的登录请求的数量大于第一阈值,则可以认为第一源地址上存在密码攻击行为的可能性较大,服务器可以对第一源地址执行相应的密码攻击防御策略,如对第一源地址执行封禁操作,或向多次登录请求对应账号的用户发送通知信息以验证是否是本人登录等等。[0064]在另一示例中,若多次登录请求没有爆破(成功碰撞上)某个账号,且多次登录请求中采用攻击候选密码的登录请求的数量大于第五阈值且小于或等于第一阈值,则可以认为第一源地址上有可能存在密码攻击行为,服务器可以向多次登录请求对应账号的用户发送通知信息以验证是否是本人登录,例如执行二次认证操作。进一步地,若多次登录请求中采用攻击候选密码的登录请求的数量继续增加且大于第一阈值,则可以认为第一源地址上存在密码攻击行为的可能性较大,服务器可以对第一源地址执行封禁操作。第一阈值和第五阈值可以根据需要进行设置。[0065]本技术实施例提供的防止密码攻击的方法,通过基于密码泄露风险程度从多次登录请求所采用的登录密码中确定攻击候选密码,进而根据采用攻击候选密码的登录请求的数量选择并执行对应的密码攻击防御策略,如此可以提高账号登录过程的安全性,防止恶意登录行为,具有一定的安全防御能力。此外,本技术实施例可以避免针对每次登录行为通过提供二次认证的方式来提高安全性,如此可以提高账号登录效率以及用户体验。而与未设置二次认证的常规账号登录方法相比,本技术实施例可以在保持同样账号登录效率和用户体验的基础上,具备更高的安全性,可以抵御密码攻击,防止恶意登录行为。[0066]根据本技术一实施例,基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,包括:确定多次登录请求中基于至少一个攻击候选密码登录一个或多个账号的登录请求的数量;在数量大于第一阈值时,对第一源地址执行封禁操作。[0067]具体地,多次登录请求对应的登录密码的个数可以是多个,多个登录密码中被确定为攻击候选密码的个数也可以是多个。在预设时段内,来自第一源地址的多次登录请求中,基于任一攻击候选密码的登录请求的数量可以是一个或多个,具体数量可以是由攻击者设置的,或者是随机的。可以对任一攻击候选密码对应的登录请求进行统一统计,进而得到多次登录请求中采用攻击候选密码的登录请求的数量。[0068]例如,采用三个登录密码分别尝试登录多个账号,在一定时间内,可以生成多次登录请求。三个登录密码中被确定为攻击候选密码的个数为两个,“123456”为第一个攻击候选密码,“1234567”为第二个攻击候选密码。多个登录请求中采用“123456”作为登录密码的登录请求的个数为a,多个登录请求中采用“1234567”作为登录密码的登录请求的个数为b,如果a+b大于第一阈值,则可以认为发出多个登录请求的ip地址或ip网关上存在密码攻击行为的可能性较大,其中该密码攻击行为可以是密码喷射攻击行为。[0069]在本实施例中,第一阈值可以根据实际需要进行设置,例如可以是100、150或200等。服务器对多次登录请求的验证可均为不通过,即多次登录请求所采用的登录密码与账号并不匹配,也就是说,在有限次的登录尝试中,所采用的登录密码并没有成功碰撞上某个账号。或者,服务器对多次登录请求中的当前登录请求的验证为通过,即当前登录请求所采用的登录密码成功碰撞上当前账号。在多次登录请求中采用攻击候选密码的登录请求的数量大于第一阈值时,服务器可对第一源地址执行封禁操作,封禁操作可以是临时的,如对第一源地址执行一定时长的封禁,或者可以对第一源地址进行验证,在验证通过后,解除对第一源地址的封禁。[0070]在一些场景下,有些企业的员工会在一定时间内基于同一ip网关发出账号登录请求,为了避免将这种情况误判为密码喷射攻击行为,本实施例通过确定攻击候选密码以及确定采用攻击候选密码的登录请求的数量,进而在数量大于第一阈值时,对第一源地址执行封禁操作,这样可以避免误判,避免影响正常登录行为,保证正常登录行为的顺利进行。[0071]根据本技术一实施例,基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,还包括:在数量小于或等于第一阈值且大于第二阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,对当前登录请求执行阻断操作。[0072]具体地,若多次登录请求中采用攻击候选密码的登录请求的数量并没有达到一定的数量级,例如,采用攻击候选密码的登录请求的数量小于或等于第一阈值,则第一源地址上存在密码攻击行为的可能性较小,此时不宜直接对第一源地址执行封禁操作,容易影响正常登录行为。[0073]因此,在采用攻击候选密码的登录请求的数量小于或等于第一阈值时,可以对多次登录请求做进一步的判断,例如,判断多次登录请求中针对当前账号的当前登录请求是否验证成功。如果针对当前账号的当前登录请求验证成功,则可能表明在有限次的登录尝试中,当前登录请求所采用的登录密码成功碰撞上当前账号,此时第一源地址上仍有存在密码攻击行为的可能性。为了防止密码攻击,可以进一步判断采用攻击候选密码的登录请求的数量是否大于第二阈值。第二阈值可以小于第一阈值,其可以根据实际情况进行设置,例如可以是10、15或20等。[0074]若采用攻击候选密码的登录请求的数量大于第二阈值,则可以对当前登录请求执行阻断操作,避免攻击者成功登录当前账号进而基于当前账号执行危害性操作,如横向渗透、提权攻击等。[0075]在本实施例中,当采用攻击候选密码的登录请求的数量小于或等于第一阈值时,该第一源地址上存在密码喷射攻击行为的可能性也是有的,只是攻击者在尝试登录次数小于或等于第一阈值的情况下就成功爆破了当前登录的账号,使得当前登录请求的验证通过,所以此时可以直接对当前登录请求执行阻断操作,以避免攻击者基于当前账号执行危害性操作,同时提高账号登录过程的安全性。此外,在本实施例中,第一源地址上也可能不存在密码喷射攻击行为,因此通过对当前登录请求执行阻断操作,还可以在一定程度上保证其他用户的正常登录行为。[0076]可选地,基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,还包括:在数量小于或等于第一阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,确定当前登录请求采用的登录密码在多次登录请求中使用的次数;在次数大于第四阈值时,对当前登录请求执行阻断操作。[0077]具体地,如果采用攻击候选密码的登录请求的数量小于或等于第一阈值,且多次登录请求中针对当前账号的当前登录请求验证成功,则可能表明在有限次的登录尝试中,当前登录请求所采用的登录密码成功碰撞上当前账号,此时第一源地址上仍有存在密码攻击行为的可能性。为了防止密码攻击,可以进一步判断当前登录请求采用的登录密码在多次登录请求中使用的次数是否大于第四阈值。第四阈值可以小于第一阈值,其可以根据实际情况进行设置,例如可以是5、10、15或20等。[0078]若当前登录请求采用的登录密码在多次登录请求中使用的次数大于第四阈值,则可以对当前登录请求执行阻断操作,避免攻击者成功登录当前账号进而基于当前账号执行危害性操作,如横向渗透、提权攻击等。[0079]在本实施例中,当采用攻击候选密码的登录请求的数量小于或等于第一阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,可以根据当前登录请求采用的登录密码在多次登录请求中使用的次数与第四阈值的大小来判断第一源地址上存在密码喷射攻击行为的可能性,如此可以提高判断结果的准确度,进而提高根据判断结果执行对应的密码攻击防御策略的准确度。例如可以直接对当前登录请求执行阻断操作,以避免攻击者基于当前账号执行危害性操作。或者,对当前登录请求执行阻断操作并对第一源地址执行封禁操作,这样既可以避免攻击者基于当前账号执行危害性操作,同时又可以避免攻击者基于第一源地址发起其他密码攻击行为,如此可以进一步保证网络安全。[0080]进一步地,该防止密码攻击的方法还包括:提醒当前账号的用户当前账号可能遭到攻击;和/或向当前账号的用户发送统一资源定位符url,以便于当前账号的用户通过统一资源定位符url进行再次登录。[0081]具体地,在多次登录请求中针对当前账号的当前登录请求验证成功,并对当前登录请求执行阻断操作的情况下,可以进一步提醒当前账号的用户当前账号可能遭到攻击。例如,可以通过短信、电话、邮件等方式提醒用户。[0082]可选地,可以向当前账号的用户发送统一资源定位符(universal resource locator,url),以便于当前账号的用户通过统一资源定位符url进行再次登录。这样可以为当前账号的用户提供新的登录路径,降低误阻断风险,避免影响用户的正常登录行为。具体地,可以通过邮件、短信等方式向用户发送url。例如,可以在向用户发送的提醒通知中附带url,以便于用户了解其账号可能遭到攻击,且可以基于url进行再次登录。[0083]在本实施例中,在对当前登录请求执行阻断操作的同时,提醒当前账号的用户当前账号可能遭到攻击,可以便于用户对当前登录请求进行查看和核实,并在核实后及时更改密码,以提高登录密码的强度,防止下一次被攻击成功。此外,通过向当前账号的用户发送url,可以为当前账号的用户提供新的登录路径,避免因判断错误而对当前登录请求执行阻断进而影响用户的正常登录的情况,如此可以在提高登录过程安全性的同时保障用户的正常登录需求。[0084]根据本技术一实施例,基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,还包括:在数量小于或等于第二阈值且大于第三阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,对当前登录请求执行二次认证操作。[0085]具体地,如果采用攻击候选密码的登录请求的数量小于或等于第二阈值,且多次登录请求中针对当前账号的当前登录请求验证成功,则可能表明在有限次的登录尝试中,当前登录请求所采用的登录密码成功碰撞上当前账号,此时第一源地址上存在密码攻击行为的可能性还是有的。为了防止密码攻击,可以进一步判断采用攻击候选密码的登录请求的数量是否大于第三阈值。第三阈值可以小于第二阈值,其可以根据实际情况进行设置,例如可以是0、3或5等。[0086]若采用攻击候选密码的登录请求的数量大于第三阈值,则可以对当前登录请求执行二次认证操作。二次认证操作可以包括面部识别、发送手机短信验证码等操作。[0087]进一步地,如果采用攻击候选密码的登录请求的数量小于或等于第三阈值(第三阈值不为0的情况),且多次登录请求中针对当前账号的当前登录请求验证成功,则可以认为第一源地址上不存在密码攻击行为的可能性较大,此时可以对当前登录请求执行登录成功的操作,这样可以在保证账号登录过程安全性的同时,维持简易的登录操作,保障用户体验。[0088]在本实施例中,当采用攻击候选密码的登录请求的数量大于第三阈值且小于或等于第二阈值时,表明攻击候选密码在多次登录请求中被使用的次数处于低频率,在这种情况下,对当前登录请求执行二次认证操作可以降低密码喷射攻击成功的概率,同时保证用户的当前登录过程的顺利进行。[0089]根据本技术一实施例,多个密码攻击防御策略包括如下至少一项:对多次登录请求中的当前登录请求执行阻断操作;对第一源地址执行封禁操作;对当前登录请求执行二次认证操作。[0090]为了避免重复,任一密码攻击防御策略的执行过程可以参考上述实施例中的描述,此处不再赘述。[0091]图3所示为本技术另一示例性实施例提供的防止密码攻击的方法的流程示意图,图3实施例是图2实施例的例子,为避免重复,相同之处不再赘述。图3所示的防止密码攻击的方法包括如下内容。[0092]310:获取预设时段内来自第一源地址的多次登录请求所采用的登录密码。[0093]320:评估多次登录请求所采用的登录密码的密码泄露得分。[0094]密码泄露得分用于评价对应登录请求所采用的登录密码被泄露的程度。[0095]330:基于多次登录请求所采用的登录密码的密码泄露得分,确定至少一个攻击候选密码,攻击候选密码为密码泄露得分处于预设范围的登录密码。[0096]例如,预设范围的区间为[90,100),若密码泄露得分位于该区间,则可以说明登录密码对应的密码泄露次数超过一定次数(如1万次),该登录密码容易被攻击者用作攻击候选密码。[0097]340:确定多次登录请求中基于至少一个攻击候选密码登录一个或多个账号的登录请求的数量。[0098]350:判断数量是否大于第一阈值。[0099]若数量大于第一阈值,则执行360,否则执行370。[0100]360:对第一源地址执行封禁操作。[0101]例如,第一阈值可以为100,若数量大于第一阈值,则说明第一源地址发起了密码喷射攻击的可能性较大,此时可以对第一源地址执行封禁操作来防御密码喷射攻击。[0102]370:判断当前登录请求是否成功碰撞上当前账号。[0103]若当前登录请求成功碰撞上当前账号,则执行380,否则可以暂不执行任何防御策略。[0104]具体地,在数量小于或等于第一阈值(如100)的情况下,如果存在密码喷射攻击行为,该密码喷射攻击行为可能是在100次的登录尝试以内成功碰撞上某个账号,这样不会触发步骤360中的密码攻击防御策略,可以执行步骤380的判断,进而选择对应的密码攻击防御策略。[0105]如果在100次的登录尝试以内,当前登录请求没有成功碰撞上某个账号,则表明目前的各个账号的登录状态是稳定的,可以暂不执行任何防御策略。[0106]380:判断数量是否大于第二阈值。[0107]若数量大于第二阈值,则执行390,否则执行391。[0108]390:对当前登录请求执行阻断操作,提醒当前账号的用户当前账号可能遭到攻击,并向当前账号的用户发送url。[0109]例如,第二阈值可以为10,若数量大于第二阈值,则说明第一源地址有发起密码喷射攻击的可能,此时可以对当前登录请求执行阻断操作,并向当前账号的用户发送通知以提醒用户其账号可能遭到攻击,从而向用户提供更好的反馈服务。此外,针对可能出现的误阻断的情况,可以在用户通知中附带url,并告知用户可以通过该url进行再次登录,如此可降低误阻断风险。[0110]391:判断数量是否大于第三阈值。[0111]若数量大于第三阈值,则执行392,否则执行393。[0112]392:对当前登录请求执行二次认证操作。[0113]例如,第三阈值可以为5,若数量大于第三阈值,则说明第一源地址有发起密码喷射攻击的可能,此时可以对当前登录请求执行二次认证操作,如此可降低密码喷射攻击成功的概率,同时保证用户的当前登录过程的顺利进行。[0114]393:对当前登录请求执行登录成功的操作。[0115]本技术实施例提供的防止密码攻击的方法,通过基于泄露密码数据集配置密码泄露次数检测能力,并基于密码泄露次数获取密码泄露得分,基于该得分可以快速判断某个互联网协议(internet protocol,ip)地址/ip网关上是否存在密码喷射攻击行为,或某个账号是否被密码喷射攻击行为攻击,从而可以对ip地址/ip网关进行临时封禁或对相应的账号进行登录阻断等,以防御攻击者的密码喷射攻击行为。本技术实施例提供的防止密码攻击的方法通过密码泄露得分来分析密码喷射攻击行为,可以不依赖于登录密码强度的设置,因为强密码并不一定没有被泄露过,因此采用设置强密码的策略并不能保证用户登录时的安全性。进一步地,针对具备企业内部可信任网络访问权限的攻击者发起的密码喷射攻击行为,一般基于ip地址白名单的访问策略是难以对其进行识别和防御的,而本技术实施例是基于多次登录请求中采用攻击候选密码的登录请求的数量选择并执行对应的密码攻击防御策略,因此可以降低企业内部人员攻击成功的可能性。此外,本技术实施例可以避免账号登录过程中的二次认证,可以基于动态计算过程(采用攻击候选密码的登录请求的数量的动态确定过程)来选择是否触发二次认证,因此可提高用户体验。[0116]示例性装置[0117]图4所示为本技术一示例性实施例提供的防止密码攻击的装置400的结构示意图。如图4所示,防止密码攻击的装置400包括:获取模块410、确定模块420以及执行模块430。[0118]获取模块410用于获取预设时段内来自第一源地址的多次登录请求所采用的登录密码;确定模块420用于评估登录密码的密码泄露风险程度,并且基于登录密码的密码泄露风险程度,确定至少一个攻击候选密码,攻击候选密码为密码泄露风险程度处于预设范围的登录密码;执行模块430用于基于多次登录请求中采用至少一个攻击候选密码的登录请求的数量,从多个密码攻击防御策略中选择并执行对应的密码攻击防御策略,以防止来自第一源地址的密码攻击。[0119]本技术实施例提供的防止密码攻击的装置,通过基于密码泄露风险程度从多次登录请求所采用的登录密码中确定攻击候选密码,进而根据采用攻击候选密码的登录请求的数量选择并执行对应的密码攻击防御策略,如此可以提高账号登录过程的安全性,防止恶意登录行为,具有一定的安全防御能力。此外,本技术实施例可以避免针对每次登录行为通过提供二次认证的方式来提高安全性,如此可以提高账号登录效率以及用户体验。而与未设置二次认证的常规账号登录方法相比,本技术实施例可以在保持同样账号登录效率和用户体验的基础上,具备更高的安全性,可以抵御密码攻击,防止恶意登录行为。[0120]根据本技术一实施例,执行模块430用于:确定多次登录请求中基于至少一个攻击候选密码登录一个或多个账号的登录请求的数量;在数量大于第一阈值时,对第一源地址执行封禁操作。[0121]根据本技术一实施例,执行模块430还用于:在数量小于或等于第一阈值且大于第二阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,对当前登录请求执行阻断操作。[0122]根据本技术一实施例,装置400还包括发送模块440,用于:提醒当前账号的用户当前账号可能遭到攻击;和/或向当前账号的用户发送统一资源定位符url,以便于当前账号的用户通过统一资源定位符url进行再次登录。[0123]根据本技术一实施例,执行模块430还用于:在数量小于或等于第一阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,确定当前登录请求采用的登录密码在多次登录请求中使用的次数;在次数大于第四阈值时,对当前登录请求执行阻断操作。[0124]根据本技术一实施例,装置400还包括发送模块440,用于:提醒当前账号的用户当前账号可能遭到攻击;和/或向当前账号的用户发送统一资源定位符url,以便于当前账号的用户通过统一资源定位符url进行再次登录。[0125]根据本技术一实施例,执行模块430还用于:在数量小于或等于第二阈值且大于第三阈值,且多次登录请求中针对当前账号的当前登录请求验证成功时,对当前登录请求执行二次认证操作。[0126]根据本技术一实施例,确定模块420用于:获取多次登录请求中的每次登录请求所采用的登录密码的密码泄露次数,密码泄露次数用于表示登录密码在历史密码泄露事件中出现的次数;基于密码泄露次数获取对应的密码泄露风险程度。[0127]根据本技术一实施例,确定模块420用于:计算登录密码对应的哈希值;基于哈希值从密码泄露数据集中获取密码泄露次数。[0128]根据本技术一实施例,密码泄露风险程度为密码泄露得分。[0129]根据本技术一实施例,多个密码攻击防御策略包括如下至少一项:对多次登录请求中的当前登录请求执行阻断操作;对第一源地址执行封禁操作;对当前登录请求执行二次认证操作。[0130]根据本技术一实施例,预设范围的上限为密码泄露得分的最大值。[0131]应当理解,上述实施例中的获取模块410、确定模块420、执行模块430以及发送模块440的操作和功能可以参考上述图2或图3实施例中提供的防止密码攻击的方法中的描述,为了避免重复,在此不再赘述。[0132]图5所示为本技术一示例性实施例提供的用于执行防止密码攻击的方法的电子设备500的框图。[0133]参照图5,电子设备500包括处理组件510,其进一步包括一个或多个处理器,以及由存储器520所代表的存储器资源,用于存储可由处理组件510执行的指令,例如应用程序。存储器520中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件510被配置为执行指令,以执行上述防止密码攻击的方法。[0134]电子设备500还可以包括一个电源组件被配置为执行电子设备500的电源管理,一个有线或无线网络接口被配置为将电子设备500连接到网络,和一个输入输出(i/o)接口。可以基于存储在存储器520的操作系统操作电子设备500,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm或类似。[0135]一种非临时性计算机可读存储介质,当存储介质中的指令由上述电子设备500的处理器执行时,使得上述电子设备500能够执行一种防止密码攻击的方法。[0136]上述所有可选技术方案,可采用任意结合形成本技术的可选实施例,在此不再一一赘述。[0137]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。[0138]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。[0139]在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0140]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0141]另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。[0142]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序校验码的介质。[0143]需要说明的是,在本技术的描述中,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。[0144]以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换等,均应包含在本技术的保护范围之内。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
防止密码攻击的方法、装置及电子设备与流程
作者:admin
2022-09-03 13:58:04
233
关键词:
电子通信装置的制造及其应用技术
专利技术
- 下一篇: 文本翻译方法和装置、存储介质及电子设备与流程
- 上一篇: 心内科介入治疗术后康复锻炼装置