【活用ガイド】

JVNDB-2026-027775

livebookにおける相対パストラバーサルの脆弱性

概要

livebook-devのlivebookにおける相対パス・トラバーサル脆弱性により、攻撃者が作成したノートブックが攻撃者制御下の内容を任意のパスにファイルとして書き込むことを可能にします。 .livemd形式のノートブックはfile_entriesメタデータを宣言でき、各エントリは名前を持ちます。ユーザーインターフェース経由でファイルエントリを作成するすべてのパスはLivebook.Notebook.validate_file_entry_name/2でその名前を検証し、拡張子で終わる英数字、ダッシュ、アンダースコア、ドットのみからなる単純なファイル名であることを要求します。しかし、インポートパスでは検証が行われません。lib/livebook/live_markdown/import.ex内のLivebook.LiveMarkdown.Import.file_entry_metadata_to_attrs/1はノートブックのソースから名前をそのまま受け取ります。URLタイプのファイルエントリの場合、lib/livebook/session.ex内のLivebook.Session.file_entry_cache_file/2は、その名前をセッションの一時ディレクトリの下に解決しますが、その解決先がディレクトリ外に出ないかの検証を行いません。また、Livebook.FileSystem.Utils.resolve_unix_like_path/2は「../」などの親ディレクトリ指定を畳み込みますが、ファイルシステムのルートでのみ制限しています。エントリの内容が要求されてかつキャッシュが存在しない場合、LivebookはエントリのURLを取得してその応答ボディを解決済みパスへ書き込み、必要に応じて親ディレクトリを作成します。したがって、攻撃者は書き込み先と内容を完全に制御でき、Livebookプロセスが書き込み可能な任意の場所にファイルを作成可能です。同様の検証不備はLivebook.Session.to_attachment_file_entry/2にも存在します。被害者が攻撃者が差し出したノートブックを開き、エントリの取得を引き起こすと、その書き込みは被害者自身の認証済みセッション内で実行されます。攻撃者は対象インスタンスのアカウントを持つ必要はありません。URLタイプのエントリはインポート時にノートブックスタンプ隔離下に置かれず、警告も表示されません。この脆弱性はlivebookの0.11.0から0.18.7未満および0.19.0から0.19.9未満のバージョンに影響します。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 8.1 (重要) [NVD値]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
影響を受けるシステム


livebook
  • livebook 0.11.0 以上 0.18.7 未満
  • livebook 0.19.0 以上 0.19.9 未満

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

Erlang Ecosystem Foundation GitHub Open Source Vulnerabilities
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 相対パストラバーサル(CWE-23) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-66881
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-66881
  2. 関連文書 : Validate notebook file entry names on import to prevent path traversa…  livebook-dev/livebook@50f8698  GitHub
  3. 関連文書 : Validate notebook file entry names on import to prevent path traversa…  livebook-dev/livebook@acf4cb8  GitHub
  4. 関連文書 : Validate notebook file entry names on import to prevent path traversa…  livebook-dev/livebook@1443dd2  GitHub
更新履歴

  • [2026年08月12日]
      掲載