結論:Marimoを0.20.4以上にアップデートしてください
データサイエンス向けPythonノートブック「Marimo」に、CVSS 9.3(Critical)の認証なしリモートコード実行(RCE)脆弱性 CVE-2026-39987が発見されました。この脆弱性は公開からわずか10時間で実環境での悪用が確認されています。
Marimoをサーバーモードで公開している環境、特に社内のデータ分析基盤やMLパイプラインで利用している場合は即時対応が必要です。
CVE-2026-39987 の概要
| 項目 | 内容 |
|---|---|
| CVE番号 | CVE-2026-39987 |
| CVSS v3.1 スコア | 9.3(Critical) |
| 脆弱性の種類 | リモートコード実行(RCE) |
| 攻撃の前提条件 | 認証不要・リモートから実行可能 |
| 影響を受けるバージョン | Marimo 0.20.3 以下 |
| 修正バージョン | Marimo 0.20.4 |
| 悪用状況 | 脆弱性公開から10時間で悪用開始 |
攻撃の仕組み
CVE-2026-39987は、MarimoのWebサーバーコンポーネントにおける入力値のサニタイズ不備に起因します。Marimoはノートブックの実行結果をWebブラウザ上で表示するために独自のWebサーバーを起動しますが、このサーバーが受け付けるリクエストの処理に脆弱性がありました。
攻撃者は特別に細工したHTTPリクエストを送信するだけで、Marimoが稼働するサーバー上で任意のPythonコードを実行できます。Marimoはデータ分析に使用されるツールであるため、実行環境には通常、以下のような機密情報やリソースへのアクセス権限があります。
- データベースへの接続情報(クレデンシャル)
- 機械学習モデルと学習データ
- API キー(クラウドサービス、外部データソース)
- 社内ネットワーク上の他システムへのアクセス
「公開10時間で悪用」が示す脅威の変化
CVE-2026-39987の最大の教訓は、脆弱性情報が公開されてから攻撃が開始されるまでの時間が極めて短いという現実です。
脆弱性公開から悪用開始までの時間の推移
| 年 | 代表的な事例 | 公開→悪用の時間 |
|---|---|---|
| 2020年 | SolarWinds(サプライチェーン) | 数ヶ月(ゼロデイとして潜伏) |
| 2021年 | Log4Shell(CVE-2021-44228) | 約9時間 |
| 2023年 | MOVEit Transfer(CVE-2023-34362) | 約24時間 |
| 2024年 | XZ Utils(CVE-2024-3094) | 発見前に長期潜伏 |
| 2026年 | Marimo(CVE-2026-39987) | 約10時間 |
この短縮が企業に意味すること
- 「来週の定例パッチ適用で対応する」では間に合わない — 10時間は、日本の営業時間に換算するとほぼ1営業日です。朝の脆弱性公開を見逃せば、退社時にはすでに攻撃を受けている可能性があります。
- 自動化された攻撃ツールの普及 — 攻撃者はPoCコード(概念実証コード)が公開されると即座にスキャナーに組み込み、インターネット全体を自動スキャンします。手作業では到底追いつけない速度です。
- セキュリティ情報の収集体制が必須 — 脆弱性情報を「気づいたら対応する」運用では致命的な遅れが生じます。JPCERT/CC、NVD、ベンダーのセキュリティアドバイザリを常時監視する体制が求められます。
データサイエンスツールのセキュリティリスク
Marimoの脆弱性は氷山の一角です。データサイエンス・機械学習で使用されるツール群は、セキュリティの観点で見落とされがちな領域です。
なぜデータサイエンスツールが狙われるのか
| リスク要因 | 詳細 |
|---|---|
| 認証なしでの公開 | JupyterやMarimoを「社内だから」と認証なしで公開しているケースが多い |
| コード実行が前提の設計 | ノートブックの本質はコード実行環境であり、RCE脆弱性のインパクトが大きい |
| 高権限での実行 | データベース接続情報、APIキー、クラウドクレデンシャルにアクセス可能 |
| セキュリティ意識の低さ | データサイエンティストはセキュリティ専門家ではなく、ツールの脆弱性に対する意識が低い傾向 |
| パッチ適用の遅れ | 分析環境は「動いているものを触りたくない」心理でアップデートが後回しにされがち |
主要ツールのセキュリティ上の注意点
| ツール | 主なリスク | 対策 |
|---|---|---|
| Jupyter Notebook/Lab | 認証なし公開、カーネル経由のRCE | トークン認証必須化、JupyterHubによるアクセス管理 |
| Marimo | CVE-2026-39987(認証なしRCE) | 0.20.4以上にアップデート、認証設定の有効化 |
| Streamlit | SSRF、情報漏洩(デバッグモード) | 本番環境でのデバッグモード無効化、アクセス制限 |
| MLflow | 認証なしAPI、モデルの改ざん | 認証の有効化、ネットワーク分離 |
| Airflow | デフォルトパスワード、DAG経由のRCE | デフォルト認証情報の変更、RBAC設定 |
【影響確認チェックリスト】自社は大丈夫か?
- [ ] 社内でMarimoを使用しているチーム・個人を把握しているか
- [ ] Marimoのバージョンは0.20.4以上に更新されているか
- [ ] Marimoサーバーが社外ネットワーク(インターネット)からアクセス可能になっていないか
- [ ] Marimoに認証設定が有効になっているか
- [ ] Jupyter Notebook等の他のデータサイエンスツールも同様に管理されているか
- [ ] データ分析環境が本番データベースに直接接続していないか
「データ分析環境のセキュリティ、盲点になっていませんか?」
Marimoに限らず、Jupyter・MLflow・Airflow等のデータサイエンス基盤のセキュリティ診断を実施します。
※ 営業電話はしません | オンライン対応可 | 相談だけでもOK
対策:今すぐ実施すべき3ステップ
ステップ1:Marimoを0.20.4以上にアップデートする
アップデート後、Marimoサーバーを再起動してください。仮想環境(venv、conda)を使用している場合は、各環境ごとにアップデートが必要です。
Docker環境の場合: コンテナイメージのベースにMarimoが含まれている場合、イメージの再ビルドが必要です。`requirements.txt` や `Dockerfile` のバージョン指定を確認してください。
ステップ2:ネットワークアクセスを制限する
Marimoサーバーへのアクセスを最小限に制限してください。
- インターネットからのアクセスを遮断 — ファイアウォールでMarimoのポート(デフォルト: 2718)への外部アクセスをブロック
- 社内ネットワークでもアクセス制限 — 必要なユーザーのIPアドレスのみ許可
- VPN経由のアクセスに限定 — リモートワーク時のアクセスはVPN必須
ステップ3:認証設定を有効にする
Marimoの認証機能を有効にし、パスワードなしでノートブックにアクセスできない状態にしてください。合わせて以下も実施します。
- Marimoが使用するデータベース接続情報の変更(侵害されている可能性を考慮)
- APIキーのローテーション
- Marimoサーバーのアクセスログで不審なリクエストがないか確認
よくある質問(FAQ)
Q1. Marimoをローカル(localhost)でのみ使用している場合も影響がありますか?
Marimoをローカルホスト(127.0.0.1)でのみ起動し、外部からのアクセスを受け付けない設定であれば、リモートからの直接攻撃は受けません。ただし、SSRF(Server-Side Request Forgery)やブラウザ経由の攻撃で間接的に脆弱性が悪用される可能性は残ります。バージョンのアップデートは実施してください。
Q2. Jupyter Notebookにも同じ脆弱性がありますか?
CVE-2026-39987はMarimoに固有の脆弱性であり、Jupyter Notebookには直接影響しません。ただし、Jupyter Notebookにも過去にRCE脆弱性が発見されています。Jupyter環境も最新版に更新し、認証設定を有効にすることを推奨します。
Q3. 社内のデータサイエンティストが個人PCにMarimoをインストールしている場合は?
IT部門が把握していない「シャドーIT」としてMarimoが使用されているケースは要注意です。社内にデータサイエンスチームがある場合は、使用しているツールとバージョンの棚卸しを実施してください。
Q4. パッチ適用が間に合わない場合の暫定対策はありますか?
最低限、以下の暫定対策を実施してください。(1)Marimoサーバーへのネットワークアクセスを遮断する。(2)Marimoが稼働するサーバーのファイアウォールで該当ポートをブロックする。(3)可能であればMarimoサービスを一時停止する。業務影響がある場合でも、CVSS 9.3のRCE脆弱性が悪用されるリスクと比較すれば、一時停止が合理的な判断です。
関連記事
参考情報
- Marimo GitHub Security Advisory「CVE-2026-39987 — Unauthenticated Remote Code Execution」
- NIST National Vulnerability Database「CVE-2026-39987」
- GreyNoise Intelligence「Mass Exploitation of Marimo CVE-2026-39987 Detected Within 10 Hours」
データ分析基盤のセキュリティ、見落としていませんか?
GXO株式会社では、中小企業のIT基盤セキュリティを支援しています。
- データサイエンス環境のセキュリティ診断 — Jupyter/Marimo/MLflow等の設定不備・脆弱性の可視化
- ネットワーク分離設計 — 分析環境と本番環境の適切な分離
- 脆弱性管理体制の構築 — 公開10時間で悪用される時代に対応するパッチ管理プロセス
まずは社内のデータサイエンスツールの棚卸しから始めませんか。
お問い合わせはこちら → gxo.co.jp/contact
GXOの導入事例はこちらでご確認いただけます。