FileUtilsのsymlink race attack脆弱性について
Posted by Shugo Maeda on 18 Feb 2011
symlink race condition 脆弱性がFileUtils.remove_entry_secureに発見されました。この脆弱性によって、ローカルユーザが任意のファイルやディレクトリを削除可能です。
影響のあるバージョン
- Ruby 1.8.6 patchlevel 420 以前のバージョン
- Ruby 1.8.7 patchlevel 330 以前のバージョン
- Ruby 1.8の開発バージョン (1.8.8dev)
- Ruby 1.9.1 patchlevel 430 以前のバージョン
- Ruby 1.9.2 patchlevel 136 以前のバージョン
- Ruby 1.9の開発バージョン (1.9.3dev)
解決策
この脆弱性の影響を受けるすべてのユーザは、修正されたバージョンにアップグレードしてください。
ただし、削除対象の上位ディレクトリのうちのどれかが信頼されないユーザに所有されている場合は、symlink race attackを回避できない点に注意してください。 安全に処理を行うためには、すべての親ディレクトリが他の信頼されないユーザによって移動できないことを確認する必要があります。 例えば、親ディレクトリが信頼できないユーザに所有されている場合は問題があります。また、sticky bitが設定されている場合を除き、親ディレクトリがworld writableである場合も問題です。
更新情報
- 本脆弱性の修正を含む1.8.7-334がリリースされました。 1.8.7をお使いの方にはアップグレードを推奨します。
- 本脆弱性の修正を含む1.9.1-p431がリリースされました。 1.9.1をお使いの方にはアップグレードを推奨します。
- 本脆弱性の修正を含む1.9.2-p180がリリースされました。 1.9.2をお使いの方にはアップグレードを推奨します。
- 「影響のあるバージョン」の「Ruby 1.9.1 patchlevel 136 以前のバージョン」を「Ruby 1.9.2 patchlevel 136 以前のバージョン」に修正しました。
最近のニュース
Ruby 4.0.0 リリース
Ruby 4.0.0 が公開されました。 Ruby 4.0 には “Ruby Box”、”ZJIT” ほか多数の改善が含まれています。
Posted by naruse on 25 Dec 2025
サイトのアイデンティティの再設計
サイトの包括的なデザインのアップデートを発表できることを嬉しく思います。今回の更新ではTaeko Akatsukaさんにデザインを担当していただきました。
Posted by Hiroshi SHIBATA on 22 Dec 2025
Ruby 4.0.0 preview3 リリース
Ruby 4.0.0-preview3 が公開されました。
Posted by naruse on 18 Dec 2025
Ruby 4.0.0 preview2 リリース
Ruby 4.0.0-preview2 が公開されました。Ruby 4.0では、Unicodeバージョンの17.0.0へのアップデートなど様々な改善が行われています。
Posted by naruse on 17 Nov 2025