概要
Alerta は オープンソース の 監視 ツール です。9.1.0 より 前 の バージョン で、クエリ 文字列 検索 API(q= パラメータ)に SQL インジェクション 脆弱性 が 存在 します。
Postgres クエリ パーサー が f-string を 使って ユーザー 提供 の 検索 語 を SQL 文字列 に 直接 展開 して WHERE 句 を 構築 して おり、認証 なし で データベース の 読み取り や 操作 が 可能 です。具体的 に は、q= パラメータ に 任意 の SQL フラグメント を 注入 する こと で、Alerta の アラート データ だけ で なく、同一 データベース 上 の 他 テーブル の 情報 も 取得 される 恐れ が あります。
CVSS ベクトル
| 項目 | 値 |
|---|---|
| CVSS スコア | 9.8(Critical) |
| 攻撃 元区分 | ネットワーク |
| 攻撃 条件 の 複雑さ | 低 |
| 必要 な 特権 | 不要 |
| ユーザー 関与 | 不要 |
| CWE | CWE-89(SQL インジェクション) |
影響 を 受ける ソフトウェア
| 製品 | ベンダー | 影響 バージョン |
|---|---|---|
| Alerta | alerta | 9.1.0 より 前 |
影響 の 範囲
Alerta は アラート の 重複 排除、相関 付け、可視化 を 行う 監視 ツール で、Prometheus や Zabbix など の 監視 システム と 連携 して 使用 されます。q= パラメータ は 検索 機能 の コア 部分 で あり、Postgres バックエンド を 使用 して いる 全 インスタンス が 影響 を 受け ます。f-string に よる SQL 構築 は パラメータ化 されて いない ため、認証 なし で データベース の 読み取り や 改ざん が 可能 な 深刻 な 脆弱性 です。Alerta を パブリック ネットワーク に 公開 して いる 場合 は 早急 な 対応 が 必要 です。内部 ネットワーク のみ で 利用 して いる 場合 でも、SSRF 等 と 組み合わせた 攻撃 に 注意 が 必要 です。
修正 バージョン と 回避策
- 修正: Alerta 9.1.0 へ アップデート
- パラメータ化 クエリ に 修正 されました
- アップデート が 困難 な 場合 は、検索 API への アクセス を 制限 する こと を 検討 してください
- WAF で SQL インジェクション パターン を ブロック する こと も 一時的 な 緩和策 に なります
関連 リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
