本公开涉及计算机,具体涉及信息流、网络安全、人工智能以及机器学习等,尤其涉及一种接口攻击的检测方法、装置、电子设备及存储介质。
背景技术:
1、随着互联网技术的发展,越来越多的接口暴露在互联网上,通过接口可以实现各种功能,如注册账号、发帖回帖、发送即时消息等。
2、合法的接口访问请求通常来自客户端,如浏览器ios或者android的应用(application;app)等。黑产通过滥用合法客户端,来访问接口,从而实现攻击。
技术实现思路
1、本公开提供了一种接口攻击的检测方法、装置、电子设备及存储介质。
2、根据本公开的一方面,提供了一种接口攻击的检测方法,包括:
3、获取接口的访问请求;
4、基于所述访问请求,从预先建立的用户代理簇信息库中获取匹配的目标用户代理簇的标识;
5、基于所述目标用户代理簇的标识和所述访问请求,获取多个访问三元组;各所述访问三元组包括目标用户代理簇的标识、所述访问请求的头部的键信息以及所述键信息对应的值信息;
6、基于所述多个访问三元组,检测所述访问请求是否为攻击。
7、根据本公开的另一方面,提供了一种接口攻击的检测装置,包括:
8、请求获取模块,用于获取接口的访问请求;
9、标识获取模块,用于基于所述访问请求,从预先建立的用户代理簇信息库中获取匹配的目标用户代理簇的标识;
10、三元组获取模块,用于基于所述目标用户代理簇的标识和所述访问请求,获取多个访问三元组;各所述访问三元组包括目标用户代理簇的标识、所述访问请求的头部的键信息以及所述键信息对应的值信息;
11、检测模块,用于基于所述多个访问三元组,检测所述访问请求是否为攻击。
12、根据本公开的再一方面,提供了一种电子设备,包括:
13、至少一个处理器;以及
14、与所述至少一个处理器通信连接的存储器;其中,
15、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方面和任一可能的实现方式的方法。
16、根据本公开的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上所述的方面和任一可能的实现方式的方法。
17、根据本公开的再另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方面和任一可能的实现方式的方法。
18、根据本公开的技术,能够有效地提高接口攻击的检测效率。
19、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种接口攻击的检测方法,包括:
2.根据权利要求1所述的方法,其中,基于所述访问请求,从预先建立的用户代理簇信息库中获取匹配的目标用户代理簇的标识,包括:
3.根据权利要求2所述的方法,其中,基于所述用户代理信息,从所述用户代理簇信息库中获取与所述用户代理信息的编辑距离最近的所述目标用户代理簇的标识,包括:
4.根据权利要求3所述的方法,其中,获取与所述用户代理信息的编辑距离最近的所述已聚类的用户代理信息对应的所述用户代理簇的标识,作为所述目标用户代理簇的标识之前,所述方法还包括:
5.根据权利要求4所述的方法,其中,所述方法还包括:
6.根据权利要求1所述的方法,其中,基于所述多个访问三元组,检测所述访问请求是否为攻击,包括:
7.根据权利要求6所述的方法,其中,基于所述多个访问三元组,检测所述访问请求是否为攻击,还包括:
8.根据权利要求6所述的方法,其中,获取预先计算的各所述访问三元组的评分之前,所述方法还包括:
9.根据权利要求1-8任一所述的方法,其中,基于所述多个访问三元组,检测所述访问请求是否为攻击之后,所述方法还包括:
10.一种接口攻击的检测装置,包括:
11.根据权利要求10所述的装置,其中,所述标识获取模块,用于:
12.根据权利要求11所述的装置,其中,所述标识获取模块,用于:
13.根据权利要求12所述的装置,其中,所述装置还包括:
14.根据权利要求13所述的装置,其中,所述检测模块,还用于:
15.根据权利要求10所述的装置,其中,所述检测模块,用于:
16.根据权利要求15所述的装置,其中,所述检测模块,用于:
17.根据权利要求15所述的装置,其中,所述装置还包括:
18.根据权利要求10-17任一所述的装置,其中,所述装置还包括:
19.一种电子设备,包括:
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-9中任一项所述的方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-9中任一项所述的方法。