返回介绍

18.1 DDoS 攻击与对策

发布于 2024-10-11 22:28:34 字数 4459 浏览 0 评论 0 收藏 0

DDo(Distributed Denial of Service),即分布式拒绝服务攻击,是指黑客通过控制由多个肉鸡或服务器组成的僵尸网络,向目标发送大量看似合法的请求,从而占用大量网络资源使网络瘫痪,阻止用户对网络资源的正常访问。

从各安全厂商的 DDoS 分析报告不难看出,DDoS 攻击的规模及趋势正在成倍增长。由于攻击的成本不断降低,技术门槛要求越来越低,攻击工具的肆意传播,互联网上随处可见成群的肉鸡,使发动一起 DDoS 攻击变得轻而易举。

DDoS 攻击技术包括:常见的流量直接攻击(如 SYN/ACK/ICMP/UDP FLOOD),利用特定应用或协议进行反射型的流量攻击(如,NTP/DNS/SSDP 反射攻击,2018 年 2 月 28 日 GitHub 所遭受的 Memcached 反射攻击),基于应用的 CC、慢速 HTTP 等。关于这些攻击技术的原理及利用工具网上有大量的资源,不再赘述。

18.1.1 DDoS 防御常规套路

防御 DDoS 的常规套路包括:本地设备清洗,运营商清洗,云清洗。

1.本地设备清洗

抗 DDoS 设备(业内习惯称 ADS 设备)一般以盒子的形式部署在网络出口处,可串联也可旁路部署。旁路部署需要在发生攻击时进行流量牵引,其基本部署方案如图 18-1 所示。

图 18-1 ADS 设备部署方式

图 18-1 中的检测设备对镜像过来的流量进行分析,检测到 DDoS 攻击后通知清洗设备,清洗设备通过 BGP 或 OSPF 协议将发往被攻击目标主机的流量牵引到清洗设备,然后将清洗后的干净流量通过策略路由或者 MPLS LSP 等方式回注到网络中;当检测设备检测到 DDoS 攻击停止后,会通知清洗设备停止流量牵引。

将 ADS 设备部署在本地,企业用户可依靠设备内置的一些防御算法和模型有效抵挡一些小规模的常见流量攻击,同时结合盒子提供的可定制化策略和服务,方便有一定经验的企业用户对攻击报文进行分析,定制针对性的防御策略。目前国内市场上,主要以绿盟的黑洞为代表,具体可以访问其官网进一步了解。

本地清洗最大的问题是当 DDoS 攻击流量超出企业出口带宽时,即使 ADS 设备处理性能够,也无法解决这个问题。一般金融证券等企业用户的出口带宽可能在几百兆到几 G,如果遇到十 G 以上甚至上百 G 的流量,就真的麻烦了,更别谈 T 级别的 DDoS 攻击了。

2.运营商清洗

当本地设备清洗解决不了流量超过出口带宽的问题时,往往需要借助运营商的能力了,紧急扩容或者开启清洗服务是一般做法,前提是要采购相应的清洗服务,而且一般需要通过电话或邮件确认,有的可能还要求传真。

运营商的清洗服务基本是根据 netflow 抽样检测网络是否存在 DDoS 攻击,而且策略的颗粒度较粗,因此针对低流量特征的 DDoS 攻击类型检测效果往往不够理想。再加上一些流程上的操作如电话、邮件、传真等,真正攻击到来时处理可能会更慢,需要重点关注。

值得一提的是中国电信的云堤服务,提供了“流量压制”和“近源清洗”服务,而且还提供了自助平台供用户操作,查看流量、开启清洗也非常方便。

3.云清洗

内容分发网络(Content Delivery Network,CDN)是指,通过在网络各处放置节点服务器,让用户能够在离自己最近的地方访问服务,以此来提高访问速度和服务质量。CDN 主要利用了四大关键技术:内容路由,内容分发,内存存储,内容管理。更详细的技术原理可以参考中国电信研究院出版的《CDN 技术详解》。

CDN 技术的初衷是为了提高互联网用户对静态网站的访问速度,但是由于分布式、就近访问的特点,能对攻击流量进行稀释,因此,一些传统 CDN 厂商除了提供云加速功能外,也开始推出云清洗的服务,当然还有一些安全公司基于其自身优势进入云清洗市场。基本原理都一样,需要先在云端配置好相应的记录,当企业遭受大规模攻击时,通过修改其 DNS 记录将要保护的域名 CNAME 到云端事先配好的记录上,等待 DNS 生效即可。

