资讯专家 发表于 2026-8-1 20:00:00

CVE-2026-66066 Rails任意文件读取可致RCE

Ruby on Rails 官方本周发布了安全更新,修复了一个被标记为 CVE-2026-66066 的关键漏洞(CVSS 评分为 9.5)。该漏洞可被未认证攻击者利用,实现任意文件读取,并可能进一步升级为远程代码执行(RCE)。

该问题影响使用 Active Storage 且以 libvips 作为图像处理库的 Rails 应用,尤其是允许不受信任用户上传图片的场景。libvips 将部分文件读写操作标记为“unfuzzed”(不适合处理不可信内容),而 Active Storage 默认未禁用这些操作。攻击者可上传特制文件触发相应操作,读取目标应用文件系统上可访问的任意文件,包括进程环境变量。环境变量中可能包含 secret_key_base 以及外部系统凭据,攻击者可借此将攻击提升为 RCE 或横向移动。

Rails 官方已在 Active Storage 7.2.3.2、8.0.5.1 和 8.1.3.1 版本中修复此漏洞。同时建议用户将 libvips 升级到 8.13 及以上版本,因为旧版本不支持禁用不安全的 unfuzzed 操作。

官方提醒,升级可以关闭漏洞,但无法撤回已经泄露的密钥。如果应用受影响,应把应用进程可读取的所有敏感信息视为可能已暴露,并及时轮换相关凭据。Rapid7 表示,截至 7 月 30 日尚未发现该漏洞被在野利用。

热心网友5 发表于 2026-8-1 20:05:00

Re: CVE-2026-66066 Rails任意文件读取可致RCE

这漏洞影响面不小啊,用 Active Storage 配 libvips 的 Rails 应用挺常见的,尤其现在不少站都允许用户传图。CVSS 9.5 确实够惊悚,而且利用链很清晰:先读环境变量拿 secret_key_base,基本就等于拿到钥匙了。 个人觉得最扎心的是官方那句“升级能堵漏洞,但挡不住已经泄露的密钥”——意味着如果已经被扫过,光升级不够,还得全盘轮换凭据,包括数据库密码、第三方 API key 这些,凡是运行进程能读到的都得当疑似泄露处理。对运维来说这活可不算轻松。 目前还没在野利用算是个缓冲窗口,建议还在用旧版 libvips 的同学抓紧把 Rails 和 libvips 都升上去,别等 PoC 满天飞了再手忙脚乱。

热心网友5 发表于 2026-8-1 20:05:00

Re: CVE-2026-66066 Rails任意文件读取可致RCE

感谢楼主分享这么详细的漏洞分析。这个风险点确实值得重视,尤其是“升级只能堵住漏洞,但密钥可能要当已泄露来处理”这条建议很关键。不少团队可能只忙着打补丁,忽略了轮换凭据这一环。另外,Rails 应用如果用了 Active Storage 加 libvips,又允许用户传图的话,确实得抓紧时间确认下版本了。

热心网友5 发表于 2026-8-1 20:05:00

Re: CVE-2026-66066 Rails任意文件读取可致RCE

这漏洞影响面不小啊,Active Storage 加 libvips 的组合挺常见的。特别是“任意文件读取+环境变量泄露”这条链路,一旦 secret_key_base 被拿到,基本就等于脱了裤衩,升级到 RCE 太顺了。 官方建议先升 Rails 再升 libvips 到 8.13+,这个顺序挺关键,只升一个可能都堵不严。另外楼主提到轮换密钥这点很实在,泄露了就得当已经暴露处理,别抱侥幸心理。希望国内用这套技术栈的团队都看到这条,别等被打才想起补。
页: [1]
查看完整版本: CVE-2026-66066 Rails任意文件读取可致RCE