在 9 月的最后两周,由于我们 Web 服务器遭到一系列攻击,我们登上了新闻头条。今天,我们想向大家简要更新一下我们网站的状态,以及过去两周发生的事件回顾。
jQuery 遭到围攻
9 月 18 日凌晨,我们遭到了 DDoS 攻击,网站离线。我们宕机了几个小时。这些网站在 9 月 18 日当天晚些时候恢复了运行,一切都看似正常。
后来,在 9 月 18 日下午,一家名为 RiskIQ 的安全公司联系我们,报告称他们的爬虫发现我们的内容网站正在提供恶意软件。从没有报告称 jQuery 库或 CDN 遭到破坏。在收到该报告后,我们立即完全销毁并重新映像了所有这些机器,吊销并重新颁发了所有相关的 SSL 证书,并确认当时没有提供任何可疑内容。从那时起,我们自己的团队以及来自 Mozilla 和 MaxCDN 的安全人员一直在努力分析日志,并试图确认此次攻击的影响。
9 月 23 日,RiskIQ 公开发布了他们的报告,该报告在当天在各种媒体和 Twitter 上引起了热议。第二天早上,9 月 24 日,在我们网站上的 DDoS 攻击在频率和规模上不断增加的同时,CVE-2014-6271,也就是我们所知的 ShellShock 漏洞,被发布。在我们继续回应媒体讨论,并向社区传达 9 月 18 日发生的事件时,我们再次成为了受害者,遭遇了一系列更为公开的攻击,这些攻击涉及到反复破坏 jquery.com。
我们对系统的调查尚未找到最初的攻击媒介。但是,我们确实采取了一些措施来提高自身的安全性。例如,我们的一些 WordPress 安装过时了,我们所有的服务器都容易受到最近的 shell 漏洞的攻击,NGINX 也略微过时,以及可能需要进行的其他一些补丁等。基础设施团队迅速行动起来,开始进行这些更改,并开始构建新的、完全修补并安全化的服务器来托管我们的网站。这些更改似乎有效,因为破坏行为停止了,我们也没有发现任何自那以后入侵的证据。
9 月 24 日晚些时候,一场大规模且持续不断的 DDoS 攻击开始了。它似乎会一波一波地来,但直到 9 月 28 日晚才停止。9 月 26 日和 27 日的大部分时间都花在了尝试实施各种产品和解决方案,以便使服务器保持在线状态。我们夜以继日地努力让网站保持在线状态。我们必须赞扬 Corey Frang、Adam Ulvi、基础设施团队的其他成员以及其他人;他们通宵达旦,轮班工作,试图让我们保持在线状态。没有他们的努力,我们就不可能拥有我们所拥有的短暂的正常运行时间。我们采取的一项非常重要的措施是联系了 CloudFlare,他们慷慨地迅速地让我们访问了他们的企业服务,这在缓解这些攻击方面帮助巨大。
展望未来
jQuery 和 jQuery 基金会对 Web 生态系统很重要,这一点从大量的新闻报道和众多关心此事的人和组织所提出的问题中可以明显看出。jQuery 基金会每天都在努力维护和改进我们的项目以及围绕这些项目的基礎设施。这项工作的目标是继续让 Web 开发人员的工作更轻松,并确保他们在标准和浏览器的世界中拥有发言权。但是,这些目标需要大量的资源。无论这些资源是通过访问公司员工或服务的专业知识,还是通过财务支持提供的,我们都无法在没有开源社区和支持成员的支持下继续进行这项重要的工作。
在这段艰难时期,我们被多次问到为什么没有部署 XYZ 服务,或者为什么我们的安全团队没有更密切地关注这类风险。简单来说,我们的预算紧张,资源有限。我们的基础设施团队,以及我们大多数团队都是由志愿者组成,他们无偿地奉献时间来确保一切正常运行。 Heartbleed 和 ShellShock 漏洞是最近的例子,说明当开源项目被视为理所当然并被认为没问题时,事情会变得多么糟糕。最终,一些问题会从缝隙中漏出来,而当人们利用业余时间尽力去做的时候,这些缝隙会变得更大、更频繁。
那么,您能如何提供帮助呢?作为个人,您可以参与我们的其中一个项目。我们始终需要帮助编写代码、设计、维护服务器、处理活动等等。请查看 contribute.jquery.org,或者在我们的 IRC 频道中打个招呼,我们的多个频道列表在 irc.jquery.org 上。作为组织,我们非常乐意了解您是否愿意捐赠任何服务,是否可以抽出几小时每周来为我们提供开发者或其他技术娴熟的专业人员,或者您是否可以提供经济上的帮助。请发送电子邮件至 membership@jquery.org 并告诉我们您能如何提供帮助。
我们不想过多地谈论这些攻击,因为它们一直都在发生,因为在黑客眼中,我们仍然是一个诱人的目标,他们甚至在本文撰写之时仍在试图入侵我们的服务器。在目前与社区分享所有这些信息时,我们试图在解释发生的事情的必要性和公开宣布我们认为已经控制住局面的潜在反弹之间取得平衡。
话虽如此,我们目前确实认为已经控制住局面。为此,我们衷心感谢整个 jQuery 基础设施团队,他们在这些问题上撸起袖子,夜以继日地工作,将我们恢复到良好的状态。我们将继续保持警惕,确保我们为用户社区提供的全部资源的可靠性和安全性。