最近の脆弱性 › CVE-2014-3120

Elastic Elasticsearch のリモートコード実行の脆弱性(CVE-2014-3120)

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

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

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

何が起きた

検索エンジンのソフト Elasticsearch の初期設定では、動的スクリプト(検索の依頼の中に書いた命令文をその場で実行する機能)が有効になっていました。そのため、_search への依頼の source パラメータに命令文を入れると、任意の MVEL の式や Java のコード(攻撃者が好きに選べる命令)を実行される可能性があります。NVD の評価では、離れた場所から、一般利用者程度の権限を持つ攻撃者が悪用できるとされています。実際の攻撃での悪用も確認されています。

攻撃の流れ

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

攻撃の流れ: 1. 攻撃者が外から届く Elasticsearch を探す → 2. _search に命令文入りの依頼を送る → 3. 動的スクリプトとして命令文が実行される → 4. サーバー上で攻撃者のコードが動く1攻撃者が外から届く Elasticsearch を探す2_search に命令文入りの依頼を送る3動的スクリプトとして命令文が実行される4サーバー上で攻撃者のコードが動く攻撃の流れ: 1. 攻撃者が外から届く Elasticsearch を探す → 2. _search に命令文入りの依頼を送る → 3. 動的スクリプトとして命令文が実行される → 4. サーバー上で攻撃者のコードが動く1攻撃者が外から届く Elasticsearch を探す2_search に命令文入りの依頼を送る3動的スクリプトとして命令文が実行される4サーバー上で攻撃者のコードが動く

誰が影響を受ける

Elasticsearch を使っている組織が対象です。NVD の説明では、1.2 より前のバージョンの初期設定が影響を受けます。Elastic の公式ブログでは、1.2.x より前は、Elasticsearch が外部に公開されていると、動的スクリプトを使ってサーバー上で任意のコードを実行される可能性があると説明しています。

何をすればいい

Elastic は 1.2.x で、依頼の中で送られた動的スクリプトを初期設定で無効にしています。1.2 以降に更新されているか確認してください。Elastic の公式ブログでは、Elasticsearch をインターネットに公開せず、ファイアウォールの内側で動かし、9200 番と 9300 番のポートを関係のない機器から遮断すること、root(管理者)ではなく専用のユーザーで動かすことも勧めています。あわせてメーカーの公式の案内を確認してください。

やることチェックリスト

用語メモ

動的スクリプト
依頼の中に書かれた命令文を、ソフトがその場で受け取って実行する機能です。
ファイアウォール
ネットワークの出入り口で、許可していない通信を止める仕組みです。
ポート
1台のコンピューターの中で、通信の行き先を見分けるための番号です。

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

Elasticsearch Remote Code Execution Vulnerability

概要

Elasticsearch enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code.

推奨対応

Apply updates per vendor instructions.

公式情報