本公开实施例涉及一种异常访问的检测方法、装置、存储介质和电子设备。
背景技术:
1、互联网技术蓬勃发展至今,琳琅满目的应用方便了我们的生活,同时也催生了一些灰色产业,如通过爬取数据、恶意攻击等方式,来获取不正当的利益。对单个ip在单位时间内的访问进行测算评估,是进行预警监控的一个重要的参考标准。
2、传统的令牌桶测算算法,是以一个恒定的速率往桶内放令牌,只要能从桶中获取到令牌,就被认为是合理的访问,但对于偶然的,有持续时间较短的正常高频请求,容易误伤,对于持续的不超过峰值尺寸的恶意流量也无法准确识别出来,因此,相关实现中异常访问检测的准确性比较低。
技术实现思路
1、有鉴于此,本申请提供一种异常访问的检测方法、装置、系统、存储介质和电子设备,能够提高异常访问检测的准确性。
2、为解决上述技术问题,本申请的技术方案是这样实现的:
3、在一个实施例中,提供了一种异常访问的检测方法,所述检测方法包括:
4、在周期循环的每个滑动时间窗内,基于目标ip的访问流量使第一令牌桶和第二令牌桶中至少一个令牌桶的令牌耗尽时,获取目标ip在所述滑动时间窗内对第一令牌桶的第一耗尽次数、以及对第二令牌桶的第二耗尽次数;其中,所述第一令牌桶和所述第二令牌桶中的令牌响应于所述目标ip的访问而逐次消耗,所述第一令牌桶以第一令牌发放速率补充令牌,所述第二令牌桶以不同于所述第一令牌发放速率的第二令牌发放速率补充令牌,且所述第一令牌桶和所述第二令牌桶均被配置为在令牌耗尽时自动执行令牌填满操作;
5、基于所述第一耗尽次数和所述第二耗尽次数,检测所述目标ip的访问流量是否属于异常访问。
6、其中,所述基于所述第一耗尽次数和所述第二耗尽次数,检测所述目标ip的访问流量是否属于异常访问,包括:
7、将所述第一耗尽次数和所述第二耗尽次数,与预先设定的流量区间进行匹配,其中,所述流量区间是根据所述第一令牌桶和所述第二令牌桶的令牌发放速率划分的;
8、基于所述第一耗尽次数和所述第二耗尽次数与所述流量区间的匹配结果,确定所述目标ip的访问流量是否属于异常访问。
9、其中,所述流量区间针对第一令牌桶和第二令牌桶分别设置;且通过预设次数实现。
10、其中,所述滑动时间窗为第一时间窗,和/或,第二时间窗;
11、所述第二时间窗为若干个连续的第一时间窗,且所述第一时间窗与所述第二时间窗对应的流量区间不同。
12、其中,所述方法进一步包括:
13、响应于所述目标ip对应的访问请求,基于所述目标ip分别从所述第一令牌桶和所述第二令牌桶中获取令牌;
14、响应于所述第一令牌桶中的令牌已耗尽,针对所述目标ip记录所述第一令牌桶耗尽令牌一次,以及耗尽时间;并执行所述第一令牌桶填满操作;
15、响应于所述第二令牌桶中的令牌已耗尽,针对所述目标ip记录所述第二令牌桶耗尽令牌一次,以及耗尽时间;并执行所述第二令牌桶填满操作。
16、其中,所述执行所述第二令牌桶填满操作之后,所述方法进一步包括:为所述目标ip分配所述第一令牌桶中的令牌;
17、所述执行所述第二令牌桶填满操作之后,所述方法进一步包括:为所述目标ip分配所述第二令牌桶中的令牌。
18、其中,所述方法进一步包括:
19、响应于检测到所述目标ip的访问流量属于异常访问,输出告警。
20、在一个实施例中,提供了一种异常访问的检测装置,所述检测装置包括:
21、获取单元,被配置为执行在周期循环的每个滑动时间窗内,基于目标ip的访问流量使第一令牌桶和第二令牌桶中至少一个令牌桶的令牌耗尽时,获取目标ip在所述滑动时间窗内对第一令牌桶的第一耗尽次数、以及对第二令牌桶的第二耗尽次数;其中,所述第一令牌桶和所述第二令牌桶中的令牌响应于所述目标ip的访问而逐次消耗,所述第一令牌桶以第一令牌发放速率补充令牌,所述第二令牌桶以不同于所述第一令牌发放速率的第二令牌发放速率补充令牌,且所述第一令牌桶和所述第二令牌桶均被配置为在令牌耗尽时自动执行令牌填满操作;
22、检测单元,被配置为执行基于所述第一耗尽次数和所述第二耗尽次数,检测所述目标ip的访问流量是否属于异常访问。
23、在另一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现异常访问的检测方法。
24、在另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现异常访问的检测方法。
25、由上面的技术方案可见,上述实施例中通过两个不同速率的令牌桶的令牌桶耗尽情况,分别确定耗尽各令牌桶的令牌的耗尽次数,来检测滑动时间窗口内目标ip的访问流量是否属于异常访问;并且通过设置在令牌桶耗尽时执行自动填满操作,能实现在恒定时长上进行度量。该方案能够提高异常访问检测的准确性。
1.一种异常访问的检测方法,其特征在于,所述检测方法包括:
2.根据权利要求1所述的检测方法,其特征在于,所述基于所述第一耗尽次数和所述第二耗尽次数,检测所述目标ip的访问流量是否属于异常访问,包括:
3.根据权利要求2所述的检测方法,其特征在于,所述流量区间针对第一令牌桶和第二令牌桶分别设置,且通过预设次数实现。
4.根据权利要求2所述的检测方法,其特征在于,所述滑动时间窗为第一时间窗,和/或,第二时间窗;
5.根据权利要求1所述的检测方法,其特征在于,所述方法进一步包括:
6.根据权利要求5所述的检测方法,其特征在于,所述执行所述第二令牌桶填满操作之后,所述方法进一步包括:为所述目标ip分配所述第一令牌桶中的令牌;
7.根据权利要求1-6任一项所述的检测方法,其特征在于,所述方法进一步包括:
8.一种异常访问的检测装置,其特征在于,所述检测装置包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述的方法。