つみかさね

CVE-2026-32701

High(7.5)

CVE-2026-32701 — Qwik FormData パース に おける 型 混同 と プロトタイプ 汚染

公開日: 2026-03-24データソース: NVD, GitHub Advisory

影響を受けるソフトウェア

製品ベンダー影響バージョン
QwikQwikDev< 1.19.2
CVEQwikプロトタイプ汚染型混同CWE-843CWE-1321

概要

Qwik は 高速 な Web アプリケーション 開発 を 目指す JavaScript フレームワーク です。バージョン 1.19.2 より 前 の Qwik に おいて、FormData の パース 処理 に 型 混同(CWE-843)および プロトタイプ 汚染(CWE-1321)に 関連 する 脆弱性 が 存在 します。この 脆弱性 の CVSS スコア は 7.5 で あり、High と 評価 されて います。

問題 の 原因 は、FormData の フィールド 名 に ドット 記法(例: user.nameitems.0.value)が 使用 された 場合 の パース ロジック に あります。Qwik は ドット で 区切られた キー を ネスト された オブジェクト や 配列 に 変換 しますが、配列 インデックス と オブジェクト プロパティ キー が 同じ パス に 対して 混在 する ケース の 処理 が 不適切 です。

具体的 に は、あるパス に 対して まず 配列 として 推論 された 値 に、後 から オブジェクト プロパティ として の キー が 適用 される と、ユーザー が 制御 する プロパティ が 配列 と して 期待 されて いる 値 の 上 に 書き込まれます。この 挙動 は プロトタイプ 汚染 に 類似 した 影響 を もたらし、アプリケーション の 内部 状態 を 予期 しない 形 で 変更 する こと が 可能 です。

この 脆弱性 の 影響 は アプリケーション の ロジック に 依存 しますが、フォーム データ の パース 結果 が 認可 チェック、データ フィルタリング、ビジネス ロジック の 判定 に 使用 される 場合、攻撃者 は 意図 しない データ を 注入 したり、条件 分岐 を 操作 したり する こと が 可能 です。サーバーサイド の フォーム 処理 で この パーサー が 使用 される すべて の Qwik アプリケーション が 潜在的 な 影響 を 受けます。

Qwik は サーバーサイド レンダリング(SSR)を 基本 と する フレームワーク で ある ため、この 脆弱性 は サーバー プロセス の コンテキスト で 悪用 される 可能性 が あり、影響 は クライアントサイド に 留まりません。フォーム を 持つ すべて の ページ が 攻撃 対象 と なり得ます。

CVSS ベクトル

項目
CVSS スコア7.5
深刻度High
CWECWE-843(型 混同)、CWE-1321(プロトタイプ 汚染)
攻撃元ネットワーク
攻撃 条件

影響 を 受ける ソフトウェア

製品影響 バージョン修正 バージョン
Qwik1.19.2 より 前1.19.2

修正 バージョン と 回避策

Qwik バージョン 1.19.2 に アップデート する こと で、FormData の パース 処理 に おける 配列 と オブジェクト の 型 推論 が 修正 され、混在 した キー パス に よる 型 混同 が 防止 されます。すぐ に アップデート できない 場合 は、フォーム データ の パース 結果 を 使用 する 前 に、期待 する データ 型 の バリデーション を 独自 に 実装 する こと が 推奨 されます。特に、配列 で ある こと を 期待 する 値 に 対して Array.isArray() を 使った 型 チェック を 追加 する こと で、型 混同 の 影響 を 軽減 できます。また、フォーム フィールド 名 に ドット 記法 を 使用 しない 設計 に 変更 する こと も 有効 な 回避策 です。

関連 リンク


データソース: NVD (NIST), GitHub Advisory Database AI解説 は Claude API に より 自動生成 されています。正確性 に ついては 原文 を ご確認 ください。

Xでシェアはてブ
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database, JVN iPedia (IPA/JPCERT/CC)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。