RubyのWEBrickに脆弱性、非公開ファイルへのアクセスが可能に

Rubyに標準添付されている汎用サーバフレームワーク「WEBrick」ライブラリに脆弱性が発見された。特に、WindowsでWEBrickを利用した場合には危険度が高い。バージョンアップやパッチの適用で対応可能となっている。

» 2008年03月04日 02時10分 公開
[ITmedia]

 Digital Security Research Groupは、Rubyに標準で添付されている汎用サーバフレームワーク「WEBrick」ライブラリの脆弱性を報告した。脆弱性の存在するバージョンは以下のとおり。

脆弱性の存在するバージョン

1.8系

  • 1.8.4以前のすべてのバージョン
  • 1.8.5-p114以前のすべてのバージョン
  • 1.8.6-p113以前のすべてのバージョン

1.9系

  • 1.9.0-1以前のすべてのバージョン

 Windowsのようにパスの区切り文字としてバックスラッシュを使用できるシステム、もしくは、ファイルアクセス時にパス名の大文字と小文字を区別しないファイルシステム(NTFSやHFSなど)といった環境下で、WEBrick::HTTPServer.newの引数として、:DocumentRootを指定、または、WEBrick::HTTPServlet::FileHandlerサーブレットを利用してファイルを公開する場合、公開を意図していないローカルファイルシステム上のリソースにアクセスが可能となるという。

 攻撃者は、URLにエンコードされたバックスラッシュを含めることで、公開対象のディレクトリ以外のファイルにアクセスを試みたり、FileHandlerの設定項目の:NondisclosureNameで指定されたパターン(デフォルト値は[".ht*", "*~"])にマッチするファイルにアクセスを試みることが予想される。

 特に、WindowsでWEBrickを利用した場合は、ディレクトリトラバーサルにより、プロセスの権限で読み取り可能な任意のファイルに対するアクセスが可能になるという。

 対処法としては、1.8系であれば1.8.5-p115または1.8.6-p114への更新、1.9系であれば、こちらのパッチを適用すればよい。

関連キーワード

Ruby | 脆弱性 | Windows


Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