AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

Netflix:微服务架构中的应用程序 DDoS 防护

  • 2017-08-03
  • 本文字数:1188 字

    阅读完需:约 4 分钟

日前,Netflix 发布了一篇博文,阐述了在微服务架构中缓解应用程序 DDoS 攻击的策略。该博文概要阐述了如何识别触发这种攻击的请求,如何使用开源的 Repulsive Grizzly Cloud Kraken 框架进行测试,最后,还提供了保护系统的一些最佳实践。

Netflix 应用程序安全专家 Scott Behrens 与产品和应用程序安全主管 Bryan Payne 首先指出,微服务架构特别容易受到应用程序 DDoS 攻击,这是因为频繁的 API 调用会导致服务周围产生多个网络跳跃( network hops),很容易导致系统攻击自身:

“微服务架构中的单一请求可能会生成数以万计的复杂中间层和后端服务调用。”

这些应用程序 DDoS 攻击带来的第一个挑战是识别。有些看起来像是用户合法的 API 调用,当这种调用即将引发大量内部资源消耗时,如何及时检测出来?

他们列出的首要策略之一就是确定 API 调用需要多长时间。这里我们不会监控前端的请求时间,这有可能会带来误报,监控后端服务的请求时间更为有利。然后对这些请求进行逆向工程,以确定哪种原始 API 调用可能会触发它。

当开发人员找寻出这些 API 调用时,它是一个查看请求本身的过程,并找出可以使其更为耗时的方法。比如,我们可以扩大搜索请求中的范围参数,以获得更大的结果集。在确定是否找到了正确的请求时,可以使用错误指示器(indicator),比如速率限制和异常,或简单地增加延迟。

一旦开发人员确定了这些请求,我们建议使用 Repulsive Grizzly (一个应用层 DDoS 测试框架)来运行它们。它并非一个识别工具,它会针对被测系统触发这些请求,从而提供了一种简化测试过程的方法。

他们还引入了 Cloudly Kraken,这是一个开源的 AWS 测试工具,有助于在全球范围内协调测试运行。这是通过管理一组可扩展的跨区域 AWS 实例完成的,每个实例都运行 Repulsive Grizzly 测试套件。它还提供时间同步功能,确保测试并行运行。

一旦请求被识别并通过测试验证,我们会建议采取以下缓解策略:

  • 生成这样的一种架构,最大限度减小微服务之间的依赖关系。如果一个服务失败,理想状况下,它应该实现故障隔离,而不会影响其他服务。
  • 了解服务队列和服务请求。例如,限制批量大小或请求的对象。
  • 提供从后端服务到 Web 应用程序防火墙的反馈环路。这为它提供了在 API 调用时下游资源利用率的额外信息,在很多 Web 应用程序防火墙的部署中,它只会监控边缘(edge)服务器,无法得到请求对 API 网关的影响。
  • 监视缓存未命中,多数情况下可能是因为高速缓存未正确配置。
  • 利用客户端的各种弹性模式,如断路器和超时设定。

完整的博文可以点此处在线阅读,在文章中作者通过案例研究深入分析了该主题。

查看英文原文: Netflix: Application DDoS Protection in Microservice Architectures


感谢张卫滨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-08-03 19:002275
用户头像

发布了 375 篇内容, 共 196.7 次阅读, 收获喜欢 947 次。

关注

评论

发布
暂无评论
发现更多内容

在线涂鸦画板软件哪款好?这7款涂鸦神器值得推荐!

彭宏豪95

效率工具 画图软件 在线白板 涂鸦 绘画软件

低代码可视化逻辑编排工具

树上有只程序猿

低代码 可视化编排 JNPF

影视企业有哪些方式将视频文件快速海外跨国传输国内?

镭速

跨国文件传输

Serverless,无服务器时代的创新之旅开启了吗

谐云

Rust中non_exhaustive的enum

胡译胡说

rust

对话在行人|浙纺服职院:数智赋能教育高质量发展

用友BIP

2023全球商业创新大会 对话在行人

Gartner发布2024年十大战略技术趋势

谐云

技术、前沿、未来、AI:Stack Overflow 2023 年度报告重磅发布

谐云

高能有料 | 第二届OpenHarmony技术大会议程速递

OpenHarmony开发者

陌生链接可能是诈骗网址,谁来保护我们的上网安全?

最新动态

数据库|PostGreSql 和 MySql 的优劣对比

谐云

第22期 | GPTSecurity周报

云起无垠

Java while 和do while 循环

HoneyMoose

企业如何开展数据管理体系建设,激活数据价值?

用友BIP

数据 数据价值

Ping和ARP流程解析

王玉川

router Switch ping ICMP ARP

还得是PHP

谐云

HarmonyOS数据管理与应用数据持久化(一)

HarmonyOS开发者

客服发送一条消息背后的技术和思考

得物技术

体验 IM 客服

桌面云一体机什么品牌最好?

青椒云云电脑

桌面云 一体机 桌面云一体机

Python JSON 使用指南:解析和转换数据

小万哥

Python 程序员 软件 后端 开发

一座 “数智桥梁”,华为助力“天堑变通途”

脑极体

AI

华为Mate 60必备,这几个保护隐私的设置太实用了

最新动态

特权账号管理系统PAM的优势特点

尚思卓越

网络安全 数据安全 PAM

跨国文件传输为什么要用专业的大文件传输软件?

镭速

跨国文件传输

缺客户、缺钱、缺时间——实业经营的真挑战,中国企业分别突破

B Impact

陈奕迅全新专辑《CHIN UP!》上线华为音乐,五年后心血之作强势来袭

最新动态

手机是数字世界的另一个你,你的隐私还安全吗?

最新动态

单模光纤与多模光纤是什么呢?

小齐写代码

Netflix:微服务架构中的应用程序 DDoS 防护_架构_Andrew Morgan_InfoQ精选文章