CN105592070B - 应用层DDoS防御方法及系统 - Google Patents

应用层DDoS防御方法及系统 Download PDF

Info

Publication number
CN105592070B
CN105592070B CN201510782316.5A CN201510782316A CN105592070B CN 105592070 B CN105592070 B CN 105592070B CN 201510782316 A CN201510782316 A CN 201510782316A CN 105592070 B CN105592070 B CN 105592070B
Authority
CN
China
Prior art keywords
request
web request
user action
key
server
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.)
Active
Application number
CN201510782316.5A
Other languages
English (en)
Other versions
CN105592070A (zh
Inventor
朱浩然
华锦芝
杨阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201510782316.5A priority Critical patent/CN105592070B/zh
Publication of CN105592070A publication Critical patent/CN105592070A/zh
Application granted granted Critical
Publication of CN105592070B publication Critical patent/CN105592070B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供的应用层DDoS防御方法,其包括:a)设置在客户端的信息收集模块收集客户端web浏览器的用户动作信息;b)客户端向服务器发送第一次web请求,用以请求密钥;c)服务器判定该第一次web请求是否合法,在判定合法的情况下,传送密钥给所述客户端;d)客户端向服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段;e)所述服务器接收第二次web请求,判定该第二次web请求中是否包含用户动作信息字段;f)在判定该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件;g)在确认所述用户动作在预定范围内的情况下,处理该第二次web请求。还提供相应的系统。

Description

