CN108881226A - 应用层攻击的防护方法、防护装置及电子设备 - Google Patents
应用层攻击的防护方法、防护装置及电子设备 Download PDFInfo
- Publication number
- CN108881226A CN108881226A CN201810630242.7A CN201810630242A CN108881226A CN 108881226 A CN108881226 A CN 108881226A CN 201810630242 A CN201810630242 A CN 201810630242A CN 108881226 A CN108881226 A CN 108881226A
- Authority
- CN
- China
- Prior art keywords
- client
- access request
- server
- access
- solicited message
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供了一种应用层攻击的防护方法、防护装置、电子设备及计算机可读存储介质,其中,该防护方法包括:在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。本申请通过防护端向客户端发送携带有跳转链接的应答信息以及验证请求信息,并根据客户端做出的响应能够准确判断出客户端是否为异常客户端,并在判断出客户端为异常客户端时,拒绝将来自异常客户端的访问请求转发给服务器,进而能够有效阻止异常客户端对应用层的攻击,以便使服务器能够为正常客户端提供服务。
Description
技术领域
本发明涉及计算机网络安全技术领域,更具体而言,涉及一种应用层攻击的防护方法、防护装置及电子设备。
背景技术
分布式拒绝服务(Distributed Denial of Service,DDoS)攻击是指借助于服务器技术,将多台计算机联合起来作为攻击平台,对一个或多个目标发动攻击,从而成倍地提高拒绝服务攻击的威力,其中,应用层DDoS攻击是指攻击方提交给服务器大量请求,消耗服务器的处理资源,使处理资源耗尽而导致服务器瘫痪,进而服务器会拒绝为正常用户服务。
现有的攻击检测方案大多是通过计算客户端在固定时间内的请求速率来实现,当客户端的请求速率达到设定阈值时判定为攻击。然而,现在的应用层攻击方式,一般是利用分布式代理服务器或僵尸网络对服务器发送大量的请求,由于每个代理或僵尸客户端的请求速率没有明显的异常,因此通过客户端请求速率检测的方式往往很难奏效。
因此,如何提供应用层攻击的有效的防护方案已经成为目前亟待解决的技术问题。
发明内容
有鉴于此,本申请的目的在于提供一种应用层攻击的防护方法、防护装置、电子设备及计算机可读存储介质,以阻止异常客户端对应用层的攻击,达到清洗攻击流量的目的。
第一方面,本申请实施例提供了一种应用层攻击的防护方法,包括:在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,向客户端发送携带有跳转链接的应答信息之后,还包括:若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器。
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,其中,将访问请求转发至服务器之后,还包括:若在第一预设时间段内接收到客户端后续发送的访问请求,则将访问请求转发至服务器。
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第三种可能的实施方式,其中,将访问请求转发至服务器之后,还包括:记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端;若确定客户端为异常客户端,则拒绝将客户端的后续访问请求转发至服务器。
结合第一方面的第三种可能的实施方式,本申请实施例提供了第一方面的第四种可能的实施方式,其中,验证请求信息中携带有预设脚本;根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端,包括:从客户端返回的验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值;判断第一cookie值是否与预存的预设脚本的第二cookie值相同;若确定第一cookie值与第二cookie值相同,则向服务器转发客户端的访问请求;若确定第一cookie值与第二cookie值不相同,则拒绝客户端的访问请求。
结合第一方面的第三种可能的实施方式,本申请实施例提供了第一方面的第五种可能的实施方式,其中,向客户端发送验证请求信息之后,还包括:若未接收到客户端针对验证请求信息返回的验证应答信息,则确定客户端为异常客户端,并拒绝客户端后续发送的针对服务器的访问请求。
本发明第二个方面的实施例提供了一种应用层攻击的防护装置,包括:发送模块,用于在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;处理模块,用于若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。
结合第二方面,本申请实施例提供了第二方面的第一种可能的实施方式,其中,处理模块,还用于若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器。
结合第二方面的第一种可能的实施方式,本申请实施例提供了第二方面的第二种可能的实施方式,处理模块,还用于若在第一预设时间段内接收到客户端后续发送的访问请求,则将访问请求转发至服务器。
结合第二方面的第一种可能的实施方式,本申请实施例提供了第二方面的第三种可能的实施方式,其中,装置还包括:记录模块,用于记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;发送模块,还用于当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;处理模块,还用于根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端;若确定客户端为异常客户端,则拒绝将客户端的后续访问请求转发至服务器。
结合第二方面的第三种可能的实施方式,本申请实施例提供了第二方面的第四种可能的实施方式,其中,验证请求信息中携带有预设脚本;处理模块,具体用于从客户端返回的验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值;判断第一cookie值是否与预存的预设脚本的第二cookie值相同;若确定第一cookie值与第二cookie值相同,则向服务器转发客户端的访问请求;若确定第一cookie值与第二cookie值不相同,则拒绝客户端的访问请求。
结合第二方面的第三种可能的实施方式,本申请实施例提供了第二方面的第五种可能的实施方式,其中,处理模块,还用于若未接收到客户端针对验证请求信息返回的验证应答信息,则确定客户端为异常客户端,并拒绝客户端后续发送的针对服务器的访问请求。
第三方面,本申请实施例还提供了一种电子设备,包括:处理器、存储器和总线,存储器存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储器之间通过总线通信,机器可读指令被处理器运行时执行如上述任一项的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行如上述任一项的方法。
本申请实施例提供的应用层攻击的防护方法和装置,防护端通过向客户端发送跳转链接的应答信息,并根据是否接收到客户端发送的访问跳转链接的请求信息,确定客户端发送的访问请求是否为正常请求,进而执行相应的步骤,以及防护端通过向客户端发送验证请求信息,并根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端,进而执行相应的步骤。本申请能够准确判断出客户端发送的访问请求是否为正常请求,以及客户端是否为异常客户端,并在判断出访问请求为不正常请求或客户端为异常客户端时,拒绝将来自该客户端的访问请求转发给服务器,进而能够有效阻止对应用层的攻击,达到清洗攻击流量的目的,使服务器能够为正常客户端提供服务。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种应用层攻击的防护方法的流程图;
图2示出了本申请实施例所提供的另一种应用层攻击的防护方法的流程图;
图3示出了本申请实施例所提供的另一种应用层攻击的防护方法的流程图;
图4示出了本申请实施例所提供的另一种应用层攻击的防护方法的流程图;
图5示出了本申请实施例所提供的另一种应用层攻击的防护方法的流程图;
图6示出了本申请实施例所提供的另一种应用层攻击的防护方法的流程图;
图7示出了本申请的一个具体实施例所提供的一种应用层攻击的防护方法的流程示意图;
图8示出了本申请实施例所提供的一种应用层攻击的防护装置的结构示意图;
图9示出了本申请实施例所提供的另一种应用层攻击的防护装置的结构示意图;
图10示出了本申请实施例所提供的一种电子设备的结构示意图。
主要元件符号说明:
10、发送模块;20、处理模块;30、记录模块;100、处理器;200、存储器;300、总线。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
考虑到相关技术中通过计算客户端在固定时间内的请求速率达到设定阈值时判定为攻击,但是现在的应用层攻击方式,一般是利用分布式代理服务器或僵尸网络对网站发送大量的请求,但每个代理或僵尸IP的请求速率没有明显的异常,因此通过客户端的请求速率检测的方式往往很难奏效。有鉴于此,本申请实施例提供了一种应用层攻击的防护方法、防护装置、电子设备及计算机可读存储介质,以确认客户端是否为异常客户端,进而能够有效地阻止对应用层的攻击。
本申请第一方面的实施例,如图1所示,为本申请实施例提供的一种应用层攻击的防护方法的流程图,该防护方法包括:
S101,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S102,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。
本申请实施例提供的应用层攻击的防护方法,首先,DDos防护端接收来自客户端发送的访问服务器的请求,为了初步验证客户端是否为伪造的客户端以及访问请求是否为正常请求,进一步地,防护端向客户端发送携带有跳转链接的应答信息,如302跳转,由于伪造的客户端不能对防护端返回的应答信息进行解析和跟踪跳转,由此可以分辨出客户端是否为伪造的客户端,以达到对服务器防护的目的。具体地,如果客户端不能执行302跳转,防护端将无法接收到来自客户端发送的访问跳转链接的请求信息,进而防护端能够直接判断出客户端为伪造的客户端,访问请求为非正常请求,所以防护端拒绝将该访问请求转发至服务器,以达到清洗攻击流量的目的。
在本申请的一个实施例中,优选地,如图2所示,本申请实施例所提供的另一种应用层攻击的防护方法的流程图,包括:
S201,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S202,判断是否接收到客户端发送的访问跳转链接的请求信息;
S203,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;
S204,若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器。
在该实施例中,首先,DDos防护端接收来自客户端发送的访问服务器的请求,为了初步验证客户端是否为伪造的客户端以及访问请求是否为正常请求。进一步地,防护端向客户端发送携带有跳转链接的应答信息,如302跳转,由于伪造的客户端不能对防护端返回的应答信息进行解析和跟踪跳转,由此可以分辨出客户端是否为伪造的客户端,以达到对服务器防护的目的。具体地,如果客户端能执行302跳转,防护端可以接收到来自客户端发送的访问跳转链接的请求信息,进而防护端可以直接判断出客户端为真实的客户端,即正常客户端,访问请求为正常请求,所以防护端将该访问请求转发至服务器,以便使服务器能够为该客户端提供服务。
在本申请的一个实施例中,优选地,如图3所示,本申请实施例所提供的再一种应用层攻击的防护方法的流程图,包括:
S301,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S302,判断是否接收到客户端发送的访问跳转链接的请求信息;
S303,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;
S304,若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器;
S305,若在第一预设时间段内接收到客户端后续发送的访问请求,则将访问请求转发至服务器。
在该实施例中,首先,防护端在初步判断出该客户端为正常客户端,确认该客户端发送的访问请求为正常请求时,将此次访问请求转发至服务器。进一步地,如果防护端在第一预设时间段内再次接收到该客户端发送的访问请求,由于初步确定了该客户端为正常客户端,防护端在第一预设时间段内将接收该客户端的所有访问请求,并将所有访问请求转发至服务器。
其中,第一预设时间段可以是用户预先设置的,也可以是防护端预设的默认值。
在本申请的一个实施例中,优选地,如图4所示,本申请实施例所提供的又一种应用层攻击的防护方法的流程图,包括:
S401,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S402,判断是否接收到客户端发送的访问跳转链接的请求信息;
S403,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;
S404,若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器;
S405,记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;
S406,根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端;若确定客户端为异常客户端,则拒绝将客户端的后续访问请求转发至服务器。
在该实施例中,首先,防护端在初步确定了该客户端为正常客户端之后,可以在第一预设时间段内接收该客户端发送的所有访问请求,并将访问请求转发至服务器,然后,记录该客户端在第二预设时间段内发送的针对服务器的访问请求的次数,进一步地,判断访问请求的次数是否大于预设阈值时,当大于预设阈值时,即判断出该客户端访问请求的频率过高,该客户端可能为异常客户端。进一步地,防护端向该客户端发送验证请求信息,以根据客户端针对验证请求信息返回的验证应答信息,判断该客户端是否为异常客户端,如果确定客户端为异常客户端,则拒绝将该客户端的后续访问请求转发至服务器,进而能够有效阻止对应用层的攻击,达到清洗攻击流量的目的,使服务器能够更好地为正常客户端提供服务。
其中,第二预设时间段可以是用户预先设置的,也可以是防护端预设的默认值。
在本申请的一个实施例中,优选地,如图5所示,本申请实施例所提供的另一种应用层攻击的防护方法的流程图,包括:
S501,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S502,判断是否接收到客户端发送的访问跳转链接的请求信息;
S503,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;
S504,若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器;
S505,记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;
S506,从客户端返回的验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值;判断第一cookie值是否与预存的预设脚本的第二cookie值相同;
S507,若确定第一cookie值与第二cookie值相同,则向服务器转发客户端的访问请求;
S508,若确定第一cookie值与第二cookie值不相同,则拒绝客户端的访问请求。
其中,验证请求信息中携带有预设脚本。
在该实施例中,当防护端判断出客户端在第二预设时间段内发送的针对服务器的访问请求的次数大于预设阈值,即判断出该客户端访问请求的频率过高,该客户端可能为异常客户端时,进一步地,为了验证客户端是否为异常客户端,向客户端发送验证请求信息。具体地,验证请求信息中携带有预设脚本,预设脚本可以是一种直译式的脚本语言,优选地,选择JavaScript代码作为预设脚本,由于只有真实客户端才能执行JavaScript代码,伪造的客户端很难做到和真实的客户端功能一样,所以可以从客户端返回的验证应答信息判断该客户端是否为异常客户端。具体地,从验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值,并判断第一cookie值是否与预存的预设脚本的第二cookie值相同,如果相同,则说明该客户端为正常客户端,在预设时间段内接收该客户端的访问请求,将访问请求转发至服务器,并将服务器返回的内容转发在该客户端;如果不同,则说明该客户端为异常客户端,拒绝将访问请求转发至服务器,进而能够有效阻止对应用层的攻击。基于此,使用本申请提供的应用层攻击的防护方法能够实现对客户端的甄别,达到防护异常客户端攻击的目的。
其中,Cookie是指某些网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据,Cookie由服务器端生成,发送给User-Agent(用户代理),可以为客户端,客户端会将Cookie的key/value(键-值对)保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是客户端设置为自动启用cookie),Cookie名称和值可以由服务器端开发者自行定义。
在本申请的一个实施例中,优选地,如图6所示,本申请实施例所提供的又一种应用层攻击的防护方法的流程图,包括:
S601,在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
S602,判断是否接收到客户端发送的访问跳转链接的请求信息;
S603,若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;
S604,若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器;
S605,记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;
S606,若未接收到客户端针对验证请求信息返回的验证应答信息,则确定客户端为异常客户端,并拒绝客户端后续发送的针对服务器的访问请求。
在该实施例中,当防护端判断出客户端在第二预设时间段内发送的针对服务器的访问请求的次数大于预设阈值,即判断出该客户端访问请求的频率过高,该客户端可能为异常客户端时。进一步地,为了验证客户端是否为异常客户端,向客户端发送验证请求信息。具体地,验证请求信息中携带有预设脚本,预设脚本可以是一种直译式的脚本语言,优选地,选择JavaScript代码作为预设脚本,由于只有真实客户端才能执行JavaScript代码,伪造客户端很难做到和真实客户端功能一样,具体地,如果客户端不能执行这段预设脚本,客户端将无法做出针对验证请求信息返回的验证应答信息,基于此,防护端可以确定出该客户端为异常客户端,并拒绝该客户端后续发送的针对服务器的访问请求,进而能够有效阻止异常客户端对应用层的攻击,达到清洗攻击流量的目的,使服务器能够为正常客户端服务。
如图7所示,本申请的一个具体实施例所提供的一种应用层攻击的防护方法的流程示意图,包括:
步骤1.客户端向防护端发送访问login.php页面的访问请求;
步骤2.防护端向客户端返回302跳转链接;
步骤3.如果客户端不能跳转,结束;
步骤4.如果客户端再次发送访问login.php页面的访问请求;
步骤5.防护端转发访问login.php页面的访问请求至服务器;
步骤6.服务器向防护端返回访问成功信息;
步骤7.防护端向客户端返回访问成功信息;
步骤8.客户端发送的访问次数超过阈值;
步骤9.防护端向客户端返回javascript脚本;
步骤10.如果客户端不能跳转,结束;
步骤11.如果客户端再次发送访问login.php页面的访问请求;
步骤12.防护端转发访问login.php页面的访问请求至服务器;
步骤13.服务器向防护端返回访问成功信息;
步骤14.防护端向客户端返回访问成功信息。
其中,上述防护方法的步骤,具体包括:
步骤1,客户端(IP 1.1.1.1)发送访问A网站的login.php页面的请求;
步骤2,防护端收到客户端(IP 1.1.1.1)对A网站的访问请求后,为了验证客户端(IP 1.1.1.1)是否为伪造客户端,返回给客户端(IP 1.1.1.1)一个302跳转页面链接,让客户端(IP 1.1.1.1)再次访问A网站的login.php页面,如果防护端没有再次收到客户端(IP1.1.1.1)对A网站的login.php页面的访问请求,执行步骤3,如果防护端再次收到客户端(IP 1.1.1.1)对A网站的login.php页面的访问请求,执行步骤4;
步骤3,如果防护端没有再次收到客户端(IP 1.1.1.1)对A网站的login.php页面的访问请求,则说明客户端(IP 1.1.1.1)为伪造的客户端,防护端拒绝将访问请求转发至服务器,即访问请求失败,结束;
步骤4,如果防护端再次收到客户端(IP 1.1.1.1)对A网站的login.php页面的访问请求,则说明客户端(IP 1.1.1.1)的访问请求为正常请求;
步骤5,防护端将客户端(IP 1.1.1.1)对A网站的login.php页面的访问请求转发至服务器;
步骤6,服务器收到访问请求后,将A网站的login.php页面内容发送至防护端;
步骤7,防护端收到服务器返回的内容后,将该内容转发至客户端(IP1.1.1.1);
步骤8,防护端在第一预设时间段内都接收客户端(IP 1.1.1.1)后续发送的访问请求,并将所有访问请求转发至服务器;
防护端记录客户端(IP 1.1.1.1)在第二预设时间段内发送的针对服务器的访问请求的次数,并判断访问请求的次数否超过了用户预设的阈值;
步骤9,如果客户端(IP 1.1.1.1)针对服务器的访问请求的次数超过了用户预设的阈值,防护端返回给客户端(IP 1.1.1.1)一段只有真实客户端才能解析并执行的javascript脚本,如果客户端(IP 1.1.1.1)不能执行这段javascript脚本或执行javascript脚本失败,执行步骤10,如果客户端(IP 1.1.1.1)执行javascript脚本成功,执行步骤11;
步骤10,如果客户端(IP 1.1.1.1)不能执行javascript脚本,防护端将拒绝转发来自客户端(IP 1.1.1.1)的访问请求至服务器,结束;
如果客户端(IP 1.1.1.1)执行javascript脚本失败,具体地,客户端(IP1.1.1.1)执行脚本后会根据脚本中预设的数据计算第一cookie值,并在继续请求时携带第一cookie,如果防护端再次收到客户端(IP 1.1.1.1)访问请求,取出客户端(IP 1.1.1.1)请求时的第一cookie值,并与预设脚本的第二cookie值对比,如果没有取到第一cookie值,或者第一cookie值与第二cookie值不相同,则说明此客户端为伪造的客户端,即判断出客户端(IP 1.1.1.1)为异常客户端,防护端拒绝将客户端(IP 1.1.1.1)后续发送的针对服务器的访问请求转发至服务器,结束;
步骤11,如果客户端(IP 1.1.1.1)执行javascript脚本成功,具体地,客户端(IP1.1.1.1)执行脚本后会根据脚本中预设的数据计算第一cookie值,并在继续请求时携带第一cookie,如果防护端再次收到客户端(IP 1.1.1.1)访问请求,取出客户端(IP 1.1.1.1)请求时的第一cookie值,并与预设脚本的第二cookie值对比,如果第一cookie值与第二cookie值相同,则说明此客户端为真实的客户端,即判断出客户端(IP 1.1.1.1)为正常客户端;
步骤12,防护端将客户端(IP 1.1.1.1)的访问请求转发至服务器;
步骤13,服务器收到访问请求后,将访问的内容发送至防护端;
步骤14,防护端收到服务器返回的内容后,将该内容转发至客户端(IP 1.1.1.1)。
另外,防护方法的使用步骤还包括:
步骤15,防护端在第三预设时间段内都接收客户端(IP 1.1.1.1)后续发送的访问请求,并将所有访问请求转发至服务器;
其中,在该具体实施例中,客户端IP地址为1.1.1.1,访问请求为访问A网站的login.php.com页面的请求,跳转链接的应答信息为302跳转页面,预设脚本为javascript代码,第三预设时间段可以是用户预先设置的,也可以是防护端预设的默认值。
需要说明的是,伪造的客户端不能对防护端返回的302跳转进行解析和跟踪跳转,由此可以分辨出访问请求是否为正常请求,具体地,如果没有接收到客户端发送的访问302跳转链接的请求信息,防护端就能直接判断出该访问请求为非正常请求,进而拒绝将该访问请求转发至服务器,达到对服务器的防护以及清洗攻击流量的目的。
基于同一发明构思,本申请第二方面的实施例中还提供了与应用层攻击的防护方法对应的防护装置,由于本申请实施例中的防护装置解决问题的原理与本申请实施例上述防护方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。如图8所示,为本申请实施例所提供的一种应用层攻击的防护装置的结构示意图,该装置包括:
发送模块10,用于在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
处理模块20,用于若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。
本申请提供的应用层攻击的防护装置,包括发送模块10和处理模块20,为了初步验证客户端是否为伪造的客户端以及访问请求是否为正常请求,防护端在接收来自客户端发送的访问服务器的请求之后,通过发送模块10向客户端发送携带有跳转链接的应答信息,如果防护端的处理模块20没有接收到来自客户端发送的访问跳转链接的请求信息,处理模块20就能够直接判断出客户端为伪造的客户端,访问请求为非正常请求,所以防护端拒绝将该访问请求转发至服务器,以达到清洗攻击流量的目的。
在本申请的一个实施例中,优选地,处理模块20,还用于若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器。
在本申请的一个实施例中,优选地,处理模块20,还用于若在第一预设时间段内接收到客户端后续发送的访问请求,则将访问请求转发给服务器。
在本申请的一个实施例中,优选地,如图9所示,为本申请实施例所提供的另一种应用层攻击的防护装置的结构示意图,该装置包括:
发送模块10,用于在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
处理模块20,用于若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器;用于若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器;
记录模块30,用于记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;
发送模块10,还用于当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;
处理模块20,还用于根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端;若确定客户端为异常客户端,则拒绝将客户端的后续访问请求转发至服务器。
在本申请的一个实施例中,优选地,验证请求信息中携带有预设脚本;
处理模块20,具体用于从客户端返回的验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值;
判断第一cookie值是否与预存的预设脚本的第二cookie值相同;
若确定第一cookie值与第二cookie值相同,则向服务器转发客户端的访问请求;
若确定第一cookie值与第二cookie值不相同,则拒绝客户端的访问请求。
在本发明的一个实施例中,优选地,处理模块20,还用于若未接收到客户端针对验证请求信息返回的验证应答信息,则确定客户端为异常客户端,并拒绝客户端后续发送的针对服务器的访问请求。
本申请第三方面的实施例中,优选地,如图10所示,为本申请实施例所提供的一种电子设备的结构示意图,该电子设备包括:处理器100、存储器200和总线300,存储器200存储有处理器100可执行的机器可读指令,当电子设备运行时,处理器100与存储器200之间通过总线300通信,机器可读指令被处理器100执行时执行如下执行指令:
在接收到客户端发送的访问请求之后,向客户端发送携带有跳转链接的应答信息;
若没有接收到客户端发送的访问跳转链接的请求信息,则拒绝将访问请求转发至服务器。
在本申请的一个实施例中,优选地,上述处理器100执行的步骤中,向客户端发送携带有跳转链接的应答信息之后,还包括:
若接收到客户端发送的访问跳转链接的请求信息,则将访问请求转发至服务器。
在本申请的一个实施例中,优选地,上述处理器100执行的步骤中,将访问请求转发至服务器之后,还包括:
若在第一预设时间段内接收到客户端后续发送的访问请求,则将访问请求转发至服务器。
在本申请的一个实施例中,优选地,上述处理器100执行的步骤中,将访问请求转发至服务器之后,还包括:
记录客户端在第二预设时间段内发送的针对服务器的访问请求的次数;
当访问请求的次数大于预设阈值时,向客户端发送验证请求信息;
根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端;
若确定客户端为异常客户端,则拒绝将客户端的后续访问请求转发至服务器。
在本申请的一个实施例中,优选地,上述处理器100执行的步骤中,验证请求信息中携带有预设脚本;根据客户端针对验证请求信息返回的验证应答信息,判断客户端是否为异常客户端,包括:
从客户端返回的验证应答信息中获取客户端根据预设脚本计算得到的第一cookie值;
判断第一cookie值是否与预存的预设脚本的第二cookie值相同;
若确定第一cookie值与第二cookie值相同,则向服务器转发客户端的访问请求;
若确定第一cookie值与第二cookie值不相同,则拒绝客户端的访问请求。
在本申请的一个实施例中,优选地,上述处理器100执行的步骤中,向客户端发送验证请求信息之后,还包括:
若未接收到客户端针对验证请求信息返回的验证应答信息,则确定客户端为异常客户端,并拒绝客户端后续发送的针对服务器的访问请求。
本申请第四方面的实施例中,优选地,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述应用层攻击的防护方法。
具体地,计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述应用层攻击的防护方法,从而能够有效阻止异常客户端对应用层的攻击,达到清洗攻击流量的目的,使服务器能够为正常客户端服务。
本申请实施例所提供的应用层攻击的防护方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种应用层攻击的防护方法,其特征在于,包括:
在接收到客户端发送的访问请求之后,向所述客户端发送携带有跳转链接的应答信息;
若没有接收到所述客户端发送的访问所述跳转链接的请求信息,则拒绝将所述访问请求转发至服务器。
2.根据权利要求1所述的方法,其特征在于,所述向所述客户端发送携带有跳转链接的应答信息之后,还包括:
若接收到所述客户端发送的访问所述跳转链接的请求信息,则将所述访问请求转发至所述服务器。
3.根据权利要求2所述的方法,其特征在于,所述将所述访问请求转发至所述服务器之后,还包括:
若在第一预设时间段内接收到所述客户端后续发送的访问请求,则将所述访问请求转发至所述服务器。
4.根据权利要求2所述的方法,其特征在于,所述将所述访问请求转发至所述服务器之后,还包括:
记录所述客户端在第二预设时间段内发送的针对所述服务器的访问请求的次数;
当所述访问请求的次数大于预设阈值时,向所述客户端发送验证请求信息;
根据所述客户端针对所述验证请求信息返回的验证应答信息,判断所述客户端是否为异常客户端;
若确定所述客户端为异常客户端,则拒绝将所述客户端的后续访问请求转发至所述服务器。
5.根据权利要求4所述的方法,其特征在于,所述验证请求信息中携带有预设脚本;所述根据所述客户端针对所述验证请求信息返回的验证应答信息,判断所述客户端是否为异常客户端,包括:
从所述客户端返回的验证应答信息中获取所述客户端根据所述预设脚本计算得到的第一cookie值;
判断所述第一cookie值是否与预存的所述预设脚本的第二cookie值相同;
若确定所述第一cookie值与所述第二cookie值相同,则向所述服务器转发所述客户端的访问请求;
若确定所述第一cookie值与所述第二cookie值不相同,则拒绝所述客户端的访问请求。
6.根据权利要求4所述的方法,其特征在于,所述向所述客户端发送验证请求信息之后,还包括:
若未接收到所述客户端针对所述验证请求信息返回的验证应答信息,则确定所述客户端为异常客户端,并拒绝所述客户端后续发送的针对所述服务器的访问请求。
7.一种应用层攻击的防护装置,其特征在于,包括:
发送模块,用于在接收到客户端发送的访问请求之后,向所述客户端发送携带有跳转链接的应答信息;
处理模块,用于若没有接收到所述客户端发送的访问所述跳转链接的请求信息,则拒绝将所述访问请求转发至服务器。
8.根据权利要求7所述的装置,其特征在于,
所述处理模块,还用于若接收到所述客户端发送的访问所述跳转链接的请求信息,则将所述访问请求转发至所述服务器。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器运行时执行如权利要求1~6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810630242.7A CN108881226A (zh) | 2018-06-19 | 2018-06-19 | 应用层攻击的防护方法、防护装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810630242.7A CN108881226A (zh) | 2018-06-19 | 2018-06-19 | 应用层攻击的防护方法、防护装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108881226A true CN108881226A (zh) | 2018-11-23 |
Family
ID=64340602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810630242.7A Pending CN108881226A (zh) | 2018-06-19 | 2018-06-19 | 应用层攻击的防护方法、防护装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108881226A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948856A (zh) * | 2021-03-03 | 2021-06-11 | 电信科学技术第五研究所有限公司 | 一种防篡改可信的网络协同管控系统及实现方法 |
CN113079170A (zh) * | 2021-04-13 | 2021-07-06 | 福建奇点时空数字科技有限公司 | 一种基于多级交互验证机制的sdn动态目标防御方法 |
CN113381979A (zh) * | 2021-05-12 | 2021-09-10 | 网宿科技股份有限公司 | 一种访问请求代理方法及代理服务器 |
CN113660331A (zh) * | 2021-08-16 | 2021-11-16 | 杭州安恒信息技术股份有限公司 | 一种数据中添加来源信息的方法及相关装置 |
CN114172677A (zh) * | 2020-09-11 | 2022-03-11 | 北京金山云网络技术有限公司 | 针对秒拨ip的识别方法及装置、系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101180826A (zh) * | 2004-01-26 | 2008-05-14 | 思科技术公司 | 较高级协议认证 |
US20090007265A1 (en) * | 2007-06-29 | 2009-01-01 | Microsoft Corporation | Defending Against Denial Of Service Attacks |
CN103929498A (zh) * | 2014-05-05 | 2014-07-16 | 北京京东尚科信息技术有限公司 | 处理客户端请求的方法和装置 |
CN104092665A (zh) * | 2014-06-19 | 2014-10-08 | 小米科技有限责任公司 | 访问请求过滤方法、装置及设备 |
-
2018
- 2018-06-19 CN CN201810630242.7A patent/CN108881226A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101180826A (zh) * | 2004-01-26 | 2008-05-14 | 思科技术公司 | 较高级协议认证 |
US20090007265A1 (en) * | 2007-06-29 | 2009-01-01 | Microsoft Corporation | Defending Against Denial Of Service Attacks |
CN103929498A (zh) * | 2014-05-05 | 2014-07-16 | 北京京东尚科信息技术有限公司 | 处理客户端请求的方法和装置 |
CN104092665A (zh) * | 2014-06-19 | 2014-10-08 | 小米科技有限责任公司 | 访问请求过滤方法、装置及设备 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172677A (zh) * | 2020-09-11 | 2022-03-11 | 北京金山云网络技术有限公司 | 针对秒拨ip的识别方法及装置、系统 |
CN112948856A (zh) * | 2021-03-03 | 2021-06-11 | 电信科学技术第五研究所有限公司 | 一种防篡改可信的网络协同管控系统及实现方法 |
CN112948856B (zh) * | 2021-03-03 | 2022-11-15 | 电信科学技术第五研究所有限公司 | 一种防篡改可信的网络协同管控系统及实现方法 |
CN113079170A (zh) * | 2021-04-13 | 2021-07-06 | 福建奇点时空数字科技有限公司 | 一种基于多级交互验证机制的sdn动态目标防御方法 |
CN113079170B (zh) * | 2021-04-13 | 2023-04-07 | 厦门美域中央信息科技有限公司 | 一种基于多级交互验证机制的sdn动态目标防御方法 |
CN113381979A (zh) * | 2021-05-12 | 2021-09-10 | 网宿科技股份有限公司 | 一种访问请求代理方法及代理服务器 |
CN113381979B (zh) * | 2021-05-12 | 2023-05-23 | 网宿科技股份有限公司 | 一种访问请求代理方法及代理服务器 |
CN113660331A (zh) * | 2021-08-16 | 2021-11-16 | 杭州安恒信息技术股份有限公司 | 一种数据中添加来源信息的方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108881226A (zh) | 应用层攻击的防护方法、防护装置及电子设备 | |
CN104253686B (zh) | 账号登录的方法、设备及系统 | |
CN102480490B (zh) | 一种用于防止csrf攻击的方法和设备 | |
CN106797371B (zh) | 用于用户认证的方法和系统 | |
CN104734849B (zh) | 对第三方应用进行鉴权的方法及系统 | |
US8850567B1 (en) | Unauthorized URL requests detection | |
CN104158818B (zh) | 一种单点登录方法及系统 | |
US20170109534A1 (en) | Dynamic Analysis Security Testing of Multi-Party Web Applications Via Attack Patterns | |
US20230196288A1 (en) | System and method for electronic lead verification | |
CN105939326A (zh) | 处理报文的方法及装置 | |
CN107211016A (zh) | 会话安全划分和应用程序剖析器 | |
CN104852919B (zh) | 实现门户Portal认证的方法及装置 | |
CN106156133A (zh) | 控制表单重复提交的方法、装置及系统 | |
US11995176B2 (en) | Platform for generation of passwords and/or email addresses | |
CN110113366A (zh) | 一种csrf漏洞的检测方法及装置 | |
CN105681258B (zh) | 基于第三方服务器的会话方法和会话装置 | |
CN106331042A (zh) | 一种异构用户系统的单点登录方法及其装置 | |
CN105871853A (zh) | 一种入口认证方法和系统 | |
CN108076003A (zh) | 会话劫持的检测方法及装置 | |
CN110365712A (zh) | 一种分布式拒绝服务攻击的防御方法及系统 | |
CN108156118A (zh) | 用户身份标识方法及装置 | |
CN106101075B (zh) | 一种实现安全访问的方法与设备 | |
Wedman et al. | An analytical study of web application session management mechanisms and HTTP session hijacking attacks | |
CN110062005A (zh) | 用户终端、服务器、验证系统及方法 | |
CN103560884B (zh) | 用户身份信息的注销方法、系统、认证服务器及客户端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181123 |