网站访问安全控制方法、装置及系统与流程

文档序号:18702621发布日期:2019-09-17 23:08阅读:181来源:国知局
网站访问安全控制方法、装置及系统与流程

本发明涉及信息系统安全控制技术领域,尤指一种网站访问安全控制方法、装置及系统。



背景技术:

随着互联网技术及电子商务的发展,越来越多的人参与到网络购物大军中,对于各大电商平台来说,用户登录信息的安全保护就显得特别重要。

目前,大量的网络用户为了便于记忆,存在将同一用户名,甚至相同密码,在不同论坛、网站进行注册使用的情况。这就使得:一方面,黑客有机会通过机器人等手段对类似注册用户功能进行“撞库”访问(即通过不断利用不同的用户名向系统提交注册请求,注册模块会比对提交用户名是否已经存在,从而达到猜测用户名的目的),另一方面,黑客还可以将猜测出来的已注册用户名,通过机器人攻击的方式,利用不同的计算机进行密码爆破,之所以利用不同的计算机,主要是绕开目前的验证码安全技术,通过不同的mac地址针对同一用户名,提交不同的密码,进行爆破。

以上情况给网络用户的信息安全带来极大的威胁,同时,也导致了系统的注册和登录功能在短时间内的多次访问,进而使得服务器性能大大降低,极大危害网站访问的安全。



技术实现要素:

为了解决网站访问的安全性问题,本发明实施例提供一种网站访问安全控制方法,所述方法包括:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

可选的,在本发明一实施例中,所述访问信息包括用户名和/或访问终端的mac地址。

可选的,在本发明一实施例中,在所述将所述访问信息及所述时间信息缓存至队列中之前还包括:建立以所述访问信息为唯一主键的队列。

本发明实施例还提供一种网站访问安全控制装置,所述装置包括:

获取模块,用于获取用户每一次访问的访问信息及对应的时间信息;

缓存模块,用于将所述访问信息及所述时间信息缓存至队列中;

时间差模块,用于当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

安全控制模块,用于判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

可选的,在本发明一实施例中,所述访问信息包括用户名和/或访问终端的mac地址。

可选的,在本发明一实施例中,所述装置还包括建立模块,用于建立以所述访问信息为唯一主键的队列。

本发明实施例还提供一种网站访问安全控制系统,所述系统包括:控制单元、存储单元、配置单元及验证单元;

所述控制单元接收用户每一次的访问信息及对应的时间信息,将所述访问信息及所述时间信息发送至所述存储单元中;

所述存储单元将所述访问信息及所述时间信息缓存至队列中;

所述配置单元用于设定预设长度值及预设时间值;

所述控制单元根据所述存储单元中缓存的队列,判断队列长度是否大于预设长度值,若是,则根据首次访问及末次访问分别对应的时间信息,确定时间差值;判断所述时间差值是否大于预设时间值,若是,则调用所述验证单元,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中;

所述验证单元用于对用户进行安全验证。

可选的,在本发明一实施例中,所述访问信息包括用户名和/或访问终端的mac地址。

可选的,在本发明一实施例中,所述系统还包括建立单元,用于建立以所述访问信息为唯一主键的队列。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

本发明针对用户的访问进行安全控制,使得黑客没有办法利用机器人等手段完成“撞库”等非法试探和猜测,在保证用户信息安全的同时,也杜绝了大量的非法访问给系统带来的不利影响,提高了系统运行的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一种网站访问安全控制方法的流程图;

图2为本发明一具体实施例中网站访问安全控制方法的流程图;

图3为本发明实施例一种网站访问安全控制系统的结构示意图;

图4为本发明实施例中存储单元的结构示意图;

图5为本发明实施例中验证单元的结构示意图;

图6为本发明实施例中配置单元的结构示意图;

图7为本发明实施例中网站访问安全控制系统的交互示意图;

图8为本发明实施例一种网站访问安全控制装置的结构示意图。

具体实施方式

本发明实施例提供一种网站访问安全控制方法、装置及系统。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示为本发明实施例一种网站访问安全控制方法的流程图,图中所示方法包括:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

作为本发明的一个实施例,所述访问信息包括用户名和/或访问终端的mac地址。