应用层DDoS防御方法及系统
技术领域
本发明涉及网络技术,更为具体地,涉及应用层DDoS防御技术。
背景技术
随着互联网的发展,大多数企业都会通过Web网站向用户提供服务。因此,针对Web服务器的应用层分布式拒绝服务(DDoS)攻击就会威胁到网站的正常运作,甚至造成用户流失和利润损失。与传统的DDoS攻击不同,应用层DDoS攻击会使用真实IP与服务器建立正常TCP连接,且数据包与正常数据包格式相同,因此,传统的针对数据包的特征匹配方法难以应对应用层DDoS攻击。
目前应用层DDoS的防御方法主要有三种:1.对请求主体进行验证,该类方法的问题在于图片验证码等验证方式影响了用户体验的流畅度;2.针对IP和URL进行请求频率验证,该类方法在面对离散性DDoS攻击时不能发现异常流量;3.对用户的访问行为进行建模分析以发现异常流量,该方法中防御所需的数据流量较大,导致该方法难以应用在访问人员较多的网站上很难实现。
申请号为CN 201210139585.6 的我国专利申请公开了一种应用层DDoS分布式拒绝服务攻击防御方法。该申请的技术方案利用了针对IP和URL进行请求频率验证的方法,首先建立基准矩阵,然后根据基准矩阵来发现流量的异常。该方法需进行大量的计算分析,还需要串联网络设备的支持,且面对离散性DDoS攻击时并不能很好的防御。
申请号为CN 201310018798.8的我国专利申请公开了一种针对网站的应用层DDoS攻击检测方法和防御系统。该申请的技术方案利用对用户的访问行为进行建模分析。在业务网站较为庞大,访问用户相对复杂时,使用该方法并不能建立一个有效的模型,对合法用户可能会造成误伤,也达不到良好的防御效果。
发明内容
有鉴于此,本发明提供应用层DDoS防御方法及系统,以尽可能至少解决上述问题中的一部分。
本发明提供的应用层DDoS防御方法,其包括:a)设置在客户端的信息收集模块收集客户端web浏览器的用户动作信息;b)客户端向服务器发送第一次web请求,用以请求密钥;c)服务器判定该第一次web请求是否合法,在判定合法的情况下,传送密钥给所述客户端;d)客户端向服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段;e)所述服务器接收第二次web请求,判定该第二次web请求中是否包含用户动作信息字段;f)在判定该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件;g)在确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
可选地,所述的应用层DDoS防御方法,其中,所述用户动作信息包括:鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。
可选地,所述的应用层DDoS防御方法,其中,所述步骤f)中确定所述用户动作是否符合预定条件包括:确定鼠标单位时间的移动距离大于移动阈值m,所述鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符按键次数大于按键阈值Lp。
可选地,所述的应用层DDoS防御方法,其中,所述用户动作信息字段位于HTTP请求的头部。
可选地,所述的应用层DDoS防御方法,还包括:设置动态IP表,其包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。
可选地,所述的应用层DDoS防御方法,其中,所述步骤c)中服务器判定该第一次web请求是否合法包括:c1)判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求,若不在黑名单中,则c2)确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,如确定该IP地址在白名单中,则c3)判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法。
可选地,所述的应用层DDoS防御方法,其中,在步骤c)服务器判定该第一次web请求不合法的情况下,停止本次处理,并将发出该请求的IP地址移至黑名单。
可选地,所述的应用层DDoS防御方法,其中,在步骤e)判定该第二次web请求中不包含用户动作信息字段的情况下,停止本次处理,并将发送给第二次web请求的IP地址移至黑名单。
可选地,所述的应用层DDoS防御方法,其中,所述客户端对所述服务器的请求是通过Ajax技术实现。
根据本发明的又一方面,还提供应用层DDoS防御系统,其包括:信息收集模块,其设置在客户端,用于收集客户端浏览器的用户动作信息;第一请求发送单元,其设置在客户端,用于向服务器发送第一次web请求,以请求密钥;第一判断单元,其设置在服务器,用于判定该第一次web请求是否合法,以便所述服务器在判定合法的情况下传送密钥给所述客户端;第二请求发送单元,其设置在客户端,用于向所述服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段;第二判断单元,其设置在所述服务器,用于判定所述服务器所接收的该第二次web请求中是否包含用户动作信息字段;第三判断单元,其设置在所述服务器,在所述第二判断单元的判断结果为该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件;处理单元,其设置在所述服务器,用于在所述第三判断单元确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
可选地,所述的应用层DDoS防御系统,其中,所述用户动作信息包括:鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。
可选地,所述的应用层DDoS防御系统,其中,所述第三判断单元根据鼠标单位时间的移动距离是否大于移动阈值m,所述鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和是否大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符按键次数是否大于按键阈值Lp来确定所述用户动作是否符合预定条件。
可选地,所述的应用层DDoS防御系统,其中,还包括表单设置单元,其用于设置动态IP表,该动态IP表包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。
可选地,所述的应用层DDoS防御系统,其中,所述第一判断单元包括第一判断子单元、第二判断子单元以及第三判断子单元,且:第一判断子单元设置成用于判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求,若不在黑名单中,则将该信息通知第二判断子单元,所述第二判断子单元用于确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,如确定该IP地址在白名单中,将该信息发送给所述第三判断子单元,所述第三判断子单元用于判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法。
根据本发明的各示例,可在不影响web业务、不降低用户体验的情况下对DDoS攻击进行有效防御,从而确保web网站的正常运行。
附图说明
图1是根据本发明示例的应用层DDoS防御方法的流程图。
图2是应用层DDoS防御系统的结构示意图。
具体实施方式
现在参照附图描述本发明的示意性示例。相同的附图标号表示相同的元件。下文描述的各实施例有助于本领域技术人员透彻理解本发明,且意在示例而非限制。除非另有限定,文中使用的术语(包括科学、技术和行业术语)具有与本发明所属领域的技术人员普遍理解的含义相同的含义。此外,流程图中各步骤的先后顺序也不以图示的顺序为限。
图1是根据本发明示例的应用层DDoS防御方法的流程图。该方法执行在包括客户端与服务器的应用环境中,其中该客户端与该服务器是通信连接的。该客户端可通过其上的web网页向web服务器发起请求,以要求相应的服务。在本文各示例中,客户端是可接入网络的、可供用户使用的各种电子设备,服务器则是可通过网络与客户端交互的电子设备;其中,该客户端例如为手机、平板电脑、笔记本电脑、台式电脑等,而该服务器例如为台式电脑,也不排除服务器为笔记本电脑、平板电脑、甚至手机等。这都取决于具体的应用环境。
如图1所示,在步骤10,设置在客户端的信息收集模块收集客户端浏览器的用户动作信息。在客户端设置了信息收集模块,该信息收集模块可以是新配置到该客户端的软件模块、硬件模块、或软件与硬件模块的结合,也可以应用客户端中原有部件或软件模块。根据本发明的示例,用户使用浏览器访问web网站,而页面则因此加载到该服务端的浏览器中,以便用户浏览。在步骤12,客户端向服务器发送第一次web请求,用以请求密钥。在步骤14,服务器判定该第一次web请求是否合法,在判定合法的情况下,传送密钥给所述客户端。在步骤16,客户端向服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段。在步骤18,所述服务器接收第二次web请求,判定该第二次web请求中是否包含用户动作信息字段。在步骤20,在判定该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件。在步骤22,在确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
根据本发明的一个示例性实施方式,用户动作信息包括鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。据此,在步骤20中,在判定该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件则可实现为如满足如下的条件,则确认该用户动作符合预定条件,要满足的条件包括:鼠标单位时间的移动距离大于移动阈值m,鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符键的按键次数大于按键阈值Lp。其中,移动阈值m为用户访问浏览器时鼠标移动的最小速度,Ms通过在用户提交表单之前总的鼠标移动距离M除以用于收集鼠标动作的收集时间t来获得,如果所确定的Ms小于m,则表明鼠标移动异常。其中,鼠标确认键一般为鼠标左键,根据设置,有时鼠标右键也可设置成选择键,而左键设置成功能键。和阈值Cp是基于对用户行为的一般统计而获得的这两者和的最小值,如果鼠标确认键的点击次数M1与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数KTab之和小于和阈值Cp,则表明请求异常。在按下键盘回车键以提交表单请求之前,如果字符键的按键次数Ks小于按键阈值Lp,则表明请求异常。按键阈值Lp也是基于对用户行为的一般统计而获得访问web浏览器提交请求之前按压普通按键的最小次数。根据本发明的示例,只要上述条件中有一个判定为请求异常,则确认所述用户动作不符合预定条件。但是,实际应用中,也可是仅在上述条件中三个均判定为请求异常的情况下,才确认用户动作不符合预定条件,否则符合。
根据本发明的一个示例,用户动作信息字段位于HTTP请求的头部。换句话说,步骤16中,该第二次web请求是HTTP请求,且在该HTTP请求的头部插入了所收集的用户动作信息。结合上文给出的示例,所收集的鼠标移动距离、整个收集过程的时间、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数等已插入到HTTP请求的头部。其中,鼠标移动距离、整个收集过程的时间也可以替换为鼠标单位时间的移动距离。插入了用户动作信息的该HTTP请求由通过第一次web请求获得密钥加密。
根据本发明的一个示例,如图1所示的该应用层DDoS防御方法还包括设置动态IP表,其包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。作为示例,该动态IP表以累积的方式设置,也就是在客户端与服务器的不断交互中,通过例如根据本发明所述的方法来判断发起请求的IP是否是合法IP而逐渐完善。根据本发明,访问率过高的IP地址,一般都会将其设置在黑名单,有其他异常访问行为的IP地址也会被放在黑名单中,如上文所述,该名单中的IP地址是累积形成的,并以一个相对较高的时间阈值来进行过期取消,该时间阈值可由用户配置,例如为1小时或更多。根据本申请描述的上下文可知道,本发明的各示例中,用户先后发起两次web请求(两次均可为HTTP请求),第一次用来请求加密密钥,第二次用来提交正常的web请求。白名单用来暂时存放正常请求加密密钥的IP地址,供代理服务器在接收到web请求时,查看该IP是否存放在白名单中,若有则进行下一步处理,若无则将该IP加入黑名单,并抛弃请求。
根据本发明的一个示例,在步骤14,服务器判定该第一次web请求是否合法包括如下步骤:首先,判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求;若不在黑名单中,则确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,同时传送密钥给客户端;如确定该IP地址在白名单中,则判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法,并传送密钥给客户端。其中,可根据实际情况确定白名单频率阈值,例如,根据该web网站的流量平均统计等。
本发明各示例中,若服务器判定该第一次web请求不合法的情况下,停止本次处理,并将发出该请求的IP地址移至黑名单。类似地,如果判定该第二次web请求中不包含用户动作信息字段的情况下,停止本次处理,并将发送给第二次web请求的IP地址移至黑名单。
根据本发明各示例的应用层DDoS防御方法可通过软件来实现。替代地,可通过硬件来实现应用层DDoS防御方法,或通过软件结合硬件来实现应用层DDoS防御方法。
本发明还提供应用层DDoS防御系统。图2是该应用层DDoS防御系统的结构示意图。如图所示,该应用层DDoS防御系统包括信息收集模块20、第一请求发送单元22、第一判断单元24、第二请求发送单元26、第二判断单元28、第三判断单元30以及处理单元32。
信息收集模块20设置于客户端1,用于收集客户端1浏览器的用户动作信息。第一请求发送单元22设置于客户端1,用于向服务器2发送第一次web请求,以请求密钥。第一判断单元24设置于服务器2,用于判定该第一次web请求是否合法,以便服务器2在判定合法的情况下传送密钥给客户端1。第二请求发送单元26设置于客户端1,用于向服务器2发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段。第二判断单元28设置于服务器2,用于判定服务器2所接收的该第二次web请求中是否包含用户动作信息字段。第三判断单元30设置于服务器2,在第二判断单元28的判断结果为该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件。处理单元32设置于服务器2,用于在所述第三判断单元30确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
用户动作信息如上文所描述的那样,包括鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。在判定该第二次web请求中包含用户动作信息字段的情况下,第三判断单元30根据确认所述用户动作是否符合预定条件实现为第三判断单元30确认该用户动作是否同时满足以下条件:鼠标单位时间的移动距离大于移动阈值m,鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符键的按键次数大于按键阈值Lp。
根据本发明的一个示例,该应用层DDoS防御系统还包括表单设置单元(未图示),其用于设置动态IP表,该动态IP表包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。
根据本发明的又一个示例,第一判断单元24可包括第一判断子单元、第二判断子单元以及第三判断子单元。第一判断子单元设置成用于判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求,若不在黑名单中,则将该信息通知第二判断子单元。第二判断子单元用于确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,如确定该IP地址在白名单中,将该信息发送给所述第三判断子单元。第三判断子单元用于判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法。
图2所示的应用层DDoS防御系统可由软件实现,或由硬件实现、或有软件与硬件相互结合来实现。
根据本发明的一个示例,客户端对服务器的请求是通过Ajax技术实现的。例如,利用Ajax技术从服务器端动态地向客户端加载web页面。如本领域技术人员所知道的那样,Javascript脚本在客户端工作,用户可查阅完整的Javascript代码。按照本发明的示例,可在服务器端启用几套微调的客户端模块方案和多种混淆方案。然后,在服务器端设定阈值,当疑似客户端脚本被破解,服务器端遭受DDoS攻击时,则利用该动态加载方式,对客户端模块进行调整,以确保客户端模块不会被攻击者破解和利用。
正常的用户浏览web页面时,肯定会有鼠标移动与点击行为,以及通过键盘点击进行的输入行为。请求的产生,通过是根据鼠标与键盘的点击产生的,如果一个请求的发起方没有任何的鼠标、键盘行为,却在源源不断的发送请求,那么它就极有可能是一个非法请求。
用户行为的鼠标记录,主要包括用户的鼠标移动距离,以及提交表单、发送请求之前的点击次数(比如选中输入表单、切换输入框等)。这样,当服务器端或服务器端的代理服务器接收到所收集的这些参数的时候,可通过几乎为0的点击数和极低的鼠标移动速度,判断请求来自异常用户。
用户行为的键盘记录,我们主要记录的就是用户在按下ENTER键提交请求申请之前所按过的键盘次数。将次数记录下来,发送给服务器端。根据本发明,可设定一次按键生成一个字符长度,服务器可以根据请求中的参数子符长度是否超过这个次数所能完成的字符长度。若未超过,则认定用户的请求参数出现异常,可对请求进行异常处理。
在本文的各示例中,术语“服务器”应做广义理解,它指的是包括一个或多个服务器的服务器端,或是一个或多个服务器中的具体某个服务器。本文中,提到某单元或某模块设置在服务器则可相应地理解为其设置在服务器端的某个具体服务器上。如果服务器端设置成云端,则某单元或某模块设置在服务器可理解为设置在形式为云端的服务器端。
根据本发明的各示例,通过用户动作信息确认用户认为操作的真实性,而无需用户通过相关界面输入信息进行验证,改善了用户体验。此外,根据本发明的各示例,因结合了用户真实性的判断,从而弥补了先有的通过IP/URL访问频率来防范应用层DDoS攻击的方法在对抗离散性攻击时的短处,且该方法不需要耗费大量资源来对用户的访问行为进行分析。进一步,为了防止所收集的用户动作信息在传输过程中被窃取或修改,本发明的一些示例中,还对该数据进行了加密。根据本发明的一些示例,在获取密钥的时候,还对IP请求频率进行了验证,将IP请求频率的验证提前到客户获取密钥时,可以避免用户发起正常请求时进行IP频率验证而给响应速度与用户体验带来的不良影响。
尽管已结合上文描述了本发明,但应理解,文中的各示例可相互结合。在不背离本发明公开的范围与精神的情况下,对示例中各步骤或部件、单元的修改也应落入本申请所附的权利要求书的范围内。