使用云清洗需要注意以下几个问题:

·云清洗厂商需要提前配置好相应记录。

·DNS 修改记录后,需要等待 TTL 超时才生效。

·直接针对源 IP 的攻击,无法使用云清洗防护,还要依靠本地和运营商清冼。

·针对 HTTPS 网站的防御,还涉及 HTTPS 证书,由此带来的数据安全风险需要考虑,市面上也有相应的 Keyless 方案 [1]

由于国内环境不支持 Anycast 技术,所以不再赘述,如果有海外分支机构的网站需要防护,可以关注。

[1] 其细节可以参考 cloudflare 公司博客上的文章,链接:https://blog.cloudflare.com/keyless-ssl-the-nitty-gritty-technical-details/。

18.1.2 一些经验

结合笔者所在团队的一些经验,对 DDoS 防护落地做一些补充,仅供参考。

1.自动化平台

金融企业由于高可用要求,往往会有多个数据中心,一个数据中心还会接入多家运营商线路,通过广域网负载均衡系统对用户的访问进行调度,使之访问到最近最优的资源。当任何一条接入线路存在 DDoS 攻击时,能通过广域网负载均衡系统将该线路上的访问需求转移至其他互联网线路。在针对 IP 地址开展的 DDoS 攻击中,此方案能够有效保障正常客户的访问不受影响,为了实现快速切换,需要通过自动化运维平台来实现,如图 18-2 所示。

图 18-2 线路调整一键应急

配合必要的应知应会学习和应急演练,使团队成员都能快速掌握方法,在事件发生第一时间进行切换,将影响降到最小。接下来才是通知运营商进行清洗处理,等待流量恢复正常后再进行回切。

当某一个业务的 IP 受到攻击时,可以针对性地处置,比如一键停用,让正常用户访问其他 IP;也可以一键开启清洗服务。

2.设备抗 D 能力

除了 ADS 设备外,还有一些设备也需要关注抗 DDoS 能力,包括防火墙、负载均衡设备等。

出于安全可控需求,金融企业往往会采用异构模式部署防火墙,比如最外层用产品 A,里面可能会用产品 B。假如产品 A 的抗 DDoS 能力差,在发生攻击时,可能还没等到 ADS 设备清洗,产品 A 已经出问题了,比如发生了 HA 切换或者无法再处理新的连接等。

在产品选型测试时,需要关注这方面的能力,结合笔者所在团队经验,有以下几点供参考:

·某些产品在开启日志记录模块后会存在极严重的性能消耗,在可能存在攻击的环境内建议关闭。

·尽管理论和实际会有偏差,但根据实际测试情况,还是建议当存在大量 TCP、UDP 新建连接时,防火墙的最大连接数越大越好。

·多测试多对比,从对比中可以发现更优的方案,通过适当的调整优化引入更优方案。

·监控防火墙 CPU 和连接数,当超过一定值时开始着手优化规则,将访问量多的规则前移、减少规则数目等都是手段。

负载均衡设备也需要关注以上问题,此外,负载均衡由于承接了应用访问请求分发调度,可以一定程度上针对性地防护基于 IP 速率、基于 URL 速率的 DDoS 攻击以及慢速攻击等。图 18-3 所示为 F5 的 ASM 的 DDoS 防护策略。

图 18-3 负载均衡设备 ASM 防 DDoS 功能

请求经过防火墙和负载均衡,最后到了目标机器上处理的时候,也需要关注。系统的性能调优设置、Nginx 的性能参数调整以及限制连接模块配置等,都是在实际工作中会涉及的。

3.应急演练

部署好产品,开发好自动化运维平台,还要配合必要的应知应会、应急演练才行。因为金融行业的特殊性,DDoS 攻击发生的次数相比互联网行业还是少很多的,有的企业可能几年也碰不到一次。时间久了技能就生疏了,真正需要用到时,可能连登录设备的账号口令都忘了,又或者需要现场接线的连设备都找不到,那就太糟糕了。

此外,采购的外围的监控服务、运营商和云清洗产品的服务能力也需要通过演练来检验有效性。签订合同时承诺的秒级发现、分钟级响应是否经得起考验,要先在心里打上一个问号。建议在不事先通知的情况下进行演练,观察这中间的问题并做好记录,待演练完成后一并提交给服务商要求整改。这样的演练每年要不定期组织几次。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文