CVE-2026-27886
Strapiは、クエリサニタイズ処理の欠如により、リレーショナルフィルタリングを介して機密データを漏えいさせる可能性がある
- 公開済み
- 2026/05/14
- 更新済み
- 2026/05/14
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/08/08
プライマリ CVSS
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X低 · 今後 30 日間
- パーセンタイル
- 47.7%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Strapi はオープンソースのヘッドレスCMSです。Strapi バージョン 4.0.0 以降、5.37.0 より前のバージョンでは、リレーショナルフィールドを介してコンテンツをフィルタリングする際に、クエリパラメータが十分にサニタイズされていませんでした。認証されていない攻撃者は、`updatedBy`(またはその他の管理者関連)フィールドを持つ公開されている任意のコンテンツタイプに対して `where` クエリパラメータを使用し、結合された `admin_users` テーブルのプライベートフィールド(`resetPasswordToken` フィールドを含む)に対してブールオラクル攻撃を実行できました。このオラクルを介して管理者のリセットトークンを抽出することで、認証なしでの完全な管理者アカウント乗っ取りが可能になりました。公開されている Content API エンドポイントに `where[updatedBy][resetPasswordToken][$startsWith]=a` のようなフィルタが適用された場合、基盤となるクエリ生成は `admin_users` テーブルに対して `LEFT JOIN` を実行し、結合されたカラムを参照する `WHERE` 句を発行しました。クエリパラメータのサニタイズ層は、呼び出し元に読み取り権限のないリレーショナルターゲットスキーマに横断する演算子チェーンをブロックしなかったため、応答数が管理者テーブルの任意のフィールドに対する1ビットオラクルとして使用可能でした。バージョン 5.37.0 のパッチでは、コントローラとサービスの境界に `strictParam`、`addQueryParams`、`addBodyParams` という3つの新しいプリミティブを介して、明示的なクエリパラメータのサニタイズが導入されています。制限されたリレーショナルターゲットに横断する演算子チェーンは、データベースに到達する前に拒否されるようになりました。
ソース
3- CVE-2026-27886-checkスキャナー
StrapiインスタンスがCVE-2026-27886(認証なしのブール型オラクルによる管理者シークレットの不正流出)に対して脆弱かどうかを検出します。
Strapi CVE-2026-27886. クエリサニタイズの欠如によるリレーショナルフィルタリングを介した機密データの漏洩
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。