昨日,互联网大面积瘫痪,众多其他网站和服务性能缓慢。问题显然出在Cloudflare网络,但该公司花了一些时间才确定真正原因。
Cloudflare表示,最初以为遭遇了大规模网络攻击,但随后意识到问题是由软件更新中的一个“痛苦”错误引起的……
正如我们昨日报道,此次中断影响巨大。
由于流行的Cloudflare基础设施网络提供商出现问题,大量应用和网站目前完全离线或出现严重中断。Cloudflare CDN为许多知名应用背后的网站提供支持,因此Cloudflare的任何中断都会产生广泛影响。这包括社交媒体X(原Twitter),用户目前无法发布新帖子或刷新时间线。该问题似乎正在影响全球网络用户。
Cloudflare为何认为遭受攻击
Cloudflare称,其观察到的模式是连接每次离线约五分钟,然后恢复,接着再次离线。这种模式使公司认为正在经历所谓的超大规模DDoS攻击,因为技术错误通常不会自行修复。
分布式拒绝服务攻击是指恶意行为者向服务器发送大量请求以耗尽所有可用容量,导致真实用户无法访问服务。
另一个看似是网络攻击的证据,结果纯属巧合。
让我们误判并认为这可能是一次攻击的另一个明显症状是:Cloudflare的状态页面宕机了。该状态页面完全托管在Cloudflare基础设施之外,不依赖Cloudflare。虽然这结果证明是巧合,但它让部分诊断问题的团队认为攻击者可能同时针对我们的系统和状态页面。
真正原因是Cloudflare的错误
然而,公司随后发现问题出在对其机器人管理系统所使用的文件进行更新时出现了失误。
IT界有一条不成文的规定:如果你遇到症状奇怪的问题,那很可能是一个权限问题——这次的情况正是如此。
它是由对我们一个数据库系统权限的更改触发的,该更改导致数据库向我们的机器人管理系统使用的“特征文件”中输出了多个条目。这反过来使该特征文件的大小翻倍。然后,这个超出预期的特征文件被传播到构成我们网络的所有机器上。
这些机器上运行的路由流量软件会读取此特征文件,以使我们的机器人管理系统能够跟上不断变化的威胁。该软件对特征文件的大小有一个限制,该限制低于翻倍后的大小。这导致了软件故障。
对于奇怪的五分钟周期也有一个简单的解释。
该文件由在ClickHouse数据库集群上运行的查询每五分钟生成一次,该集群当时正为改进权限管理而逐步更新。只有当查询在已更新的集群部分运行时才会生成错误数据。因此,每五分钟就有机会生成一组好的或坏的配置文件,并迅速传播到整个网络。
公司已发布道歉,称其错误“令人深感痛苦”。
我们对给客户和整个互联网带来的影响深表歉意。鉴于Cloudflare在互联网生态系统中的重要性,我们任何系统的任何中断都是不可接受的。我们的网络曾有一段时间无法路由流量,这对我们团队的每个成员来说都深感痛苦。我们知道今天我们让您失望了。
您可以在Cloudflare的博客文章中阅读更详细的解释。


