作为本发明的一个实施例,在所述将所述访问信息及所述时间信息缓存至队列中之前还包括:建立以所述访问信息为唯一主键的队列。

如图2所示为本发明一具体实施例中网站访问安全控制方法的流程图,具体过程为:将每一次访问网站注册和/或登录功能的信息通过缓存机制进行保存,访问信息包括用户名和/或访问终端的mac地址,然后针对访问信息分别建立以用户名或mac地址为唯一主键的队列,这样每次访问信息都会被放入上述队列中,此外,每次访问的时间信息也被放入所述队列中,再通过参数设定控制队列长度为n,以及访问时间阀值为t,那么当某个队列的第n+1次访问到来的时候,就进行访问安全控制判断,所述访问安全控制判断是这样进行的:

首先取出第1次和第n+1次访问的时间信息,用第n+1次访问的时间信息减去第1次访问的时间信息,得到差值t。

接着,判断t是否小于等于t,如果是,则说明超出了系统的安全设定,进入队列处理步骤和安全控制步骤,否则没有超出系统的安全设定,进入队列处理步骤。

安全控制步骤是这样进行处理的:通过流转到用户验证步骤,例如弹出图形验证码框让用户进行输入验证码并进行验证等,完成验证后才能进入后续业务处理。

队列处理步骤是这样进行处理的:队列的队头记录出队列(第一次访问信息从缓存中清除),将第n+1条记录放入队列中(将最近一次访问信息插入缓存),是典型的队列先进先出的处理方式。

在最极端的情况下,可以设置n为1,t为一个极小值,例如1秒,这样相当于除了第一次不需要进入安全控制步骤外,其他针对该用户名或者是在同一台计算机发起的访问都要求进入安全控制步骤,使得黑客没有办法利用机器人等手段完成“撞库”等非法试探和猜测,在保证用户信息安全的同时,也杜绝了上述大量的非法访问给系统带来的不利影响,提高了系统运行的效率。

本发明通过将用户对系统的访问信息作为比较对象,将用户的访问信息以队列形式放置存储单元中,并且将队列信息与配置单元中访问次数和访问时间进行比较,判断用户对系统的访问操作是否超频,如果超频则用户必须完成验证单元输出的验证码验证操作,杜绝了不法分子利用工具进行“撞库”等操作,并且在系统后台存储验证码信息时加入了防重放机制,让重复提交不断试探私密信息也无从得手,很大程度保障了系统信息的安全。同时,由于加入了频率控制,系统拒绝了大量重复和“撞库”的访问操作,压力减小很多,稳定性得到很大提升。

如图3所示为本发明实施例一种网站访问安全控制系统的结构示意图,图中所示系统包括:控制单元1、存储单元2、配置单元3及验证单元4;

所述控制单元接收用户每一次的访问信息及对应的时间信息,将所述访问信息及所述时间信息发送至所述存储单元中;

所述存储单元将所述访问信息及所述时间信息缓存至队列中;

所述配置单元用于设定预设长度值及预设时间值;

所述控制单元根据所述存储单元中缓存的队列,判断队列长度是否大于预设长度值,若是,则根据首次访问及末次访问分别对应的时间信息,确定时间差值;判断所述时间差值是否大于预设时间值,若是,则调用所述验证单元,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中;

所述验证单元用于对用户进行安全验证。

作为本发明的一个实施例,所述访问信息包括用户名和/或访问终端的mac地址。

作为本发明的一个实施例,所述系统还包括建立单元,用于建立以所述访问信息为唯一主键的队列。

在本实施例中,控制单元在接收到客户端的每次注册和/或登录功能访问后,调用存储单元,将所述访问的信息通过缓存机制进行保存,访问信息包括用户名和/或访问终端的mac地址,然后针对所述访问信息分别建立以用户名或mac地址为唯一主键的队列,这样每次访问信息都会被放入上述队列中,此外,每次访问的时间信息也被放入所述队列中,并进行队列处理,在需要进行安全控制的时候,将接收验证单元发送过来的验证码,并发送到客户端,在接收到客户端的验证码后,发送给验证单元进行验证,根据验证结果决定拒绝访问,还是进入后续业务处理。

存储单元保存有访问信息的队列记录。配置单元通过参数的方式设定控制队列长度为n,以及访问时间阀值为t。验证单元将产生验证码并返回给控制单元,并完成控制单元传输过来的验证码的验证工作。

