CVE-2016-0751 是 Ruby on Rails Action Pack 中的拒绝服务 (DoS) 漏洞。该漏洞源于 MIME 类型缓存的限制不当,允许远程攻击者通过精心构造的 HTTP Accept 头耗尽服务器内存,导致服务不可用。此漏洞影响 Ruby on Rails 3.2.22.1 之前的版本、4.0.x 和 4.1.x 之前的 4.1.14.1、4.2.x 之前的 4.2.5.1 以及 5.x 之前的 5.0.0.beta1.1。已发布修复版本。
攻击者可以利用此漏洞发起拒绝服务攻击,导致 Ruby on Rails 应用程序无法响应用户请求。攻击者通过发送包含大量或恶意构造的 MIME 类型信息的 HTTP Accept 头,触发 Action Pack 的 MIME 类型缓存机制进行过度内存分配。这会导致服务器内存耗尽,最终导致应用程序崩溃或变得非常缓慢,无法正常运行。受影响的应用程序可能无法处理正常的流量,从而影响业务连续性和用户体验。由于 Rails 广泛应用于 Web 应用程序开发,因此该漏洞的潜在影响范围非常广泛。
该漏洞已公开披露,并存在公开的利用代码。目前尚无关于该漏洞被大规模利用的公开报告,但由于 Rails 的广泛使用,该漏洞仍然构成潜在的安全风险。CISA 尚未将其添加到 KEV 目录中。建议尽快应用修复程序。
Organizations running Ruby on Rails applications, particularly those with older versions (prior to 4.2.5.1), are at risk. Shared hosting environments where multiple applications share server resources are particularly vulnerable, as a successful attack on one application can impact others. Legacy applications that haven't been regularly updated are also at increased risk.
• linux / server:
journalctl -u puma -g 'MIME type cache' | grep -i error• generic web:
curl -I 'http://your-rails-app.com' -H 'Accept: a' | grep 'Content-Type:'• ruby: Check application logs for excessive memory allocation related to MIME type processing. Look for errors or warnings indicating memory exhaustion.
discovery
disclosure
漏洞利用状态
EPSS
6.14% (91% 百分位)
CVSS 向量
升级到 Ruby on Rails 4.2.5.1 或更高版本是解决此漏洞的首选方法。如果无法立即升级,可以考虑以下缓解措施:限制 HTTP Accept 头的长度和复杂性,例如通过 Web 应用防火墙 (WAF) 或代理服务器进行过滤。此外,可以调整 Rails 的 MIME 类型缓存配置,减少内存消耗。在升级后,请确认通过检查应用程序的内存使用情况和响应时间来验证修复是否成功。
暂无官方补丁。请查找临时解决方案或持续关注更新。
漏洞分析和关键警报直接发送到您的邮箱。
CVE-2016-0751 是 Ruby on Rails Action Pack 中的拒绝服务漏洞,攻击者可以通过精心构造的 HTTP Accept 头导致内存耗尽,造成拒绝服务。
如果您使用 Ruby on Rails 3.2.22.1 之前的版本、4.0.x 和 4.1.x 之前的 4.1.14.1、4.2.x 之前的 4.2.5.1 以及 5.x 之前的 5.0.0.beta1.1,则可能受到影响。
升级到 Ruby on Rails 4.2.5.1 或更高版本是解决此漏洞的首选方法。
虽然目前尚无大规模利用的公开报告,但由于 Rails 的广泛使用,该漏洞仍然构成潜在的安全风险。
请访问 Ruby on Rails 官方安全公告页面查找相关信息:https://github.com/rails/rails/security/advisories
上传你的 Gemfile.lock 文件,立即知道是否受影响。