HTTP GET Flood

HTTP GET Flood攻击的原理很简单,攻击者利用攻击工具或者操纵僵尸主机,向目标服务器发起大量的HTTP GET报文,请求服务器上涉及数据库操作的URI或其它消耗系统资源的URI,造成服务器资源耗尽,无法响应正常请求。

302重定向

302重定向认证的原理是Anti-DDoS系统代替服务器向客户端响应302状态码(针对GET请求方法的重定向),告知客户端需要重定向到新的URL,以此来验证客户端的真实性。真实客户端的浏览器可以自动完成重定向过程,通过认证;而虚假源或者一般的攻击工具没有实现完整的HTTP协议栈,不支持自动重定向,无法通过认证。

①当连续一段时间内去往目标Web服务器的HTTP GET请求报文超过告警阈值后,Anti-DDoS系统启动源认证机制。源认证机制启动后,Anti-DDoS系统将会代替服务器与客户端建立TCP三次握手。

②Anti-DDoS系统拦截HTTP请求,代替Web服务器回应302状态码,将客户端的访问重定向到一个新的URI。

③如果这个源是虚假源,或者不支持完整HTTP协议栈的攻击工具,不会向新的URI发起请求。

④如果这个源是真实客户端,则会向新的URI发起请求。Anti-DDoS系统收到请求后,将该客户端的源IP地址加入白名单。然后Anti-DDoS系统会再次回应302状态码,将客户端的访问重定向到一开始访问的URI。

⑤后续这个客户端发出的HTTP请求报文命中白名单直接通过。

验证码认证

验证码认证的原理是Anti-DDoS系统要求客户端输入验证码,以此来判断请求是否由真实的用户发起,而不是由攻击工具或僵尸主机发起。因为攻击工具或僵尸主机无法自动响应随机变化的验证码,所以能够有效的防御攻击。

①当连续一段时间内去往目标Web服务器的HTTP GET请求报文超过告警阈值后,Anti-DDoS系统启动源认证机制。源认证机制启动后,Anti-DDoS系统将会代替服务器与客户端建立TCP三次握手。

②Anti-DDoS系统拦截HTTP请求,向客户端返回验证码页面,要求客户端输入验证码。

③如果这个源是攻击工具或僵尸主机,不会输入验证码。

④如果这个源是真实客户端,则会输入验证码并通过认证,Anti-DDoS系统将该客户端的源IP地址加入白名单。然后Anti-DDoS系统会请客户端继续访问一开始的URI。

⑤后续这个客户端发出的HTTP请求报文命中白名单直接通过。

验证码认证方式与302认证方式相比,防御效果更好,但是由于需要人机交互输入验证码,用户体验稍差一些。在实际使用验证码认证方式时,可以增加源IP统计的环节,即Anti-DDoS系统先基于目的IP进行统计,当去往某个目的IP的HTTP请求超过阈值时,启动基于源IP的统计。当来自某个源的HTTP请求也超过阈值时,才启动验证码认证机制。这样就会精确控制需要进行验证码认证的源IP范围,避免大范围的源IP都要输入验证码。

302重定向认证和验证码认证这两种源认证方式是防御HTTP GET Flood攻击的有效手段,但是源认证方式也存在一定的局限,比如机顶盒视频点播、特定移动网络等场景中,无法对客户端使用源认证方式。

HTTP POST Flood

攻击者利用攻击工具或者操纵僵尸主机,向目标服务器发起大量的HTTP POST报文,消耗服务器资源,使服务器无法响应正常请求,这就是HTTP POST Flood攻击。

重定向认证

Anti-DDoS系统代替服务器向客户端响应307状态码(针对POST请求方法的重定向),同时向客户端的浏览器注入Cookie,客户端再次发起请求时会在HTTP报头上附加Cookie信息,Anti-DDoS设系统通过验证Cookie信息的真实性来验证客户端。

①当连续一段时间内去往目标Web服务器的HTTP POST请求报文超过告警阈值后,Anti-DDoS系统启动源认证机制。源认证机制启动后,Anti-DDoS系统将会代替服务器与客户端建立TCP三次握手。

②Anti-DDoS系统拦截HTTP请求,代替Web服务器回应307状态码,并在响应头部附加上由客户端IP生成的Cookie。

③如果这个源是虚假源,或者不支持完整HTTP协议栈的攻击工具,不会重新发起请求。

④如果这个源是真实客户端,Anti-DDoS系统生成的Cookie会写入到浏览器中,并且客户端会重新发起请求,请求头部就会带有该Cookie信息。Anti-DDoS系统收到请求后,验证Cookie是否正确,如果正确则将该客户端的源IP地址加入白名单。然后Anti-DDoS系统会回应408状态码,表示请求超时,使客户端重新发起访问。

⑤后续这个客户端发出的HTTP请求报文命中白名单直接通过。

上面介绍的307重定向认证方式能够很好地防御HTTP POST Flood攻击,但是这种方式也具有一定的局限性。其一,依赖于客户端浏览器的Cookie的机制,受安全级别限制。如果客户端的浏览器安全级别较高而无法写入Cookie,会导致认证不通过;其二,第一阶段重定向结束后,需要客户端再次手动执行提交等操作,才能重新发起POST请求。

同HTTP GET Flood的防御方式相似,HTTP POST Flood的源认证防御也支持增强方式,即验证码认证。

验证码认证

此处的验证码认证与HTTP GET Flood中的验证码机制相同,Anti-DDoS系统要求客户端输入验证码,以此来判断请求是否由真实的用户发起。其弊端也是需要人机交互输入验证码,用户体验稍差一些。具体的工作原理请参考HTTP GET Flood攻击与防御部分中的介绍,此处不再赘述。

DDOS攻击防护HTTP篇相关推荐

  1. DDOS攻击防护DNS篇

    DNS request flood 黑客控制僵尸网络向DNS服务器发送大量不存在的域名的解析请求,最终导致服务器因大量DNS请求而超载. 1.TC源认证 ①客户端发送的DNS请求报文长度超过告警阈值, ...

  2. 网站DDOS攻击防护实战老男孩经验心得分享 【转】

    文章出处:网站DDOS攻击防护实战老男孩经验心得分享 网站DDOS攻击防护实战老男孩经验心得分享    老男孩由于要培训学生.批改作业,因此最近比较忙,还要经常写书.录视频,搞的思路混乱,受朋友邀请参 ...

  3. 腾讯云DDoS攻击防护指南

    1. 什么是DDoS攻击? • DDoS是目前成本较低的一种攻击方式之一.攻击者通过控制大量肉鸡(被黑客入侵控制的终端)同时向目标站点发起访问,目标站点被大量涌入的访问会话占满性能,而无法接收实际正常 ...

  4. 被骗几十万总结出来的Ddos攻击防护经验!(转载)

    被骗几十万总结出来的Ddos攻击防护经验! 技术 站内编辑 2015-09-18 17:37 评论 0 阅读 115159 来源: 爱尖刀 本人从事网络安全行业20年.有15年防ddos攻击防护经验. ...

  5. 几十万换来的Ddos攻击防护经验分享(转载)

    发布时间:2017-01-05 来源:服务器之家 本人从事网络安全行业20年.有15年防ddos攻击防护经验.被骗了很多回(都说能防300G,500G,买完就防不住了),本文当然重点给大家说明,ddo ...

  6. 军备竞赛:DDoS攻击防护体系构建

    作者:腾讯安全平台部 lake2 前言 DDoS攻击(Distributed Denial of Service,分布式拒绝服务攻击)的历史可以追溯到1996年(还记得经典的Ping of Death ...

  7. 被骗几十万总结出来的Ddos攻击防护经验!------转自 服务器之家server

    本人从事网络安全行业20年.有15年防ddos攻击防护经验.被骗了很多回(都说能防300G,500G,买完就防不住了),本文当然重点给大家说明,ddos攻击是什么,中小企业如何防护,用到成本等. 20 ...

  8. 《2021 DDoS攻击态势报告》解读 | 基于威胁情报的DDoS攻击防护

    随着5G.云计算.大数据.物联网等新兴数字产业的发展,信息基础设施的建设规模也随之扩大,这无疑会导致越来越多的网络资产暴露在互联网上.这些资产一旦被DDoS攻击者所利用,将会对网络安全带来严重威胁.在 ...

  9. 被骗几十万总结出来的Ddos攻击防护经验!

    本人从事网络安全行业20年.有15年防ddos攻击防护经验.被骗了很多回(都说能防300G,500G,买完就防不住了),本文当然重点给大家说明,ddos攻击是什么,中小企业如何防护,用到成本等. 20 ...

最新文章

  1. 微服务架构及其最重要的 10 个设计模式!
  2. 放弃使用jQuery实现动画
  3. ObjectDataSource使用初步
  4. Android .mk文件语法解析
  5. 剑指offer 11. 旋转数组的最小数字(很详细!)
  6. 分类模型的评估方法-召回率(Recall)
  7. Flask-SQLALchemy 连接数据库
  8. 工作流添加跟踪后,实例一启动就会自动关闭
  9. [转]C#读写TEXT文件
  10. django调用python脚本返回_讲解django rest framework 自定义返回方法
  11. 大数据之-Hadoop3.x_MapReduce工作流程---大数据之hadoop3.x工作笔记0109
  12. python 网盘搭建_Python无所不能?五分钟教会你用python打造个人云盘!
  13. 什么是AJAX (转贴)
  14. 【安装】安装OpenCV简易教程
  15. IMO 开放平台单点登录
  16. Django admin修改app名称
  17. 《Day01》Java开发工程师必备技能:Maven的安装、使用以及重点
  18. Nginx -- SSL模块
  19. 其实macbook装win7很简单
  20. 【软考 系统架构设计师】计算机网络② 网络规划与设计

热门文章

  1. 大学想选择计算机专业,零基础如何快速学习编程?都是经验之谈
  2. 悟空在哪里?奶妈在哪里?
  3. Linux下终端分屏利器tmux
  4. 带有数字钥匙的智能电动车已商用
  5. python下载安装教程电脑版,python下载好了怎么使用
  6. 【Luat-esp32】0 快速入门
  7. Orcad Capture CIS
  8. xxxxxxxxxxxxxxxxx
  9. SQL递归查询树型分类数据
  10. APPLE  电脑型号大全