控制单元在当某个队列的第n+1次访问到来的时候,就进行访问安全控制判断,访问安全控制判断是这样进行的:首先控制单元从存储单元取出该队列的第1次和第n+1次访问的时间信息,用第n+1次访问的时间信息减去第1次访问的时间信息,得到差值t。接着,控制单元判断t是否小于t,如果是,则说明超出了系统的安全设定,进入队列处理步骤和安全控制步骤,否则没有超出系统的安全设定,进入队列处理步骤。

安全控制步骤是这样进行处理的:通过调用验证单元流转到用户验证步骤,弹出图形验证码框让用户进行输入验证码并进行验证等,完成验证后才能进入后续业务处理。队列处理步骤是这样进行处理的:队列的队头记录出队列,将第n+1条记录放入队列中,是典型的队列先进先出的处理方式。

在本发明一具体实施例中,当用户在访问系统时,控制单元1接受到此次请求,并查找存储单元2的信息队列5(存储单元结构示意图如图4所示)中是否存在这个用户之前的访问身份信息(包含用户名和用户mac地址),判断方式可通过在存储单元2中利用缓存机制存储用户的访问信息,以队列方式,分别存储用户mac地址信息和用户的用户名信息,通过用户mac地址和用户名两种方式将每个用户区分开来,并以队列方式将这些信息进行存储。下面以mac地址作为用户访问信息来说明(用户名作为访问信息也一样,它们处于两个相同层级的队列信息里):

在控制单元模块中,当控制单元1接收到请求时,通过配置单元4(配置单元结构示意图如图6所示)查找到对应的缓存信息9,而后通过缓存中用户队列查找该用户是否存在:如果不存在,则控制单元1将会在存储单元2中新建一个针对该用户的访问信息队列5,因为判断是该用户第一次访问,所以将这次访问(第一次)的mac地址和访问时间等信息放入队列的队头位置;如果存在,则在存储单元2中获取这个用户的访问信息队列5,并通过配置单元4获取系统规定的用户的访问次数7和访问时间8。

此时比较用户访问信息队列5的长度与配置访问次数7的大小,将会出现两种情况:如果队列长度小于配置访问次数,说明此时访问次数并未达标,队列没满,将用户该次访问信息(mac地址和时间等信息)作为队列元素加入到队列队尾中,并允许用户进行下边正常的访问流程;如果队列长度等于配置单元中访问次数,此时说明前一次访问已数量达标,队列已满,此时取出队头位置元素,获取队头元素即用户第一次访问系统接口的时间,与这次访问时间进行相差比较,得出的结果与配置单元4中配置的用户访问时间8进行比较,比较结果会出现两种情况:如果相差时间大于或者等于配置单元4用户访问时间8,说明此时访问满足系统要求,用户第n次访问系统的时间减去第1次访问系统的时间,超过系统设置的访问阀值t,也就是说明用户访问系统的频率在系统设定之内,用户应为正常操作,用户可以进行余下业务操作,并且系统将这次访问插入队尾位置,同时将队头访问元素出队;如果相差时间小于配置单元4中用户访问时间8,说明用户访问系统的频率超过了系统设定的频率,当前操作可能是机器撞库行为,此时访问队列保持不变,控制单元1转入验证单元3。

在验证单元3(验证单元结构示意图如图5所示)中,服务器在后台通过规则生成验证码6信息,这个验证码信息可以是数字组合,可以是数字英文组合,也可以使汉字颜色组合。系统将生成的验证码6信息用指定对称密钥进行加密后以(key,value)的方式放置于session中,并且以图形对象或者手机验证码的方式输出到用户界面。值得注意的是,每次生成的验证码都是一次一个,如果用户重复提交,在比对用户输入和后台验证码后,无论正确还是错误,都将会清除掉session中验证码的相关信息,保证整个系统的防重放。此时用户界面接受到验证单元3输出的验证码信息6,其必须手动完成验证码填写,从而避免机器人撞库等行为。在用户输入完验证码后,如果输入错误,则验证单元3将会重新在后台生成一份新的验证码信息6,同时对输出到用户界面的图形界面进行刷新,并提示用户重新进行输入。当用户输入的验证码提交到后台对比成功,并且这次的用户访问系统的频率没有超过系统设定的频率(超频),则可以进行后续业务流程操作。系统中各部分交互示意图如图7所示。