Claims (14)

1.一种应用层DDoS防御方法,其包括:
a)设置在客户端的信息收集模块收集客户端web浏览器的用户动作信息;
b)客户端向服务器发送第一次web请求,用以请求密钥;
c)服务器判定该第一次web请求是否合法,在判定合法的情况下,传送密钥给所述客户端;
d)客户端向服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段;
e)所述服务器接收第二次web请求,判定该第二次web请求中是否包含用户动作信息字段;
f)在判定该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件;
g)在确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
2.如权利要求1所述的应用层DDoS防御方法,其中,所述用户动作信息包括:鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。
3.如权利要求2所述的应用层DDoS防御方法,其中,所述步骤f)中确定所述用户动作是否符合预定条件包括:确定鼠标单位时间的移动距离大于移动阈值m,所述鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符按键次数大于按键阈值Lp。
4.如权利要求3所述的应用层DDoS防御方法,其中,所述用户动作信息字段位于HTTP请求的头部。
5.如权利要求1所述的应用层DDoS防御方法,还包括:设置动态IP表,其包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。
6. 如权利要求5所述的应用层DDoS防御方法,其中,所述步骤c)中服务器判定该第一次web请求是否合法包括:
c1)判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求,若不在黑名单中,则
c2)确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,如确定该IP地址在白名单中,则
c3)判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法。
7.如权利要求6所述的应用层DDoS防御方法,其中,在步骤c)服务器判定该第一次web请求不合法的情况下,停止本次处理,并将发出该请求的IP地址移至黑名单。
8.如权利要求6所述的应用层DDoS防御方法,其中,在步骤e)判定该第二次web请求中不包含用户动作信息字段的情况下,停止本次处理,并将发送给第二次web请求的IP地址移至黑名单。
9.如权利要求1所述的应用层DDoS防御方法,其中,所述客户端对所述服务器的请求是通过Ajax技术实现。
10.一种应用层DDoS防御系统,其包括:
信息收集模块,其设置在客户端,用于收集客户端浏览器的用户动作信息;
第一请求发送单元,其设置在客户端,用于向服务器发送第一次web请求,以请求密钥;
第一判断单元,其设置在服务器,用于判定该第一次web请求是否合法,以便所述服务器在判定合法的情况下传送密钥给所述客户端;
第二请求发送单元,其设置在客户端,用于向所述服务器发起第二次web请求,该第二次web请求由所述密钥加密,且该第二次web请求包含所收集的用户动作信息字段;
第二判断单元,其设置在所述服务器,用于判定所述服务器所接收的该第二次web请求中是否包含用户动作信息字段;
第三判断单元,其设置在所述服务器,在所述第二判断单元的判断结果为该第二次web请求中包含用户动作信息字段的情况下,确认所述用户动作是否符合预定条件;
处理单元,其设置在所述服务器,用于在所述第三判断单元确认所述用户动作在预定范围内的情况下,处理该第二次web请求。
11.如权利要求10所述的应用层DDoS防御系统,其中,所述用户动作信息包括:鼠标单位时间的移动距离、提交表单之前的鼠标确认键的点击次数、按下键盘回车键以提交表单请求之前的按键次数。
12.如权利要求11所述的应用层DDoS防御系统,其中,所述第三判断单元根据鼠标单位时间的移动距离是否大于移动阈值m,所述鼠标确认键的点击次数与按下键盘回车键以提交表单请求之前键盘Tab键的激活次数之和是否大于和阈值Cp,以及按下键盘回车键以提交表单请求之前字符按键次数是否大于按键阈值Lp来确定所述用户动作是否符合预定条件。
13.如权利要求10所述的应用层DDoS防御系统,其中,还包括表单设置单元,其用于设置动态IP表,该动态IP表包括黑名单与白名单,所述黑名单用于存放服务器认为是非正常的IP地址,所述白名单用于存放正常请求加密密钥的IP地址。
14.如权利要求13所述的应用层DDoS防御系统,其中,所述第一判断单元包括第一判断子单元、第二判断子单元以及第三判断子单元,且:
第一判断子单元设置成用于判断发出第一次web请求的IP地址是否在黑名单中,若是,则抛弃请求,若不在黑名单中,则将该信息通知第二判断子单元,
所述第二判断子单元用于确定该IP地址是否在白名单中,若不在,则将该IP地址增加到该白名单,并将该第一次web请求判断为合法,如确定该IP地址在白名单中,将该信息发送给所述第三判断子单元,
所述第三判断子单元用于判断该IP地址发出web请求的频率是否已超过白名单频率阈值,如是,则将该IP地址移到黑名单,否则,将该第一次web请求判断为合法。
CN201510782316.5A 2015-11-16 2015-11-16 应用层DDoS防御方法及系统 Active CN105592070B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510782316.5A CN105592070B (zh) 2015-11-16 2015-11-16 应用层DDoS防御方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510782316.5A CN105592070B (zh) 2015-11-16 2015-11-16 应用层DDoS防御方法及系统

