安全策略。

Rails 对网络安全非常重视

这意味着包含功能来保护应用程序开发者免受常见的安全问题,例如 CSRF、脚本注入、SQL 注入等。但也意味着关于如何报告漏洞以及在发布补丁时如何接收更新的明确策略。

支持的版本

请参阅维护策略了解支持的版本。


报告漏洞

所有 Rails 中的安全漏洞应通过我们的HackerOne 上的漏洞赏金计划页面报告。这将向负责处理安全问题的核心团队子集发送消息。您的报告将在 24 小时内得到确认,您将在 48 小时内收到更详细的回复,说明处理您的报告的后续步骤。

在您收到报告的初始回复后,安全团队将尽力让您了解修复和完整公告的进展情况。这些更新至少每五天发送一次,实际上更有可能每 24-48 小时发送一次。

如果您在 48 小时内没有收到对您电子邮件的回复,或者在过去五天内没有收到安全团队的回复,您可以采取以下几个步骤

请注意,Rails 核心列表和 Rails Discord 服务器是公共区域。当升级到该地址时,请不要讨论您的问题,只需说您正在尝试联系安全团队的某个人。


披露流程

  1. 收到安全报告并分配给主要处理人员。此人将协调修复和发布流程。确认问题并确定所有受影响版本列表。审核代码以查找任何潜在的类似问题。
  2. 为所有仍在支持的版本准备修复程序。这些修复程序不会提交到公共存储库,而是保存在本地,等待公告。
  3. 在禁运日期,Rails 安全邮件列表将收到公告副本。更改将推送到公共存储库,并将新的 gem 发布到RubyGems。关于发布的公告以及指向咨询的链接将在Rails 博客上发布。

此过程可能需要一些时间,尤其是在需要与其他项目的维护人员协调时。我们将尽一切努力以最及时的方式处理错误,但是重要的是我们遵循上述发布流程,以确保以一致的方式处理披露。


接收披露信息

接收所有安全公告的最佳方式是订阅论坛的 Rails 安全公告版块。该版块流量非常低,并且在禁运解除后立即收到公开通知。

在禁运解除之前,安全团队或最初报告者以外的任何人不会收到通知。对于流量大或重要的网站,我们很抱歉无法对此政策做出例外,因为任何超出协调修复所需的最低限度的披露都可能导致漏洞提前泄露。

如果您有任何改进此政策的建议,请发送电子邮件至[email protected]