在最极端的情况下,可以设置n为1,t为一个极小值,例如1秒,这样相当于除了第一次不需要进入安全控制步骤外,其他针对该用户名或者是在同一台计算机发起的访问都要求进入安全控制步骤,使得黑客没有办法利用机器人等手段完成“撞库”等非法试探和猜测,在保证用户信息安全的同时,也杜绝了上述大量的非法访问给系统带来的不利影响,提高了系统运行的效率。

本发明通过将用户对系统的访问信息作为比较对象,将用户的访问信息以队列形式放置存储单元中,并且将队列信息与配置单元中访问次数和访问时间进行比较,判断用户对系统的访问操作是否超频,如果超频则用户必须完成验证单元输出的验证码验证操作,杜绝了不法分子利用工具进行“撞库”等操作,并且在系统后台存储验证码信息时加入了防重放机制,让重复提交不断试探私密信息也无从得手,很大程度保障了系统信息的安全。同时,由于加入了频率控制,系统拒绝了大量重复和“撞库”的访问操作,压力减小很多,稳定性得到很大提升。

如图8所示为本发明实施例一种网站访问安全控制装置的结构示意图,图中所示装置包括:获取模块10,用于获取用户每一次访问的访问信息及对应的时间信息;

缓存模块20,用于将所述访问信息及所述时间信息缓存至队列中;

时间差模块30,用于当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

安全控制模块40,用于判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

作为本发明的一个实施例,所述访问信息包括用户名和/或访问终端的mac地址。

作为本发明的一个实施例,所述访问信息包括用户名和/或访问终端的mac地址。

基于与上述一种网站访问安全控制方法相同的申请构思,本发明还提供了上述一种网站访问安全控制装置。由于该一种网站访问安全控制装置解决问题的原理与一种网站访问安全控制方法相似,因此该一种网站访问安全控制装置的实施可以参见一种网站访问安全控制方法的实施,重复之处不再赘述。

本发明通过将用户对系统的访问信息作为比较对象,将用户的访问信息以队列形式放置存储单元中,并且将队列信息与配置单元中访问次数和访问时间进行比较,判断用户对系统的访问操作是否超频,如果超频则用户必须完成验证单元输出的验证码验证操作,杜绝了不法分子利用工具进行“撞库”等操作,并且在系统后台存储验证码信息时加入了防重放机制,让重复提交不断试探私密信息也无从得手,很大程度保障了系统信息的安全。同时,由于加入了频率控制,系统拒绝了大量重复和“撞库”的访问操作,压力减小很多,稳定性得到很大提升。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取用户每一次访问的访问信息及对应的时间信息;

将所述访问信息及所述时间信息缓存至队列中;

当队列长度大于预设长度值时,根据首次访问及末次访问分别对应的时间信息,确定时间差值;

判断所述时间差值是否大于预设时间值,若是,则对用户进行安全验证,若不是,则清除所述队列中首次访问对应的访问信息及时间信息,并将末次访问对应的访问信息及时间信息缓存至所述队列中。

基于与上述一种网站访问安全控制方法相同的申请构思,本发明还提供了上述一种计算机设备及一种计算机可读存储介质。由于该一种计算机设备及一种计算机可读存储介质解决问题的原理与一种网站访问安全控制方法相似,因此该一种计算机设备及一种计算机可读存储介质的实施可以参见一种网站访问安全控制方法的实施,重复之处不再赘述。

本发明通过将用户对系统的访问信息作为比较对象,将用户的访问信息以队列形式放置存储单元中,并且将队列信息与配置单元中访问次数和访问时间进行比较,判断用户对系统的访问操作是否超频,如果超频则用户必须完成验证单元输出的验证码验证操作,杜绝了不法分子利用工具进行“撞库”等操作,并且在系统后台存储验证码信息时加入了防重放机制,让重复提交不断试探私密信息也无从得手,很大程度保障了系统信息的安全。同时,由于加入了频率控制,系统拒绝了大量重复和“撞库”的访问操作,压力减小很多,稳定性得到很大提升。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,比如rom/ram、磁碟、光盘等。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1