Metabaseに複数の脆弱性、0.64.3.4以降の修正版が公開
BIツールのMetabaseが、セキュリティ強化を目的とした64系の更新で、入力検証・権限確認・情報露出まわりの脆弱性をまとめて修正しました。Metabaseを自社で運用している組織が対象で、修正版への更新と、更新後の設定の見直しが必要です。
急ぎ度: 早めに
重要度はcriticalで修正版も出ていますが、実際に悪用された情報は示されていないため、至急ではなく早めの更新が妥当です。
関係があるか
Metabaseを自社のサーバーやコンテナーで動かしているセルフホストの組織が対象です。公開リンクや埋め込み機能を外部に出している環境、データウェアハウスの接続情報を預けている環境は、とくに優先して確認してください。
| 製品 | 影響を受ける版 | 直った版 |
|---|---|---|
| Metabase Open Source(セルフホスト) | 0.64.3.4より前の版 | 0.64.3.4以降 |
| Metabase Pro・Enterprise(セルフホスト) | 1.64.3.4より前の版 | 1.64.3.4以降 |
確かめ方
- 1Metabaseの画面で、右上の設定メニューにある「About Metabase」を開き、版を確認します。
- 2Dockerで動かしている場合は、使っているイメージのタグを確認します。
- 3版が0.64.3.4(Pro・Enterpriseは1.64.3.4)より前なら、更新の対象です。
何が起きたか
Metabase 64は、セキュリティの強化に絞ったリリースです。複数の脆弱性修正と攻撃面の縮小をまとめて入れており、Long Term Support(LTS)の版にもなっています。個々の脆弱性の説明ではなく、修正の分類をまとめた告知なので、中身は「どこが塞がれたか」で読むことになります。
修正の中心は、APIとクエリのコンパイルに対する入力検証の追加です。フィルター、日付の単位、正規表現、型変換といった値を検証し、参照されるモデル・メトリクス・質問に対する権限確認も強めました。
情報の出しすぎを減らす修正もあります。公開リンクや埋め込みのレスポンスに含まれるメタデータを減らし、ごみ箱内のコンテンツ、テナント固有のエンドポイント、サブスクリプションの宛先に対する確認も厳しくしました。
アカウントまわりでは、ユーザーを無効化・再有効化したときのログインセッションの扱いを改善しました。シリアライゼーションのエクスポートからは、データベースの接続情報が出力されないようになっています。
新しい制御も加わりました。ウェアハウス接続、Webhook、地図タイル、AIプロバイダーへの外向き通信に対するネットワークポリシーの設定です。謝辞には22の個人・組織が並び、今回とそれ以前の版への報告が対象になっています。
攻撃の流れ
-
1
到達
Metabaseの画面やAPI、公開リンク、埋め込みなど、インスタンスの入口に接続します。
-
2
確認の不足
入力の検証や権限の確認が足りない箇所を通ります。
-
3
権限外の参照
本来は見えないメタデータや、アクセス権のない質問・モデルに触れます。
-
4
接続情報の露出
エクスポートなどを通じて、データベースの接続情報が外に出る場合があります。
どう悪用されるか
告知は修正項目を分類して示しており、項目ごとの悪用条件は個別には書かれていません。そのため、認証が要るかどうかは項目ごとに異なると考えるのが安全です。公開リンクや埋め込みの応答を絞る修正が含まれているので、これらを外部に出している環境では、ログインしていない相手との接点があることになります。
想定される被害は、メタデータの露出、権限のないモデルやメトリクスへの参照、無効化したはずのユーザーのセッションが残ること、エクスポートにデータベースの接続情報が含まれることなどです。BIツールは社内の主要なデータソースにつながっているため、影響はMetabaseの外のデータベースにも及びえます。
今すぐやること
-
1
運用形態と版を洗い出す
自社でMetabaseをセルフホストしているインスタンスを、本番・検証・個人利用も含めてすべて挙げ、版を確認します。
docker image ls metabase/metabase -
2
修正版に更新する
更新前にアプリケーションのデータベースのバックアップを取り、Metabaseの更新手順に沿ってOpen Sourceは0.64.3.4以降、Pro・Enterpriseは1.64.3.4以降に更新します。
-
3
過去のエクスポートの保管先を確認する
今回の修正でシリアライゼーションのエクスポートから接続情報が外されました。更新前に作ったエクスポートが共有フォルダーやリポジトリに残っていないか確認し、残っていれば接続情報の変更を検討します。
-
4
更新後に設定を見直す
外向き通信のネットワークポリシー、セッションの署名・暗号化キー、Pro・Enterpriseの二要素認証の必須化を検討します。あわせて、Metabaseの自社ホスティング向けセキュリティのチェックリストを一通り確認します。
すぐ更新できないとき
すぐに更新できない場合は、暫定策として公開リンクと埋め込みを使っていなければ無効にし、インスタンスへの接続を社内ネットワークやVPNからに絞ります。これらで脆弱性のすべてを防げるわけではないので、あくまで更新までのつなぎです。
背景
Metabaseは、社内のデータベースやデータウェアハウスにつないでグラフやダッシュボードを作るBIツールです。そのため、データそのものに加えて、接続情報、利用者のセッション、メール配信の宛先といった情報を一か所で預かる構成になりがちです。今回の修正にエクスポートからの接続情報の除外や、保存済みの機密値の暗号化が含まれているのも、この性質によるものです。
Metabaseでは2023年にも、認証前に悪用できる重大な脆弱性が修正されたことがあります。ただ、今回の64系の告知は、単一の穴をふさぐ内容ではありません。入力検証、権限確認、公開リンクからの情報露出、外向き通信の制御を同時に見直した構成です。
よくある質問
Q.二要素認証や暗号化キーの設定は、どのエディションで使えますか。
まだ分かっていないこと
- 個々の脆弱性に対するCVE番号やCVSSは示されておらず、項目ごとの悪用条件や、実際の悪用の有無も公表されていません。
- 影響を受ける最も古い版と、Metabase Cloudでの対応状況は書かれていません。詳細はMetabaseのリリース告知と変更履歴、GitHubのアドバイザリで確認してください。
この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| other | metabase |
>= x.64.0, < x.64.3.4 |
x.64.3.4 |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
Metabase 64 is our security hardening release, with a batch of security fixes, a reduced attack surface, and more control over your instance. It is also a Long Term Support (LTS) release.
The release announcement and changelog describe improvements including:
- Additional input validation for APIs and query compilation, covering values such as filters, date units, regular expressions and type casts. It strengthens permission checks for referenced models, metrics and questions.
- Reduced metadata exposure in public and embedded responses, plus tighter checks around trashed content and tenant-specific endpoints and subscription recipients.
- Improvements to login-session handling when users are deactivated or reactivated, plus removal of database secrets from serialization exports. Supported email-domain restrictions receive additional checks when sending alerts and subscriptions, where configured.
- Controls for outbound connections, with network-policy settings for supported warehouse connections, webhooks, map tiles and AI providers. Pro and Enterprise admins can require two-factor authentication for password and LDAP sign-ins, with a grace period.
- Optional session-signing and encryption keys are available across editions. When configured, they help protect application sessions and supported sensitive values in the application database, including credentials and notification-recipie…
出典: GitHub Repository Security Advisories (Game のスタック) GitHub Advisory OSV
参照URL
- GITHUB_REPO_ADVISORY metabase/metabase