CVE-2021-31799: RDoc におけるコマンドインジェクションの脆弱性について

Ruby の標準添付ツールである RDoc にコマンドインジェクションの脆弱性が発見されました。 全ての Ruby ユーザーは、RDoc をこの問題が修正された最新バージョンに更新することが推奨されます。

詳細

以下の脆弱性が報告されています。

RDoc はローカルのファイルを開くために、Kernel#open を使用していました。しかし、もし Ruby プロジェクトに | で始まり tags で終わる名前のファイルが存在していた場合、パイプ文字以降に並べられたコマンドが実行されてしまいます。悪意のある Ruby プロジェクトは、ドキュメントを生成しようとしたユーザに任意のコマンドを実行させることができます。

この問題の影響を受けるバージョンの RDoc を含む Ruby のユーザーは、最新の RDoc に更新してください。

影響を受けるバージョン

  • RDoc 3.11 から 6.3.0 までの全てのリリース

更新方法

以下のコマンドを実行し、RDoc を最新版 (6.3.1 以降) に更新することによって、脆弱性が修正されます。

gem install rdoc

もしbundlerを使っている場合は、Gemfileにgem "rdoc", ">= 6.3.1"を追加してください。

クレジット

この脆弱性情報は、Alexandr Savca 氏によって報告されました。

更新履歴

  • 2021-05-02 18:00:00 (JST) 初版