由 aycabta 于 2021 年 5 月 2 日发布
在 Ruby 中捆绑的 RDoc 中存在一个命令注入漏洞。建议所有 Ruby 用户将 RDoc 更新到修复此问题的最新版本。
详细信息
已报告以下漏洞。
RDoc 过去使用 Kernel#open
打开本地文件。如果一个 Ruby 项目有一个文件名以 |
开头,以 tags
结尾的文件,则会执行管道符后面的命令。恶意 Ruby 项目可能会利用它对尝试运行 rdoc
命令的用户执行任意命令。
受此问题影响的 RDoc 版本的 Ruby 用户应更新到最新版本的 RDoc。
受影响的版本
- RDoc 的所有版本,从 3.11 到 6.3.0
- Ruby 3.0.2(捆绑 RDoc 6.3.1)、Ruby 2.7.4(捆绑 RDoc 6.2.1.1)和 Ruby 2.6.8(捆绑 RDoc 6.1.2.1)包含修复程序,不受影响
如何更新
运行以下命令将 RDoc 更新到最新版本(6.3.1 或更高版本)以修复该漏洞。
gem install rdoc
如果您正在使用 bundler,请将 gem "rdoc", ">= 6.3.1"
添加到您的 Gemfile
中。
鸣谢
感谢 Alexandr Savca 报告此问题。
历史记录
- 最初发布于 2021-05-02 09:00:00 UTC
- 于 2021-07-16 00:02:00 UTC 添加了关于 Ruby 3.0.2、Ruby 2.7.4 和 Ruby 2.6.8 的提及