最近の脆弱性 › CVE-2016-0752

Rails Ruby on Rails のパストラバーサルの脆弱性(CVE-2016-0752)

この解説はAIを使用して作成しています。誤りを含む可能性があり、内容は保証できません。必ず公式情報をご確認ください。

基本情報(データから表示)

CVE番号CVE-2016-0752
製品Rails Ruby on Rails
深刻度(CVSS)7.5 重要CVSS v3.1
NVD による評価
詳細(ベクター)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
KEVへの追加日2022-03-25
米国政府機関の対応期限2022-04-15
ランサムウェアでの悪用不明(確認されていない)
弱点の種類(CWE)CWE-22

何が起きた

Ruby on Rails の Action View(画面を組み立てる部品)に、ディレクトリトラバーサル(.. を使ってフォルダの外にあるファイルに手を伸ばす攻撃)の弱点が見つかりました。アプリが利用者からの入力をそのまま render メソッドに渡していると、攻撃者がサーバー上の任意の(攻撃者が好きに選べる)ファイルを読めてしまいます。NVD の評価では、ネットワーク経由で、ログインしていない攻撃者が、利用者の操作なしに悪用できるとされています。実際に悪用が確認されています。

攻撃の流れ

データをもとに、AIを使用して作成した図です。実際の攻撃は、これと異なる場合があります。

攻撃の流れ: 1. 攻撃者が .. を含む値をアプリに送る → 2. アプリがその値をそのまま render に渡す → 3. フォルダの外にあるファイルが読み込まれる → 4. ファイルの中身が攻撃者に見えてしまう1攻撃者が .. を含む値をアプリに送る2アプリがその値をそのまま render に渡す3フォルダの外にあるファイルが読み込まれる4ファイルの中身が攻撃者に見えてしまう攻撃の流れ: 1. 攻撃者が .. を含む値をアプリに送る → 2. アプリがその値をそのまま render に渡す → 3. フォルダの外にあるファイルが読み込まれる → 4. ファイルの中身が攻撃者に見えてしまう1攻撃者が .. を含む値をアプリに送る2アプリがその値をそのまま render に渡す3フォルダの外にあるファイルが読み込まれる4ファイルの中身が攻撃者に見えてしまう

誰が影響を受ける

Ruby on Rails の 3.2.22.1 より前、4.0.x と 4.1.x の 4.1.14.1 より前、4.2.x の 4.2.5.1 より前、5.x の 5.0.0.beta1.1 より前を使い、利用者の入力をそのまま render に渡しているウェブアプリが対象です。

何をすればいい

Rails の案内では、修正版は 3.2.22.1、4.1.14.1、4.2.5.1、5.0.0.beta1.1 です。使っている系列に合わせて、これらのバージョン以降に更新されているか確認します。すぐに更新できない場合の回避策として、利用者の入力をそのまま render に渡さず、先に値を確かめてから使うよう案内されています。あわせて、メーカーの公式の案内を確認してください。

やることチェックリスト

用語メモ

ディレクトリトラバーサル
ファイルの場所の指定に .. などを入れて、本来見せない場所のファイルを読み出す攻撃です。
Action View
Ruby on Rails の中で、利用者に見せる画面を組み立てる部品です。
render
Ruby on Rails で、どの画面のひな形を使って表示するかを決める命令です。

元データ(英語・CISA KEV より)

Ruby on Rails Directory Traversal Vulnerability

概要

Directory traversal vulnerability in Action View in Ruby on Rails allows remote attackers to read arbitrary files.

推奨対応

Apply updates per vendor instructions.

公式情報