Hacker News 中文摘要

RSS订阅

2025年12月5日Cloudflare服务中断事件 -- Cloudflare outage on December 5, 2025

文章摘要

2025年12月5日,Cloudflare网络出现约25分钟的中断,影响了约28%的HTTP流量。事故源于修复React服务器组件漏洞时对请求解析逻辑的修改,并非网络攻击所致。这是继11月18日后再次发生服务中断,公司承诺将采取措施防止类似事件。

文章总结

Cloudflare 2025年12月5日服务中断事件报告

事件概述

2025年12月5日UTC时间08:47,Cloudflare部分网络出现严重故障,约28%的HTTP流量受到影响。故障于09:12完全修复,持续约25分钟。此次中断与网络安全攻击无关,而是由于修复React服务器组件漏洞(CVE-2025-55182)时,调整WAF请求体解析缓冲区大小(从128KB增至1MB)触发的配置问题。

故障原因

  1. 配置变更连锁反应

    • 在逐步部署缓冲区扩容过程中,一个用于测试WAF规则的内置工具出现错误率上升。由于该工具非核心服务组件,团队决定通过全局配置系统临时禁用。
    • 禁用操作触发了FL1版本代理的规则模块漏洞,导致LUA执行异常(rule_result.execute对象未定义),进而返回HTTP 500错误。
  2. 影响范围
    仅同时满足以下两个条件的客户受影响:

    • 使用旧版FL1代理
    • 部署了Cloudflare托管规则集 中国网络流量未受影响。

技术细节

  • 规则集系统缺陷:首次对"execute"类型规则启用紧急熔断机制时,未处理规则跳过后的空对象引用问题。该漏洞在Rust编写的FL2新代理中已被规避。
  • 时间线
    | UTC时间 | 事件描述 |
    |---|---|
    | 08:47 | 配置变更触发故障 |
    | 09:12 | 回滚完成,服务恢复 |

改进措施

针对11月18日类似事件后承诺的优化方案(尚未完全部署): 1. 增强部署机制:为配置变更添加渐进式发布和健康检查 2. 应急通道优化:确保关键操作在多重故障场景下的可用性 3. 故障开放策略:配置错误时自动切换至安全默认状态而非拒绝请求

Cloudflare将于次周发布完整韧性改进计划,目前暂停所有网络变更以确保系统稳定性。团队对连续事件深表歉意,承诺加速改进进程。

(注:原文中产品推广、招聘信息及相关文章链接等非核心内容已精简)

评论总结

以下是评论内容的总结:

  1. 部署流程问题

    • 批评者认为Cloudflare的部署流程存在缺陷,缺乏逐步推出和回滚机制。
      引用:"They really need to figure out a way to correlate global configuration changes to the errors they trigger as fast as possible." (Scaevolus)
      引用:"For the entire system to be down for 10+ minutes due to a bad config change or deployment is just beyond me." (paradite)
  2. 代码质量与测试不足

    • 许多评论指出,代码错误本应通过测试或强类型语言避免。
      引用:"This type of code error is prevented by languages with strong type systems." (xnorswap)
      引用:"Cloudflare deployed code that was literally never tested, not even once." (lapcat)
  3. 透明性与改进态度

    • 部分用户赞赏Cloudflare的透明度,认为公开问题有助于改进。
      引用:"I'd prefer to trust CloudFlare who admits and act upon their fuckups, rather than trying to cover them up." (denysvitali)
      引用:"transparency is a very good strategy and this article shows a good plan to avoid further problems." (denysvitali)
  4. 技术决策质疑

    • 对增加缓冲区大小等决策的合理性提出疑问。
      引用:"Why would increasing the buffer size help with that security vulnerability?" (rany_)
      引用:"Why is the Next.js limit 1 MB? It's not enough for uploading user generated content." (antiloper)
  5. 文化与管理问题

    • 推测公司文化可能导致鲁莽的运维决策。
      引用:"this sounds like the sort of cowboy decision a team makes when they've either already broken all the rules." (flaminHotSpeedo)
      引用:"The results of vibe coded deployments are starting to show." (alwaysroot)
  6. 工具与流程建议

    • 建议采用更严格的工具(如静态检查、模糊测试)或流程改进。
      引用:"A lot of these kind of bugs feel like they could be caught be a simple review bot." (snafeau)
      引用:"So no static compiler checks and apparently no fuzzers used?" (pdp)
  7. 幽默与讽刺

    • 部分评论以幽默方式调侃频繁故障。
      引用:"I've just been transferred to the Cloudflare outage explanation department." (dreamcompiler)
      引用:"Time for Cloudflare to start using the BOFH excuse generator." (rachr)
  8. 中国网络特殊性

    • 对中国网络未受影响的特殊性表示好奇。
      引用:"why exactly China would have been immune." (fidotron)
  9. 流量数据关注

    • 对Cloudflare处理的流量规模(8500万TPS)表示惊讶。
      引用:"The most surprising from this article is that CloudFlare handles only around 85M TPS." (iLoveOncall)

总结呈现了批评(部署流程、测试不足)、肯定(透明度)和中立讨论(技术决策细节)的平衡,同时保留了原始评论的关键表述。