Publications (2)

Publication Number Publication Date
CN105592070A CN105592070A (zh) 2016-05-18
CN105592070B true CN105592070B (zh) 2018-10-23

Family

ID=55931285

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510782316.5A Active CN105592070B (zh) 2015-11-16 2015-11-16 应用层DDoS防御方法及系统

Country Status (1)

Country Link
CN (1) CN105592070B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109150928A (zh) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 用于处理请求的方法和装置
CN108304858B (zh) * 2017-12-28 2022-01-04 中国银联股份有限公司 对抗样本识别模型生成方法、验证方法及其系统
CN109005175B (zh) * 2018-08-07 2020-12-25 腾讯科技(深圳)有限公司 网络防护方法、装置、服务器及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075535A (zh) * 2011-01-12 2011-05-25 中国科学院计算技术研究所 一种应用层分布式拒绝服务攻击过滤方法及系统
CN102739683A (zh) * 2012-06-29 2012-10-17 杭州迪普科技有限公司 一种网络攻击过滤方法及装置
CN103095711A (zh) * 2013-01-18 2013-05-08 重庆邮电大学 一种针对网站的应用层DDoS攻击检测方法和防御系统
CN103139138A (zh) * 2011-11-22 2013-06-05 飞塔公司 一种基于客户端检测的应用层拒绝服务防护方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8543807B2 (en) * 2009-07-14 2013-09-24 Electronics And Telecommunications Research Institute Method and apparatus for protecting application layer in computer network system
US20130291107A1 (en) * 2012-04-27 2013-10-31 The Irc Company, Inc. System and Method for Mitigating Application Layer Distributed Denial of Service Attacks Using Human Behavior Analysis

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075535A (zh) * 2011-01-12 2011-05-25 中国科学院计算技术研究所 一种应用层分布式拒绝服务攻击过滤方法及系统
CN103139138A (zh) * 2011-11-22 2013-06-05 飞塔公司 一种基于客户端检测的应用层拒绝服务防护方法及系统
CN102739683A (zh) * 2012-06-29 2012-10-17 杭州迪普科技有限公司 一种网络攻击过滤方法及装置
CN103095711A (zh) * 2013-01-18 2013-05-08 重庆邮电大学 一种针对网站的应用层DDoS攻击检测方法和防御系统

