CN117955739A - 一种接口安全的识别方法、装置、计算设备和存储介质 - Google Patents
一种接口安全的识别方法、装置、计算设备和存储介质 Download PDFInfo
- Publication number
- CN117955739A CN117955739A CN202410345758.2A CN202410345758A CN117955739A CN 117955739 A CN117955739 A CN 117955739A CN 202410345758 A CN202410345758 A CN 202410345758A CN 117955739 A CN117955739 A CN 117955739A
- Authority
- CN
- China
- Prior art keywords
- interface
- data
- target
- file
- uploading
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 32
- 238000007405 data analysis Methods 0.000 claims abstract description 24
- 238000001514 detection method Methods 0.000 claims description 114
- 230000004044 response Effects 0.000 claims description 74
- 238000004590 computer program Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 3
- 241000700605 Viruses Species 0.000 description 22
- 238000004458 analytical method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012423 maintenance Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000006798 recombination Effects 0.000 description 4
- 238000005215 recombination Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002155 anti-virotic effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Abstract
本公开提供了一种接口安全的识别方法、装置、计算机设备和存储介质,其中,该方法包括:获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
Description
技术领域
本公开涉及网络安全技术领域,具体而言,涉及一种接口安全的识别方法、装置、计算设备和存储介质。
背景技术
在一些网站中,往往会提供一个或多个文件上传接口,用户可以利用文件上传接口将需要的文件上传至网站。与此同时,也就为网站带来了安全风险问题。比如,一些网站攻击方利用文件上传接口上传病毒文件,然后再利用病毒文件对网站进行攻击,从而使得网站具有较大的安全风险。
为了降低网站的安全风险,也出现了一些针对文件上传接口的防病毒措施,例如使用病毒查杀软件对上传的文件进行检测,但是这些措施的防护效果往往较差,无法及时发现接口存在的安全风险,影响了接口和网站的安全性。
发明内容
本公开实施例至少提供一种接口安全的识别方法、装置、计算机设备和存储介质。
第一方面,本公开实施例提供了一种接口安全的识别方法,应用于安全服务器,包括:
获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;
对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;
若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;
根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
在一种可能的实施方式中,所述对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口,包括:
对所述第一流量镜像数据进行数据分析,确定所述网络请求对应的目标请求特征,以及所述数据接口对应的被访问服务器针对所述网络请求的目标应答特征;
根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口。
在一种可能的实施方式中,所述根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口,包括:
在所述目标请求特征与所述文件上传请求特征匹配成功、且所述目标应答特征与所述文件上传应答特征匹配成功的情况下,确定所述数据接口为文件上传接口;或者,
在所述目标请求特征与所述文件上传请求特征匹配失败,和/或,所述目标应答特征与所述文件上传应答特征匹配失败的情况下,确定所述数据接口不属于文件上传接口。
在一种可能的实施方式中,所述风险类别信息包括第一风险类别信息和第二风险类别信息;
所述根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果,包括:
利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果;所述本地检测服务和所述云端检测服务的检测能力不同;
利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息;
利用所述云端服务器,根据所述接口标识和所述接口参数信息,对所述数据接口进行安全扫描,确定所述第二风险类别信息。
在一种可能的实施方式中,所述利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果,包括:
根据所述目标上传文件的文件隐私属性,确定所述目标上传文件能否向所述云端服务器传输;
若是,则将所述目标上传文件上传至所述云端服务器,并利用所述云端服务器中的所述云端检测服务,对所述目标上传文件进行安全识别,得到第一识别结果;以及,利用所述本地检测服务对所述目标上传文件进行安全识别,得到第二识别结果;
根据所述第一识别结果和所述第二识别结果,确定所述安全识别结果。
在一种可能的实施方式中,所述利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息,包括:
根据所述第一流量镜像数据,确定访问所述数据接口的第一网际互连协议地址;
对所述接口标识对应的所述数据接口进行攻击检测,确定用于指示所述数据接口在历史上是否被攻击的检测结果;
基于已记录的上传接口标识和所述数据接口的接口标识,确定所述数据接口的发现时间,并记录所述数据接口的接口标识;
根据所述第一网际互连协议地址、所述检测结果和所述发现时间,确定所述第一风险类别信息。
在一种可能的实施方式中,所述方法还包括:
获取第二流量镜像数据,所述第二流量镜像数据是对访问所述数据接口的新的网络请求进行镜像处理得到的;
根据所述第二流量镜像数据,确定所述新的网络请求所访问页面的第一目标特征,以及所述第二流量镜像数据中的第二网际互连协议地址;
在所述第一目标特征符合预设的风险特征的情况下,确定所述第二网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述数据接口的接口标识;
若是,则确定所述数据接口存在安全漏洞。
在一种可能的实施方式中,所述方法还包括:
获取第一网际互连协议地址发起的目标网络请求对应的第三流量镜像数据;
根据所述第三流量镜像数据,确定所述目标网络请求所访问页面的第二目标特征,以及所述目标网络请求所访问的目标数据接口的接口标识;
在第二目标特征符合预设的风险特征的情况下,确定所述第一网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述目标数据接口的接口标识;
若是,则确定所述目标数据接口存在安全漏洞。
第二方面,本公开实施例还提供一种接口安全的识别装置,应用于安全服务器,包括:
获取模块,用于获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;
第一确定模块,用于对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;
提取模块,用于若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;
第二确定模块,用于根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
在一种可能的实施方式中,所述第一确定模块,在所述对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口时,用于:
对所述第一流量镜像数据进行数据分析,确定所述网络请求对应的目标请求特征,以及所述数据接口对应的被访问服务器针对所述网络请求的目标应答特征;
根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口。
在一种可能的实施方式中,所述第一确定模块,在所述根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口时,用于:
在所述目标请求特征与所述文件上传请求特征匹配成功、且所述目标应答特征与所述文件上传应答特征匹配成功的情况下,确定所述数据接口为文件上传接口;或者,
在所述目标请求特征与所述文件上传请求特征匹配失败,和/或,所述目标应答特征与所述文件上传应答特征匹配失败的情况下,确定所述数据接口不属于文件上传接口。
在一种可能的实施方式中,所述风险类别信息包括第一风险类别信息和第二风险类别信息;
所述第二确定模块,在所述根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果时,用于:
利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果;所述本地检测服务和所述云端检测服务的检测能力不同;
利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息;
利用所述云端服务器,根据所述接口标识和所述接口参数信息,对所述数据接口进行安全扫描,确定所述第二风险类别信息。
在一种可能的实施方式中,所述第二确定模块,在所述利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果时,用于:
根据所述目标上传文件的文件隐私属性,确定所述目标上传文件能否向所述云端服务器传输;
若是,则将所述目标上传文件上传至所述云端服务器,并利用所述云端服务器中的所述云端检测服务,对所述目标上传文件进行安全识别,得到第一识别结果;以及,利用所述本地检测服务对所述目标上传文件进行安全识别,得到第二识别结果;
根据所述第一识别结果和所述第二识别结果,确定所述安全识别结果。
在一种可能的实施方式中,所述第二确定模块,在所述利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息时,用于:
根据所述第一流量镜像数据,确定访问所述数据接口的第一网际互连协议地址;
对所述接口标识对应的所述数据接口进行攻击检测,确定用于指示所述数据接口在历史上是否被攻击的检测结果;
基于已记录的上传接口标识和所述数据接口的接口标识,确定所述数据接口的发现时间,并记录所述数据接口的接口标识;
根据所述第一网际互连协议地址、所述检测结果和所述发现时间,确定所述第一风险类别信息。
在一种可能的实施方式中,所述获取模块,还用于:
获取第二流量镜像数据,所述第二流量镜像数据是对访问所述数据接口的新的网络请求进行镜像处理得到的;
所述第一确定模块,还用于:
根据所述第二流量镜像数据,确定所述新的网络请求所访问页面的第一目标特征,以及所述第二流量镜像数据中的第二网际互连协议地址;
在所述第一目标特征符合预设的风险特征的情况下,确定所述第二网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述数据接口的接口标识;
所述第二确定模块,还用于:
若是,则确定所述数据接口存在安全漏洞。
在一种可能的实施方式中,所述获取模块,还用于:
获取第一网际互连协议地址发起的目标网络请求对应的第三流量镜像数据;
所述第一确定模块,还用于:
根据所述第三流量镜像数据,确定所述目标网络请求所访问页面的第二目标特征,以及所述目标网络请求所访问的目标数据接口的接口标识;
在第二目标特征符合预设的风险特征的情况下,确定所述第一网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述目标数据接口的接口标识;
所述第二确定模块,还用于:
若是,则确定所述目标数据接口存在安全漏洞。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
本公开实施例提供的接口安全的识别方法、装置、计算机设备和存储介质,针对访问数据接口的网络请求,通过对该网络请求的第一流量镜像数据进行数据分析,可以在不影响服务端对该网络请求正常处理的情况下,准确确定出数据接口是否为文件上传接口。在确定数据接口为文件上传接口的情况下,能够确定数据接口可能存在被攻击的风险。进而通过获取向数据接口上传的目标上传文件以及该数据接口的接口参数信息,再利用目标上传文件、接口标识和接口参数信息进行安全识别,不仅可以确定出目标上传文件是否存在安全风险,还可以利用接口参数信息对接口标识对应的数据接口进行更细粒度的识别,降低病毒绕过的风险,从而提高安全识别结果的准确性和全面性。并且,通过确定数据接口的风险类别信息,还可以实现对数据接口的分类,进而便于帮助维护人员根据风险类别信息对数据接口进行安全维护。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种接口安全的识别方法的流程图;
图2示出了本公开实施例所提供的一种接口安全的识别方法的具体流程图;
图3示出了本公开实施例所提供的一种对后续访问行为进行分析的过程示意图;
图4示出了本公开实施例所提供的一种确定第二风险类型信息的具体流程示意图;
图5示出了本公开实施例所提供的一种接口信息页面的示意图;
图6示出了本公开实施例所提供的一种接口安全的识别装置的架构示意图;
图7示出了本公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。
经研究发现,为降低文件上传接口被攻击方恶意攻击的风险,常常采用杀毒软件对上传至文件上传接口的文件进行病毒检测的方式,以确定文件上传接口是否存在安全风险。但是,仅仅通过病毒检测的方式来发现风险往往是容易被绕过的。例如,在上传文件为采用超文本预处理器(Hypertext Preprocessor,即PHP)编写的代码执行环境webshell的情况下,或者对上传文件做了免杀毒处理的情况下,均可以很容易的绕过病毒检测,实现对文件上传接口的恶意攻击。如此可知,现有的接口安全的识别方法,存在检测精度低、检测效果差的问题,存在较大的弊端。
基于上述研究,本公开提供了一种接口安全的识别方法、装置、计算机设备和存储介质,针对访问数据接口的网络请求,通过对该网络请求的第一流量镜像数据进行数据分析,可以在不影响服务端对该网络请求正常处理的情况下,准确确定出数据接口是否为文件上传接口。在确定数据接口为文件上传接口的情况下,能够确定数据接口可能存在被攻击的风险。进而通过获取向数据接口上传的目标上传文件以及该数据接口的接口参数信息,再利用目标上传文件、接口标识和接口参数信息进行安全识别,不仅可以确定出目标上传文件是否存在安全风险,还可以利用接口参数信息对接口标识对应的数据接口进行更细粒度的识别,降低病毒绕过的风险,从而提高安全识别结果的准确性和全面性。并且,通过确定数据接口的风险类别信息,还可以实现对数据接口的分类,进而便于帮助维护人员根据风险类别信息对数据接口进行安全维护。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
流量镜像(Mirroring/traffic-shadow),是指通过一定的配置将线上的真实流量复制一份到镜像服务中去,我们通过流量镜像转发以达到在不影响线上服务的情况下对流量或请求内容做具体分析的目的;
Request For Comments(RFC),即请求评论,是一系列以编号排定的文件,文件收集了有关互联网相关信息以及软件文件。基本的互联网通信协议都有在RFC文件内详细说明,几乎所有的互联网标准都有收录在RFC文件之中。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种接口安全的识别方法进行详细介绍,本公开实施例所提供的接口安全的识别方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该接口安全的识别方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
下面以执行主体为安全服务器为例对本公开实施例提供的接口安全的识别方法加以说明。
参见图1所示,为本公开实施例提供的一种接口安全的识别方法的流程图,包括:
S101:获取第一流量镜像数据;第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的。
首先对本申请实施例提供的安全服务器进行说明,在本申请中,安全服务器是一种用于提供安全服务的服务器,其具体能够实现在线对潜在的网络风险进行识别分析和处理。
数据接口可以为任一网络设备提供的可访问接口,例如,数据接口可以为网络论坛(Bulletin Board System,简称BBS)类网站所提供的可访问接口。不同的数据接口具有不同的数据处理能力,例如,文件上传能力、文件识别能力、文件分类能力、格式转换能力、数据处理能力、文档创建能力等。网络请求为用户针对数据接口发起的数据请求,例如,文件上传请求、数据处理请求、代码运行请求等。
在一些实施例中,数据接口可以为任一配备有上述安全服务器的网站所提供的接口。一个网站中可以配置有至少一个数据接口,不同的数据接口用于实现不同功能。第一流量镜像数据是利用流量镜像技术,对访问数据接口的网络请求进行镜像处理后得到的数据。在第一流量镜像数据中可以包括与网络请求相关的所有数据信息。例如,通过对网络请求以及网络请求的应答进行数据复制后,得到第一流量镜像数据。例如,可以包括发起网络请求的网际互连协议(Internet Protocol,简称)地址、所访问的服务器的地址、服务器的名称、服务器的应答信息、所访问的数据接口的接口标识、所访问的数据接口的接口参数信息,其中,接口参数信息例如可以包括接口变量、cookies、接口配置等信息。
具体实施时,针对同一网站,不同的用户可以针对该网站中的不同数据接口发起不同的网络请求,从而得到大量的流量数据。然后,针对每一份流量数据,可以利用流量镜像技术得到该流量数据对应的第一流量镜像数据。进而,安全服务器即可以获取到各个网络请求分别对应的第一流量镜像数据。
S102:对第一流量镜像数据进行数据分析,确定数据接口是否为文件上传接口。
这里,文件上传接口即为一种能够用于上传文件的接口。
具体实施时,针对获取的任一第一流量镜像数据,安全服务器可以对该第一流量镜像数据进行数据分析,得到接口标识和网络请求信息。其中,网络请求信息即为与第一流量镜像数据对应的网络请求相关的全部请求信息。然后,可以根据接口标识和/或网络请求信息,确定接口标识对应的数据接口是否为文件上传接口。
示例性的,可以从已记录的各个文件上传接口对应的接口标识中,确定存在与第一流量镜像数据中的接口标识一致的标识时,确定该第一流量镜像数据对应的数据接口为文件上传接口。反之,若不存在与第一流量镜像数据中的接口标识一致的标识,则可以根据网络请求信息确定是否为文件上传接口。
或者,在得到接口标识和网络请求信息之后,可以直接利用网络请求信息,确定数据接口是否为文件上传接口。例如,可以根据网络请求信息中的请求特征信息,确定网络请求是否为文件上传请求。在确定为文件上传请求的情况下,可以根据网络请求信息中的接口参数信息以及第一流量镜像数据指示的服务器属性,确定数据接口是否为文件上传接口。例如,在接口参数信息中包括与上传属性相关的目标参数、以及服务器属性指示被访问服务器与上传接口相关的情况下,确定数据接口为文件上传接口。
由于获取的第一流量镜像数据通常为切片后的数据,所以为了提高接口识别的准确性,还可以在获取第一流量镜像数据之后,对第一流量镜像数据进行传输控制协议(Transmission Control Protocol,TCP)流重组操作,得到重组后的第一流量镜像数据。其中,重组后的第一流量镜像数据能够表征网络请求在应用层的全部特征。针对TCP流重组的步骤,具体可以按照RFC文档对第一流量镜像数据进行重组处理。利用重组后的第一流量镜像数据进行数据分析,能够更加准确地确定出数据接口是否为文件上传接口。
需要说明的是,本申请实施例中的安全服务器具有可靠的处理能力,可以同时对大量的第一流量镜像数据进行接口安全的识别。
在一种实施例中,上述S102可以按照如下步骤实施:
S102-1:对第一流量镜像数据进行数据分析,确定网络请求对应的目标请求特征,以及数据接口对应的被访问服务器针对网络请求的目标应答特征。
这里,被访问服务器即为配置有网络请求所访问的数据接口的服务器。目标请求特征为网络请求对应与文件上传相关的特征,目标请求特征例如可以为一个或多个与文件上传相关的特征字符串。由于第一流量镜像数据对应的网络请求通常为超文本传输协议(Hypertext Transfer Protocol,HTTP)请求,且在HTTP网络协议的约定下,HTTP请求包中必须携带有约定的内容特征。因此通过对第一流量镜像数据中与网络请求相关的请求包进行内容特征的分析,可以准确提取出与文件上传相关的目标请求特征。
目标应答特征即为被访问服务器对网络请求进行应答后所反馈的特征。具体的,在向数据接口对应的被访问服务器发起网络请求之后,被访问服务器会对该网络请求进行http应答,因此第一流量镜像数据中还可以包括被访问服务器针对网络请求的应答数据。进而,可以从该应答数据中提取被访问服务器针对网络请求的目标应答特征。
具体实施时,在得到第一流量镜像数据之后,可以对第一流量镜像数据进行数据分析,得到与网络请求相关的请求包以及被访问服务器的应答数据。然后,可以从请求包中,提取出网络请求对应于文件上传的目标请求特征,以及从应答数据中确定出被访问服务器针对网络请求的目标应答特征。
S102-2:根据目标请求特征与预设的文件上传请求特征的匹配结果、以及目标应答特征与预设的文件上传应答特征的匹配结果,确定数据接口是否为文件上传接口。
这里,针对访问文件上传接口进行文件上传的文件上传类请求,这类请求中通常具有规律性的特征,即文件上传特征。便于理解的,文件上传特征即为能够表征请求是一种用于上传文件的请求的特征。同样的,针对文件上传类请求,服务器在对这类请求进行应答时所反馈的特征也将具有一定的规律性,因此也可以得到与应答文件上传请求相关的文件上传应答特征。便于理解的,文件上传应答特征即为能够表征服务器的应答是应答文件上传请求的特征。
具体实施时,可以获取预设设置好的文件上传请求特征以及预先设置好的文件上传应答特征,然后将目标请求特征与文件上传请求特征进行匹配,得到匹配结果,以及将目标应答特征与文件上传应答特征进行匹配,得到匹配结果。然后,根据两个匹配结果,确定数据接口是否为文件上传接口。
在一种实施例中,匹配结果具体可以为匹配成功和匹配失败中的一种,在不同的匹配结果下,数据接口是否为文件上传接口的确定结果也将不一样。具体的,在目标请求特征与文件上传请求特征匹配成功、且目标应答特征与文件上传应答特征匹配成功的情况下,确定数据接口为文件上传接口。
这里,在目标请求特征与文件上传请求特征匹配成功的情况下,可以说明网络请求对应的请求特征符合文件上传所需的特征。在目标应答特征与文件上传应答特征匹配成功的情况下,可以说明被访问服务器针对网络请求的应答符合应答文件上传请求所需的特征。因此,在目标请求特征和目标应答特征的匹配结果均指示匹配成功的情况下,则可以确定网络请求为文件上传请求且数据接口为文件上传接口。
或者,在目标请求特征与文件上传请求特征匹配失败,和/或,目标应答特征与文件上传应答特征匹配失败的情况下,确定数据接口不属于文件上传接口。
这里,在目标请求特征与文件上传请求特征匹配失败的情况下,可以说明网络请求对应的请求特征无法符合文件上传所需的特征。在目标应答特征与文件上传应答特征匹配失败的情况下,可以说明被访问服务器针对网络请求的应答无法符合应答文件上传请求所需的特征。
因此,在目标请求特征对应的匹配结果和目标应答特征对应的匹配结果中,存在至少一个指示匹配失败的匹配结果时,则可以直接确定数据接口不是文件上传接口。具体的,在目标请求特征对应的匹配结果指示匹配失败的情况下,则可以说明网络请求不是文件上传请求;在目标应答特征对应的匹配结果指示匹配失败的情况下,则可以说明即使网络请求是文件上传请求,被访问服务器也无法对该请求进行准确应答,进而可知数据接口不是文件上传接口。
S103:若是,则从第一流量镜像数据中,提取出目标上传文件以及与数据接口相关的接口参数信息。
这里,目标上传文件为网络请求所请求向数据接口上传的文件。接口参数信息包括数据接口在处理网络请求时所用到的所有参数,具体可以包括数据接口在处理网络请求时所生成的相关参数以及数据接口自身携带的参数。
具体实施时,在确定第一流量镜像数据中的数据接口为文件上传接口时,可以通过对第一流量镜像数据的内容解析,从中提取出请求向数据接口上传的目标上传文件、以及提取出与数据接口相关的全部接口参数信息。同时可以记录接口参数信息,以便于对接口参数信息进行统计分析。
S104:根据目标上传文件、数据接口的接口标识和接口参数信息,确定数据接口的风险类别信息和安全识别结果;安全识别结果用于指示数据接口是否存在安全问题。
这里,一个数据接口可以对应存在一个用于唯一标识该接口的接口标识。风险类别信息用于表征数据接口可能存在的风险所属的风险类别,也可以表征数据接口的接口状态。一个数据接口可以具有一个或多个风险类别。具体的,风险类别信息可以包括但不限于“对外开放”类别、“已被攻击”类别、“新上线”类别、“存在风险”类别、“允许未授权登录”类别、“存在上传漏洞”类别。其中,“对外开放”类别用于指示访问数据接口的IP不仅可以为内部用户预先设置好的资产IP,也可以为外部用户对应的非资产IP。“已被攻击”类别用于指示数据接口在历史上曾被攻击者非法攻击。“新上线”类别用于指示数据接口为安全服务器在预设时间段内新发现的文件上传接口。“存在风险”类别用于指示数据接口存在安全风险。“允许未授权登录”类别用于指示数据接口可在不经过认证的情况下被直接访问。“存在上传漏洞”类别用于指示数据接口存在安全漏洞。
安全识别结果用于指示数据接口是否存在安全问题,该安全问题可以为安全风险、安全漏洞、安全隐患等信息。可选的,安全识别结果还可以指示目标上传文件是否为病毒文件。
具体实施时,可以利用安全服务器对目标上传文件进行安全检测,确定目标上传文件是否为病毒文件,若是,则可以确定数据接口的安全识别结果为存在安全问题,且数据接口的风险类别信息包括“存在风险”类别和“存在上传漏洞”类别。若否,则可以根据数据接口的数据标识,确定出数据接口,然后利用接口参数信息对数据接口进行安全测试,确定数据接口的风险类别信息和安全识别结果。同时,还可以利用第一流量镜像数据,确定访问数据结果的第一IP地址,并根据第一IP地址确定数据接口的风险类别信息是否包括“对外开放”类别。
可选的,在确定出安全识别结果指示数据接口存在安全问题的情况下,还可以利用安全处理设备对数据接口的安全问题进行处理,从而提高数据接口的安全性。例如,在目标上传文件为病毒文件的情况下,可以利用安全处理设备对被访问服务器接收的目标上传文件进行删除处理,从而避免攻击方利用目标上传文件对被访问服务器进行非法攻击。
这样,针对访问数据接口的网络请求,通过对该网络请求的第一流量镜像数据进行数据分析,可以在不影响服务端对该网络请求正常处理的情况下,准确确定出数据接口是否为文件上传接口。在确定数据接口为文件上传接口的情况下,能够确定数据接口可能存在被攻击的风险。进而通过获取向数据接口上传的目标上传文件以及该数据接口的接口参数信息,再利用目标上传文件、接口标识和接口参数信息进行安全识别,不仅可以确定出目标上传文件是否存在安全风险,还可以利用接口参数信息对接口标识对应的数据接口进行更细粒度的识别,降低病毒绕过的风险,从而提高安全识别结果的准确性和全面性。并且,通过确定数据接口的风险类别信息,还可以实现对数据接口的分类,进而便于帮助维护人员根据风险类别信息对数据接口进行安全维护。
在一种实施例中,为了进一步提高对数据结果进行安全识别的粒度,风险类别信息还可以包括第一风险类别信息和第二风险类别信息,其中,第二风险类别信息为利用接口参数信息确定出的风险类别信息,第一类别风险信息为根据数据接口的发现时间、访问数据接口的第一IP地址、以及对数据接口进行攻击检测后得到的风险类别。
具体的,针对上述S104,可以按照如下步骤实施:
S104-1:利用安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对目标上传文件进行安全识别,得到安全识别结果;本地检测服务和云端检测服务的检测能力不同。
这里,本地检测服务可以为安全服务器提供的病毒检测和查杀能力。云端检测服务为云端服务器提供的检测服务,云端服务器与安全服务器不同。云端检测服务与本地检测服务的检测能力不同,具体体现在云端检测服务的检测维度更广、检测手段更多、检测粒度更细。示例性的,云端检测服务可以包括在线文件检测沙箱服务和多引擎检测服务,其中,不同的引擎检测服务可以不同的病毒检测和查杀能力。
具体实施时,在得到目标上传文件之后,可以对目标上传文件进行本地检测和云端检测两部分检测,基于两部分检测的检测结果,确定出安全识别结果。具体的,针对本地检测,也就是直接利用安全服务器中的本地检测服务,对目标上传文件进行病毒检测和查杀,确定出目标上传文件是否存在病毒,若是,则确定数据接口的安全识别结果为存在安全问题,若否,则可以根据云端检测的检测结果,确定安全识别结果。
针对云端检测,可以将目标上传文件上传至云端服务器,然后利用云端服务器中的各种云端检测服务,对目标上传文件进行不同维度的检测,得到各种云端检测服务分别对应的检测结果。在存在至少一种云端检测服务对应的检测结果指示目标上传文件存在病毒或风险的情况下,则可以确定数据接口的安全识别结果为存在安全问题。
在一种实施例中,针对云端检测,还可以按照如下步骤实施:
步骤一、根据目标上传文件的文件隐私属性,确定目标上传文件能否向云端服务器传输。
这里,文件隐私属性用于指示目标上传文件是否为保密文件。在目标上传文件为保密文件的情况下,通常说明目标上传文件不能上传至云端服务器,以防止目标上传文件被第三方截取,从而造成文件泄密。在目标上传文件不属于保密文件的情况下,则可以确定目标上传文件能够向云端服务器传输。
具体实施时,安全服务器可以确定目标上传文件的文件隐私属性,然后,在文件隐私属性指示目标上传文件不属于保密文件的情况下,向云端服务器传输目标上传文件。
步骤二、若是,则将目标上传文件上传至云端服务器,并利用云端服务器中的云端检测服务,对目标上传文件进行安全识别,得到第一识别结果;以及,利用本地检测服务对目标上传文件进行安全识别,得到第二识别结果。
这里,第一识别结果即为云端服务器确定出的安全识别结果,第二识别结果即为安全服务器确定出的安全识别结果。
具体实施时,在确定目标上传文件能向云端服务器传输的情况下,可以将目标上传文件上传至云端服务器,然后利用云端检测服务,对目标上传文件进行安全识别,确定目标上传文件中是否存在病毒,若是,则确定第一识别结果为数据接口存在安全问题,若否,则确定第一识别结果为数据接口不存在安全问题。同时,可以利用本地检测服务对目标上传文件进行安全识别,确定目标上传文件中是否存在病毒,若是,则确定第二识别结果为数据接口存在安全问题,若否,则确定第二识别结果为数据接口不存在安全问题。
可选的,在确定目标上传文件能否向云端服务器传输时,还可以根据目标上传文件的文件大小、云端服务器的处理能力、网络传输速度,确定目标上传文件的传输时长和云端服务器的检测时长。在传输时长和检测时长的和小于等于预设时长的情况下,确定目标上传文件能向云端服务器传输;反之则可以确定不能向云端服务器传输。如此,利用传输时长和检测时长,可以确定出云端服务器针对目标上传文件的检测速度,根据检测速度确定能否向云端服务器传输,可以提高文件检测的时效性。
若确定目标上传文件不能向云端服务器传输,则可以只对目标上传文件进行本地检测,得到第一识别结果,并将第一识别结果作为安全识别结果。
步骤三、根据第一识别结果和第二识别结果,确定安全识别结果。
具体实施时,在第一识别结果和第二识别结果中,存在至少一个识别结果指示数据接口存在安全问题的情况下,则可以确定安全识别结果为数据接口存在安全问题;在第一识别结果和第二识别结果均指示数据接口不存在安全问题的情况下,则可以确定安全识别结果为数据接口不存在安全问题。
这样,通过从第一流量镜像数据中提取用户上传的目标上传文件,并对目标上传文件进行本地分析和云端分析,可以有效降低病毒绕过的风险,提高确定出的安全识别结果的准确性。
S104-2:利用安全服务器,根据第一流量镜像数据和接口标识,确定第一风险类别信息。
这里,第一风险类别信息可以为从“对外开放”类别、“已被攻击”类别和“新上线”类别中,确定出的风险类别信息。
具体实施时,安全服务器可以从第一流量镜像数据中,提取出访问数据接口的第一IP地址,然后根据第一IP地址以及内部用户预设的资产IP,确定数据接口是否为“对外开放”类别。然后,可以根据接口标识、已记录的各个历史接口标识以及历史被攻击的数据接口的接口标识,确定数据接口是否属于“已被攻击”类别和“新上线”类别。
在一种实施例中,上述S104-2可以按照如下步骤实施:
S104-2-1:根据第一流量镜像数据,确定访问数据接口的第一网际互连协议地址。
这里,第一网际互连协议地址即第一IP地址,是发起针对数据接口的网络请求所在的IP地址。
具体实施时,可以从第一流量镜像数据中,提取出网络请求对应的第一IP地址。
S104-2-2:对接口标识对应的数据接口进行攻击检测,确定用于指示数据接口在历史上是否被攻击的检测结果。
这里,安全服务器中可以部署有攻击检测服务,该服务可以利用预设的一种或多种检测规则,对数据接口进行攻击识别,从而确定出数据接口是否被攻击过。
具体实施时,安全服务器可以根据接口标识确定出数据接口,然后利用攻击检测服务对数据接口进行攻击检测,从而确定出用于指示数据接口在历史上是否被攻击的检测结果。
S104-2-3:基于已记录的上传接口标识和数据接口的接口标识,确定数据接口的发现时间,并记录数据接口的接口标识。
这里,已记录的上传接口标识可以为安全服务器从历史流量镜像数据中识别出的文件上传接口的接口标识。发现时间用于指示数据接口第一次被安全服务器发现的时间。
具体实施时,安全服务器可以获取已记录的各个上传接口标识以及每个上传接口标识关联的发现时间。然后可以确定上传接口标识中,是否存在与第一流量镜像数据中的数据接口的接口标识一致的匹配标识,若是,则可以将该匹配标识关联的发现时间,作为该接口标识的发现时间;若否,则可以将获取第一流量镜像数据的时间或者识别出数据接口的时间,作为该接口标识的发现时间。
并且,在确定出接口标识不存在匹配标识的情况下,可以记录该接口标识。
S104-2-4:根据第一网际互连协议地址、检测结果和发现时间,确定第一风险类别信息。
具体实施时,可以获取内部用户设置的资产IP清单,在确定第一IP地址不属于资产IP清单的情况下,确定数据接口的第一风险类别信息包括“对外开放”类别;反之,则确定不包括“对外开放”类别。在检测结果指示数据接口在历史上被攻击的情况下,确定数据接口的第一风险类别信息包括“已被攻击”类别;反之,则确定不包括“已被攻击”类别。在发现时间于当前时间的时间差小于预设时间差的情况下,也即在确定数据接口为近期新发现的数据接口的情况下,确定数据接口的第一风险类别信息包括“新上线”类别;反之,则确定不包括“新上线”类别。
S104-3:利用云端服务器,根据接口标识和接口参数信息,对数据接口进行安全扫描,确定第二风险类别信息。
这里,第二风险类别信息可以为从“存在风险”类别、“允许未授权登录”类别和“存在上传漏洞”类别中,确定出的风险类别信息。
具体实施时,可以将接口标识和接口参数信息上传至云端服务器,然后,云端服务器可以利用接收参数信息对接口标识指示的数据接口进行安全扫描,从而确定出第二风险类别信息。
示例性的,接口参数信息中可以包括数据接口对应的cooikes信息,云端服务器可以在不使用cooikes信息的情况下,对接口标识指示的数据接口进行访问,若能成功访问,则可以确定第二风险类别信息包括“允许未授权登录”类别;反之,则可以确定不包括该类别。
云端服务器可以根据接口参数信息,确定接口标识指示的数据接口所允许上传的文件的类型,然后确定能否成功向数据接口上传带有病毒的该类型文件;若是,则可以确定第二风险类别信息包括“存在风险”类别;反之,则可以确定不包括“存在风险”类别。同时,若能成功向数据接口上传带有病毒的该类型文件,则可以在文件上传成功后,确定文件是否能够被访问,若是,则可以确定第二风险类别信息包括“存在上传漏洞”类别;反之,则可以确定第二风险类别信息不包括“存在上传漏洞”类别。
如图2所示,为本申请实施例提供的一种接口安全的识别方法的具体流程图,可以如下步骤:
S201:获取第一流量镜像数据。
S202:对第一流量镜像数据进行传输控制协议TCP流重组,得到重组后的第一流量镜像数据。
S203:对重组后的第一流量镜像数据进行数据分析,确定数据接口是否为文件上传接口。
若是,则执行下述S204,若否,则结束流程。
S204:提取目标上传文件以及与数据接口相关的接口参数信息。
S205:判断是否提取成功。
若是,则执行下述S206,若否,则结束流程。
S206:对目标上传文件进行本地检测和云端检测,得到安全识别结果;以及,利用接口参数信息和数据接口的接口标识,确定数据接口的风险类别信息。
关于上述S206中的“利用接口参数信息和数据接口的接口标识,确定数据接口的风险类别信息”的步骤,可以参照上述S104-2和S104-3。
关于上述S201~S206的具体实施过程,可以参照上述各实施例,此处不再赘述。
在一种实施例中,为进一步确定出数据接口是否存在安全漏洞,本申请实施例提供的接口安全的识别方法还可以对访问数据接口的IP地址进行后续访问行为的分析,具体的分析步骤如下:
S1:获取第二流量镜像数据,第二流量镜像数据是对访问数据接口的新的网络请求进行镜像处理得到的。
这里,新的网络请求是对确定为文件上传接口的任一数据接口所发起的网络请求,该网络请求与第一流量镜像数据中的网络请求不同。便于理解的,新的网络请求是对已记录的上传接口标识指示的数据接口所发起的网络请求。第二流量镜像数据是利用流量镜像技术对新的网络请求进行镜像处理得到的。
示例性的,针对任一已发现的文件上传接口,在用户发起针对该文件上传接口的新的网络请求之后,安全服务器可以获取该新的网络请求对应的第二流量镜像数据。
S2:根据第二流量镜像数据,确定新的网络请求所访问页面的第一目标特征,以及第二流量镜像数据中的第二网际互连协议地址。
这里,流量镜像数据可以包括网络请求所访问页面的页面特征。第一目标特征可以为新的网络请求所访问页面的页面特征。第二网际互连协议地址即第二IP地址,也就是发起新的网络请求的IP地址。
具体实施时,在得到第二流量镜像数据后,可以对第二流量镜像数据进行TCP流重组,得到重组后的第二流量镜像数据。然后,可以对重组后的第二流量镜像数据进行分析,以从中提取出新的网络请求所访问页面的页面特征,将该页面特征作为第一目标特征。同时,基于对重组后的第二流量镜像数据的分析,可以从第二流量镜像数据中提取出第二IP地址。
S3:在第一目标特征符合预设的风险特征的情况下,确定第二网际互连协议地址对应的历史访问接口的接口标识中,是否存在数据接口的接口标识。
这里,第二IP地址对应的历史访问接口即为第二IP地址在历史上所访问的各个文件上传接口。风险特征为预先设置好的用于存在安全漏洞的特征,示例性的,风险特征可以为预设的webshell特征。
具体实施时,在得到第一目标特征之后,可以确定第一目标特征是否符合预设的风险特征,若否,则可以确定第二流量镜像数据对应的数据接口不存在安全漏洞。若是,则可以获取第二IP地址对应的各个历史访问接口的接口标识,然后确定这些历史访问接口的接口标识中,是否存在第二流量镜像数据对应的数据接口的接口标识。
S4:若是,则确定数据接口存在安全漏洞。
具体实施时,在第二IP地址对应的历史访问接口的接口标识中存在数据接口的接口标识时,则可以确定具有第一目标特征的文件是通过该数据接口在历史上上传的,新的网络请求可以看作是利用历史上在该数据接口上传的文件,对该数据接口进行非法攻击的请求。因此,可以确定第二流量镜像数据对应的数据接口具有安全漏洞。
反之,若第二IP地址对应的历史访问接口的接口标识中不存在数据接口的接口标识,也即历史上不曾访问过该数据接口,则可以确定该数据接口不存在安全漏洞。
这样,通过对IP地址的后续访问行为的继续分析,可以更加准确地确定出文件上传接口是否存在安全漏洞。
如图3所示,为本申请实施例提供的一种对后续访问行为进行分析的过程示意图,可以包括如下步骤:
S301:获取新的网络请求对应的第二流量镜像数据。
S302:对第二流量镜像数据进行TCP流重组,得到重组后的第二流量镜像数据。
S303:确定新的网络请求所访问页面的第一目标特征,是否符合预设的代码执行环境webshell特征。
若是,则执行下述S304;若否,则确定第二流量镜像数据对应的数据接口不存在安全漏洞。
S304:确定第二流量镜像数据中的第二IP地址,是否在历史上曾访问第二流量镜像数据对应的数据接口。
若是,则确定数据接口存在安全漏洞,若否,则确定数据接口不存在安全漏洞。
在另一种实施例中,本申请实施例提供的对访问数据接口的IP地址进行后续访问行为分析的步骤还可以如下:
T1:获取第一网际互连协议地址发起的目标网络请求对应的第三流量镜像数据。
这里,目标网络请求为第一IP地址发起的新的网络请求,目标网络请求与第一流量镜像数据对应的网络请求不同,且发起时间可以晚于第一流量镜像数据对应的网络请求的发起时间。
第三流量镜像数据是利用流量镜像技术对目标网络请求进行镜像处理得到的。
具体实施时,在从第一流量镜像数据中提取出第一IP地址之后,安全服务器还可以检测第一IP地址是否发起了新的网络请求(即目标网络请求),若是,则可以获取目标网络请求对应的第三流量镜像数据。
T2:根据第三流量镜像数据,确定目标网络请求所访问页面的第二目标特征,以及目标网络请求所访问的目标数据接口的接口标识。
具体实施时,在得到第三流量镜像数据后,可以对第三流量镜像数据进行TCP流重组,得到重组后的第三流量镜像数据。然后,可以对重组后的第三流量镜像数据进行分析,以从中提取出目标网络请求所访问页面的页面特征,将该页面特征作为第二目标特征。同时,基于对重组后的第三流量镜像数据的分析,可以确定目标网络请求所访问的目标数据接口的接口标识。
T3:在第二目标特征符合预设的风险特征的情况下,确定第一网际互连协议地址对应的历史访问接口的接口标识中,是否存在目标数据接口的接口标识。
这里,第一IP地址对应的历史访问接口即为第一IP地址在历史上所访问的各个文件上传接口。
具体实施时,在得到第二目标特征之后,可以确定第二目标特征是否符合预设的风险特征,若否,则可以确定目标数据接口不存在安全漏洞。若是,则可以获取第一IP地址对应的各个历史访问接口的接口标识,然后确定这些历史访问接口的接口标识中,是否存在目标数据接口的接口标识。
T4:若是,则确定目标数据接口存在安全漏洞。
具体实施时,在第一IP地址对应的历史访问接口的接口标识中,存在目标数据接口的接口标识时,则可以确定具有第二目标特征的文件是通过目标数据接口在历史上上传的,目标网络请求可以看作是利用历史上在目标数据接口上传的文件,对目标数据接口进行非法攻击的请求。因此,可以确定第三流量镜像数据对应的目标数据接口具有安全漏洞。
反之,若第一IP地址对应的历史访问接口的接口标识中,不存在目标数据接口的接口标识,也即历史上不曾访问过目标数据接口,则可以确定目标数据接口不存在安全漏洞。
可选的,针对上述S104-3,还可以按照如下步骤实施:
在数据接口对应的第一风险类别信息指示数据接口属于“新上线”类别的情况下,则可以在到达预设上传周期的情况下,将属于“新上线”类别的数据接口的接口标识和接口参数信息,上传至云端服务器,以利用云端服务器确定出该数据接口的第二风险类别信息。
当然,也可以在第一风险类别信息指示数据接口属于“新上线”类别的情况下,直接将该数据接口的接口标识和接口参数信息,上传至云端服务器,以利用云端服务器确定出该数据接口的第二风险类别信息。
如图4所示,为本申请实施例提供的一种确定第二风险类型信息的具体流程示意图,可以包括如下步骤:
S401:根据数据接口的第一风险类别信息,确定属于“新上线”类别的数据接口。
S402:将属于“新上线”类别的数据接口的接口标识和接口参数信息,上传至云端服务器,以确定第二风险类别信息。
在一种实施例中,安全服务器在根据第一流量镜像数据,确定出各个文件上传接口对应的风险类别信息和安全识别结果后,还可以将风险类别信息和安全识别结果反馈至客户端。客户端可以根据各个文件上传接口的风险类别信息和安全识别结果,生成接口信息页面并展示,以使用户可以在接口信息页面中实时获取到各个文件上传接口对应的风险类别信息和安全识别结果。
如图5所示,为本申请实施例提供的一种接口信息页面的示意图,其中,安全服务器发现的全部文件上传接口共有10个,属于“对外开放”类别的有0个,属于“已被攻击”类别的有1个,属于“新上线”类别有3个,属于“存在风险”类别的有1个,属于“允许未授权登录”类别的有0个,属于“存在上传漏洞”类别的有0个,近期活跃的有0个。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与接口安全的识别方法对应的接口安全的识别装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述接口安全的识别方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图6所示,为本公开实施例提供的一种接口安全的识别装置的架构示意图,包括:
获取模块601,用于获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;
第一确定模块602,用于对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;
提取模块603,用于若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;
第二确定模块604,用于根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
在一种可能的实施方式中,所述第一确定模块602,在所述对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口时,用于:
对所述第一流量镜像数据进行数据分析,确定所述网络请求对应的目标请求特征,以及所述数据接口对应的被访问服务器针对所述网络请求的目标应答特征;
根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口。
在一种可能的实施方式中,所述第一确定模块602,在所述根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口时,用于:
在所述目标请求特征与所述文件上传请求特征匹配成功、且所述目标应答特征与所述文件上传应答特征匹配成功的情况下,确定所述数据接口为文件上传接口;或者,
在所述目标请求特征与所述文件上传请求特征匹配失败,和/或,所述目标应答特征与所述文件上传应答特征匹配失败的情况下,确定所述数据接口不属于文件上传接口。
在一种可能的实施方式中,所述风险类别信息包括第一风险类别信息和第二风险类别信息;
所述第二确定模块604,在所述根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果时,用于:
利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果;所述本地检测服务和所述云端检测服务的检测能力不同;
利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息;
利用所述云端服务器,根据所述接口标识和所述接口参数信息,对所述数据接口进行安全扫描,确定所述第二风险类别信息。
在一种可能的实施方式中,所述第二确定模块604,在所述利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果时,用于:
根据所述目标上传文件的文件隐私属性,确定所述目标上传文件能否向所述云端服务器传输;
若是,则将所述目标上传文件上传至所述云端服务器,并利用所述云端服务器中的所述云端检测服务,对所述目标上传文件进行安全识别,得到第一识别结果;以及,利用所述本地检测服务对所述目标上传文件进行安全识别,得到第二识别结果;
根据所述第一识别结果和所述第二识别结果,确定所述安全识别结果。
在一种可能的实施方式中,所述第二确定模块604,在所述利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息时,用于:
根据所述第一流量镜像数据,确定访问所述数据接口的第一网际互连协议地址;
对所述接口标识对应的所述数据接口进行攻击检测,确定用于指示所述数据接口在历史上是否被攻击的检测结果;
基于已记录的上传接口标识和所述数据接口的接口标识,确定所述数据接口的发现时间,并记录所述数据接口的接口标识;
根据所述第一网际互连协议地址、所述检测结果和所述发现时间,确定所述第一风险类别信息。
在一种可能的实施方式中,所述获取模块601,还用于:
获取第二流量镜像数据,所述第二流量镜像数据是对访问所述数据接口的新的网络请求进行镜像处理得到的;
所述第一确定模块602,还用于:
根据所述第二流量镜像数据,确定所述新的网络请求所访问页面的第一目标特征,以及所述第二流量镜像数据中的第二网际互连协议地址;
在所述第一目标特征符合预设的风险特征的情况下,确定所述第二网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述数据接口的接口标识;
所述第二确定模块604,还用于:
若是,则确定所述数据接口存在安全漏洞。
在一种可能的实施方式中,所述获取模块601,还用于:
获取第一网际互连协议地址发起的目标网络请求对应的第三流量镜像数据;
所述第一确定模块602,还用于:
根据所述第三流量镜像数据,确定所述目标网络请求所访问页面的第二目标特征,以及所述目标网络请求所访问的目标数据接口的接口标识;
在第二目标特征符合预设的风险特征的情况下,确定所述第一网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述目标数据接口的接口标识;
所述第二确定模块604,还用于:
若是,则确定所述目标数据接口存在安全漏洞。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本申请实施例还提供了一种计算机设备。参照图7所示,为本申请实施例提供的一种计算机设备的结构示意图,包括:
处理器701、存储器702和总线703。其中,存储器702存储有处理器701可执行的机器可读指令,处理器701用于执行存储器702中存储的机器可读指令,所述机器可读指令被处理器701执行时,处理器701执行下述步骤:S101:获取第一流量镜像数据;第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;S102:对第一流量镜像数据进行数据分析,确定数据接口是否为文件上传接口;S103:若是,则从第一流量镜像数据中,提取出目标上传文件以及与数据接口相关的接口参数信息以及S104:根据目标上传文件、数据接口的接口标识和接口参数信息,确定数据接口的风险类别信息和安全识别结果;安全识别结果用于指示数据接口是否存在安全问题。
上述存储器702包括内存7021和外部存储器7022;这里的内存7021也称内存储器,用于暂时存放处理器701中的运算数据,以及与硬盘等外部存储器7022交换的数据,处理器701通过内存7021与外部存储器7022进行数据交换,当计算机设备运行时,处理器701与存储器702之间通过总线703通信,使得处理器701在执行上述方法实施例中所提及的执行指令。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的接口安全的识别方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的接口安全的识别方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种接口安全的识别方法,其特征在于,应用于安全服务器,包括:
获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;
对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;
若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;
根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口,包括:
对所述第一流量镜像数据进行数据分析,确定所述网络请求对应的目标请求特征,以及所述数据接口对应的被访问服务器针对所述网络请求的目标应答特征;
根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标请求特征与预设的文件上传请求特征的匹配结果、以及所述目标应答特征与预设的文件上传应答特征的匹配结果,确定所述数据接口是否为文件上传接口,包括:
在所述目标请求特征与所述文件上传请求特征匹配成功、且所述目标应答特征与所述文件上传应答特征匹配成功的情况下,确定所述数据接口为文件上传接口;或者,
在所述目标请求特征与所述文件上传请求特征匹配失败,和/或,所述目标应答特征与所述文件上传应答特征匹配失败的情况下,确定所述数据接口不属于文件上传接口。
4.根据权利要求1所述的方法,其特征在于,所述风险类别信息包括第一风险类别信息和第二风险类别信息;
所述根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果,包括:
利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果;所述本地检测服务和所述云端检测服务的检测能力不同;
利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息;
利用所述云端服务器,根据所述接口标识和所述接口参数信息,对所述数据接口进行安全扫描,确定所述第二风险类别信息。
5.根据权利要求4所述的方法,其特征在于,所述利用所述安全服务器中的本地检测服务和云端服务器中的云端检测服务,分别对所述目标上传文件进行安全识别,得到所述安全识别结果,包括:
根据所述目标上传文件的文件隐私属性,确定所述目标上传文件能否向所述云端服务器传输;
若是,则将所述目标上传文件上传至所述云端服务器,并利用所述云端服务器中的所述云端检测服务,对所述目标上传文件进行安全识别,得到第一识别结果;以及,利用所述本地检测服务对所述目标上传文件进行安全识别,得到第二识别结果;
根据所述第一识别结果和所述第二识别结果,确定所述安全识别结果。
6.根据权利要求4所述的方法,其特征在于,所述利用所述安全服务器,根据所述第一流量镜像数据和所述接口标识,确定所述第一风险类别信息,包括:
根据所述第一流量镜像数据,确定访问所述数据接口的第一网际互连协议地址;
对所述接口标识对应的所述数据接口进行攻击检测,确定用于指示所述数据接口在历史上是否被攻击的检测结果;
基于已记录的上传接口标识和所述数据接口的接口标识,确定所述数据接口的发现时间,并记录所述数据接口的接口标识;
根据所述第一网际互连协议地址、所述检测结果和所述发现时间,确定所述第一风险类别信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取第二流量镜像数据,所述第二流量镜像数据是对访问所述数据接口的新的网络请求进行镜像处理得到的;
根据所述第二流量镜像数据,确定所述新的网络请求所访问页面的第一目标特征,以及所述第二流量镜像数据中的第二网际互连协议地址;
在所述第一目标特征符合预设的风险特征的情况下,确定所述第二网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述数据接口的接口标识;
若是,则确定所述数据接口存在安全漏洞。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取第一网际互连协议地址发起的目标网络请求对应的第三流量镜像数据;
根据所述第三流量镜像数据,确定所述目标网络请求所访问页面的第二目标特征,以及所述目标网络请求所访问的目标数据接口的接口标识;
在第二目标特征符合预设的风险特征的情况下,确定所述第一网际互连协议地址对应的历史访问接口的接口标识中,是否存在所述目标数据接口的接口标识;
若是,则确定所述目标数据接口存在安全漏洞。
9.一种接口安全的识别装置,其特征在于,应用于安全服务器,包括:
获取模块,用于获取第一流量镜像数据;所述第一流量镜像数据是对访问数据接口的网络请求进行镜像处理得到的;
第一确定模块,用于对所述第一流量镜像数据进行数据分析,确定所述数据接口是否为文件上传接口;
提取模块,用于若是,则从所述第一流量镜像数据中,提取出目标上传文件以及与所述数据接口相关的接口参数信息;
第二确定模块,用于根据所述目标上传文件、所述数据接口的接口标识和所述接口参数信息,确定所述数据接口的风险类别信息和安全识别结果;所述安全识别结果用于指示所述数据接口是否存在安全问题。
10.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一项所述的接口安全的识别方法的步骤。
11.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至8任一项所述的接口安全的识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410345758.2A CN117955739A (zh) | 2024-03-25 | 2024-03-25 | 一种接口安全的识别方法、装置、计算设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410345758.2A CN117955739A (zh) | 2024-03-25 | 2024-03-25 | 一种接口安全的识别方法、装置、计算设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117955739A true CN117955739A (zh) | 2024-04-30 |
Family
ID=90805438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410345758.2A Pending CN117955739A (zh) | 2024-03-25 | 2024-03-25 | 一种接口安全的识别方法、装置、计算设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117955739A (zh) |
-
2024
- 2024-03-25 CN CN202410345758.2A patent/CN117955739A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10873597B1 (en) | Cyber attack early warning system | |
US20240154996A1 (en) | Secure Notification on Networked Devices | |
KR101574652B1 (ko) | 모바일 침해사고 분석시스템 및 방법 | |
CN107659583B (zh) | 一种检测事中攻击的方法及系统 | |
US10033746B2 (en) | Detecting unauthorised changes to website content | |
KR101689299B1 (ko) | 보안이벤트 자동 검증 방법 및 장치 | |
RU2680736C1 (ru) | Сервер и способ для определения вредоносных файлов в сетевом трафике | |
RU2536663C2 (ru) | Система и способ защиты от нелегального использования облачных инфраструктур | |
US20150304350A1 (en) | Detection of malware beaconing activities | |
US20150067866A1 (en) | Identifying malicious devices within a computer network | |
CN113660224B (zh) | 基于网络漏洞扫描的态势感知防御方法、装置及系统 | |
CN108259514B (zh) | 漏洞检测方法、装置、计算机设备和存储介质 | |
CN111786966A (zh) | 浏览网页的方法和装置 | |
CN106982188B (zh) | 恶意传播源的检测方法及装置 | |
US11636208B2 (en) | Generating models for performing inline malware detection | |
CN113411297A (zh) | 基于属性访问控制的态势感知防御方法及系统 | |
CN109547427B (zh) | 黑名单用户识别方法、装置、计算机设备及存储介质 | |
RU2601147C2 (ru) | Система и способ выявления целевых атак | |
US10757118B2 (en) | Method of aiding the detection of infection of a terminal by malware | |
CN113660222A (zh) | 基于强制访问控制的态势感知防御方法及系统 | |
CN114928452B (zh) | 访问请求验证方法、装置、存储介质及服务器 | |
JP5743822B2 (ja) | 情報漏洩防止装置及び制限情報生成装置 | |
CN114172721B (zh) | 恶意数据防护方法、装置、电子设备及存储介质 | |
US11683337B2 (en) | Harvesting fully qualified domain names from malicious data packets | |
CN117955739A (zh) | 一种接口安全的识别方法、装置、计算设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |