DDoS防护方式以及产品
导航: 这里将一个案例事项按照流程进行了整合,这样查看起来比较清晰。部分资料来自于Cloudflare 1.DDoS介绍 2.常用DDoS攻击 |
1.DDoS的防护方式
防护DDoS从原理来说就是需要从所有流量中区分出正常流量和恶意攻击流量,然后过滤点攻击流量,避免其占用服务器资源为正常流量服务。按这个道理来说,只要成功过滤恶意流量,就能是DDoS攻击失去作用,保证业务正常进行,不会产生意外损失。
本地防护设备
本地设备一般分为DDoS检测设备、管理中心和清洗设备。首先,DDoS检测设备日常通过流量基线自学习方式,按各种和防御有关的维度进行统计,形成流量模型基线,从而生成防御阈值。学习结束后继续按基线学习的维度做流量统计,并将每一秒钟的统计结果和防御阈值进行比较,超过则认为有异常,通告管理中心。由管理中心下发引流策略到清洗设备,启动引流清洗。异常流量清洗通过特征、基线、回复确认等各种方式对攻击流量进行识别、清洗。经过异常流量清洗之后,为防止流量再次引流至DDoS清洗设备,可通过在出口设备回注接口上使用策略路由强制回注的流量去往数据中心内部网络,访问目标系统。
运营商清洗服务
一般黑客发起DDoS攻击时,最先感知到的一般为本地数据中心内的DDoS防护设备,但本地防护设备只能防御一定规模的流量攻击,一旦攻击流量超出本地DDoS清洗设备性能可以应对的DDoS流量攻击规模时,需要通过运营商清洗服务或借助运营商临时增加带宽来完成攻击流量的清洗,运营商通过各级DDoS防护设备以清洗服务的方式帮助用户解决带宽消耗型的DDoS攻击行为,如果流量比较大,也会出现带宽的问题。
云清洗服务
最差的情况就是在运营商的流量清洗效果不理想的时候,可以尝试使用云清洗服务。云清洗服务是分布式部署的基于运营商骨干网的异常流量清洗中心,可以在靠近攻击源的的地方讲流量清洗,提升防护DDoS的能力。
DDoS云防护的基本原理就是替身防护,即通过A记录、CNAME或者NS的方式将被攻击网站的域名指向云清洗机房,云清洗机房利用囤积的大量带宽进行流量清洗,把清洗后的正常业务访问转发给网站,过滤掉攻击流量。
且云清洗服务带宽量大,具体了解云清洗服务的部署架构原理,参考文章Anycast技术。
DDoS攻击危害严重,需积极应对,必需采取有效防护DDoS措施。对比三种方式的不同和适用场景,发现他们都存在一些缺点,比如本地DDoS防护设备和运营商清洗服务都对HTTPS流量的防护能力有限,且对CC等应用层的DDoS攻击类型检测效果不太行。大多数真正的DDoS攻击都是“混合”攻击,所以单一解决方案不能完成所有DDoS攻击清洗,最好的方式是要根据实际情况采取多重防护。
1.1 DDoS缓解流程
有了以上几种防护方案,那么流量到了防护设备是怎么将恶意流量和正常进行区分的?怎么将正常流量给到真实服务器?
什么是DDoS缓解?
DDoS缓解是指成功保护目标服务器或网络以抵御分布式拒绝服务(DDoS)攻击的过程。目标受害者可以使用专门设计的网络设备或基于云的保护服务缓解传入的威胁。
使用基于云的提供商来缓解 DDoS 攻击时,可以分为 4 个阶段:
1.检测 - 为阻止分布式攻击,网站需要能够区分攻击流量与大规模正常流量。如果产品发布或其他公告导致网站涌入大批新的合法访问者,那么网站最不希望的就是限制访问者或以其他方式阻止访问者查看网站内容。IP信誉、常见攻击模式和过往数据均有助于妥善完成检测。
2.响应 - 在此步骤中,DDoS保护网络将通过智能方式丢弃恶意机器人流量并吸收其余流量,从而对传入的已识别威胁做出响应。利用WAF页面规则应对应用程序层(L7)攻击,或者运用其他过滤流程来应对低层(L3/L4)攻击(如memcached或NTP放大),网络能够缓解中断攻击。
3.路由 - 高效DDoS缓解解决方案通过智能方式路由流量,将剩余流量分解为可管理的区块,从而防止拒绝服务。
4.调整 - 卓越的网络可以分析流量总结模式(如重复违规的IP阻止),特别是攻击来自某些特定国家/地区或特定协议使用不当时效果尤为显著。通过调整应对攻击模式,保护服务可以加强自身以防范未来攻击。
其实也有很多叫法:流量检测、流量牵引和流量回注。
1.2 DDoS的清洗算法
那么知道了缓解的步骤,流量到达缓解层,怎么去区分什么是正常流量?什么是不正常流量?
在不同的产品或者不同的云厂商中都有不同的策略?以下仅列举一些常用的一些策略。
比如网易NDS的防护算法:
网络层防护
网络层防护的主要流程是:每50毫秒分析一次业务流程的成分、新建连接并发连接、业务请求,发现攻击成分发生变化时,依据客户的配置情况调用相应的清洗模块。网络层清洗模块主要有:TCP SYN认证模块、畸形包模块、ACL模块、TCP/UDP状态机模块、黑名单模块、大数据分析过滤模块、限速模块。NDS产品对UDP业务的防护流程如下图所示:
NDS产品对TCP业务的防护流程比较复杂,这里仅仅介绍SYN Flood的防护,如下图所示。
应用层
应用层DDoS攻击之所以难以防范,就在于攻击流和正常流混合在一起,很难有效地分辨出攻击流,想要取得良好的防护效果,要求NDS必须对业务进行深入的分析。
NDS产品业务层防护由JS认证、浏览器指纹、CC工具识别、高级ACL、IP名单库等防护模块组成。这些模块可以单独或者组合使用,以保护客户的业务。
1.JS验证:用于验证来自互联网的访问是否来自于真实浏览器,会区分HTTP API调用和浏览器。其防护流程如下图所示:
2.浏览器指纹:用于验证来自于互联网的访问是否伪造浏览器的请求;
3.CC工具识别:一款CC工具识别模块,能识别出互联网的90%以上的CC工具。包括且不限于空连接、长连接、慢速连接、故意拆分成小包、故意重传、回放攻击、无负载连接等行为;
4.高级ACL:支持客户根据业务特征书写ACL,直接过滤非法流量,支持与黑名单联动;
5.IP名单库:根据大数据的分析结果,形成各种特征的IP名单。
各种不同的算法有很多,这里不一一列举。
1.3 DDoS厂商对比
怎么选择选择DDoS缓解服务
传统DDoS缓解解决方案需要采购现场设备并过滤传入流量。这种方法需要采购和维护昂贵的设备,而且依赖能够缓解攻击的网络。如果DDoS攻击规模足够大,将可以从上游切断网络基础设施,阻止各类现场解决方案生效。如果采购基于云的DDoS缓解服务,应对某些特征进行评估。
1.可扩展性 - 高效解决方案必需能够适应不断增长的业务需求,并对层出不穷的DDoS攻击做出响应。超过每秒1TB/s(TBPS)的攻击已然出现,而且尚无迹象表明攻击流量规模呈下滑趋势。Cloudflare网络能够处理比以往任何时候都大得多的DDoS攻击。
2.灵活性 - 能够创建临时策略和模式,因而可以实时调整Web资产以抵御传入的威胁。为确保站点在攻击期间保持在线状态,实施Page Rule并在整个网络中填充相关更改显得至关重要。
3.可靠性 - DDoS保护就好比座椅安全带,只在必要时使用,一旦使用最好确保正常运行。无论任何保护策略,保证DDoS解决方案可靠性对于顺利推行策略均至关重要。为确保服务长时间正常运行及实现较高的站点可靠性,工程师每天24小时不间断工作,以维持网络在线状态并识别新威胁。冗余、failover 及广阔的数据中心网络是推行平台战略的核心。
4.网络规模 - 随着具体协议和攻击手段的不断转变,Internet DDoS攻击也存在一定的规律。鉴于网络庞大且数据传输范围较广,DDoS防护提供商可以快速有效地分析和响应攻击,通常能够抢先一步阻止攻击。Cloudflare 网络运行的Internet请求约占财富1,000强企业的10%,为分析全球攻击流量数据创造了优势。
这里由于使用的DDoS防护产品比较少,这里简单列举使用过的腾讯云和cloudflare简单说一下。
首先说一下腾讯云,在国内的防护产品有很多,如DDoS高防包,DDoS高防IP,但是腾讯云在海外的防护,比如DDoS高防IP,腾讯云没有足够的资源,就会借用第三方运营商的高防IP来客户使用.这里就会出现几个问题:
1.出现故障难以排查
2.可能造成一些正常的用户无法访问目标真实主机。
由于在项目上出现过以上问题,所以切换到了cloudflare的高防产品上,切换到了cloudflare后,cloudflare会给出一个边缘IP,查询这个IP信息,就会提示为“泛播IP”,简单来说,切换到了cloudflare之后,就没有受到过DDoS的攻击。
当然,类似于云厂商的DDoS防护有很多,如阿里云的云盾,网易、AWS都有自家的DDoS防护产品,这就需要根据各场景的实际使用情况选择。
DDoS防护方式以及产品的更多相关文章
- 理解DDoS防护本质:基于资源较量和规则过滤的智能化系统
本文由 网易云发布. 随着互联网生态逐渐形成,DDoS防护已经成为互联网企业的刚需要求,网易云安全(易盾)工程师根据DDoS的方方面面,全面总结DDoS的攻防对抗. 1.什么是DDoS DDoS全称 ...
- DDoS防护之TCP防护
本文由 网易云 发布. TCP协议,相信对于每一个开发工程师都不陌生.由于该协议是一个面向连接,可靠的特性,广泛应用于现在互联网的应用中.如常见的Web.SSH.FTP等都是基于TCP协议.目前TC ...
- 从保障淘宝到全球市场“第一阵营”,阿里云的DDoS防护之路走了多远?
2年前,不少技术圈的朋友,读过论坛里的一篇解读文章:DDoS,阿里为什么要走自己的一条路(https://bbs.aliyun.com/read/271764.html?pos=13),文章讲述了阿里 ...
- 关于线上一次DDOS攻击和阿里云DDOS防护相关内容
问题 最近我们的一台阿里云服务器 (ECS,有公网IP,Nginx 服务器,开放了80,443),遭受到了DDOS攻击,主要攻击的行为是 攻击我们443 端口.发起大量的请求. 但是我们在 Nginx ...
- 宙斯盾 DDoS 防护系统“降本增效”的云原生实践
作者 tomdu,腾讯云高级工程师,主要负责宙斯盾安全防护系统管控中心架构设计和后台开发工作. 导语 宙斯盾 DDoS 防护系统作为公司级网络安全产品,为各类业务提供专业可靠的 DDoS/CC 攻击防 ...
- CSRF、DDos避免方式
XSS(Cross-Site Scripting,跨站脚本攻击)是一种代码注入攻击.攻击者在目标网站上注入恶意代码,当被攻击者登陆网站时就会执行这些恶意代码,这些脚本可以读取 cookie,sessi ...
- 企业网站DDOS防护解决方案
随着网络的普及,越来越多的企业开始了上网之路,由于网络安全知识的欠缺,很多企业以为做一个网站就 等于 网络化了,于是狠花血本请专业网络公司制作出各种漂亮的网页.但做完才发现,网络上的各种漏洞的DDOS ...
- DDOS防护原理
1.常见DDoS攻击分类 DDoS粗略分类为流量型攻击和CC攻击.流量型攻击主要是通过发送报文侵占正常业务带宽,甚至堵塞整个数据中心的出口,导致正常用户访问无法达到业务服务器.CC攻击主要是针对某些业 ...
- centos利用cloudflare的bpf-tools实现ddos防护
概念 利用BPF( Berkeley Packet Filter)工具集结合iptables的xt_bpf模块可以实现高性能包过滤,从而应对大规模的ddos攻击.BPF Tools包含一组简单的pyt ...
随机推荐
- 密码学系列之:memory-hard函数
密码学系列之:memory-hard函数 目录 简介 为什么需要MHF Memory hard的评估方法 MHF的种类 MHF的密码学意义 memory-hard在MHF中的应用 简介 Memory ...
- JAVA基础——包机制
包机制 包的语法格式package pkg1[.pkg2[.pkg3...]] 一般利用 公司域名倒置 作为包名; 例如www.baidu.com,则建立报的名字com.baidu.www 一般不要让 ...
- 常用加密算法学习总结之数字证书与TLS/SSL
数字证书 对于一个安全的通信,应该有以下特征: 完整性:消息在传输过程中未被篡改 身份验证:确认消息发送者的身份 不可否认:消息的发送者无法否认自己发送了信息 显然,数字签名和消息认证码是不符合要求的 ...
- vue实例属性之el,template,render--(转载)
转载链接:https://www.cnblogs.com/camille666/p/vue_instance_prop_el_template_render.html 一.el,template,re ...
- 【转】Jquery 使用Ajax获取后台返回的Json数据后,页面处理
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Linux系统编程【5】——stty的学习
从文件的角度看设备 之前几篇文章介绍的编程是基于文件的.数据可以保存在文件中,也可以从文件中取出来做处理,再存回去.不仅如此,Linux操作系统还专门为这个东西建立了一套规则,就是前期介绍的" ...
- [leetcode] 116. 填充同一层的兄弟节点
116. 填充同一层的兄弟节点 其实就是个二叉树的层次遍历 class Solution { public void connect(TreeLinkNode root) { if (root == ...
- Java,用户刷屏检测\相似字符串检测
背景 近期有几个业务方提出一需求,期望判断一个用户在短期内是否存在刷屏现象,出现后能对其做出限制,并上报. 刷屏定义:取出用户近期20条评论,如果有50%的评论是"相似"的,则认为 ...
- GO语言面向对象02---继承
package main import ( "fmt" ) type Dog struct { Name string Age int } func (d *Dog)bite() ...
- Go语言流程控制05--defer延时执行
package main import "fmt" func xingzuoZhensuo() { var birthday string fmt.Println("请输 ...