Also Published As

Publication number Publication date
CN105592070A (zh) 2016-05-18

Similar Documents

Publication Publication Date Title
CN107645478B (zh) 网络攻击防御系统、方法及装置
CN105577608B (zh) 网络攻击行为检测方法和装置
US9817969B2 (en) Device for detecting cyber attack based on event analysis and method thereof
CN105897782B (zh) 一种针对接口的调用请求的处理方法及装置
US9356920B2 (en) Differentiating between good and bad content in a user-provided content system
Cambiaso et al. Slow DoS attacks: definition and categorisation
CN102571547B (zh) 一种http流量的控制方法及装置
US8850567B1 (en) Unauthorized URL requests detection
EP2383954A2 (en) Virtual server and method for identifying zombie, and sinkhole server and method for integratedly managing zombie information
WO2017007705A1 (en) Asymmetrical challenges for web security
US8646038B2 (en) Automated service for blocking malware hosts
CN103139138B (zh) 一种基于客户端检测的应用层拒绝服务防护方法及系统
CN104519049A (zh) 通过增加客户端资源需求来限制拒绝服务攻击的效力
CN109495423A (zh) 一种防止网络攻击的方法及系统
Oh et al. Fingerprinting keywords in search queries over tor
Satam et al. Anomaly Behavior Analysis of DNS Protocol.
CN109194671A (zh) 一种异常访问行为的识别方法及服务器
CN105592070B (zh) 应用层DDoS防御方法及系统
CN105577670A (zh) 一种撞库攻击的告警系统
Acar et al. A privacy‐preserving multifactor authentication system
CN108600145B (zh) 一种确定DDoS攻击设备的方法及装置
CN109688099B (zh) 服务器端撞库识别方法、装置、设备及可读存储介质
CN106789858A (zh) 一种访问控制方法和装置以及服务器
CN109413022B (zh) 一种基于用户行为检测http flood攻击的方法和装置
Mirvaziri A new method to reduce the effects of HTTP-Get Flood attack

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant