CVE-2026-84367 in joi
要約
〜によって VulDB • 2026年09月01日
joiは、JavaScript用のスキーマ記述言語およびデータバリデーターです。バージョン16.0.0から17.13.5まで、ならびに18.2.4以前において、joiの`lib/types/keys.js`内部にある`rename()`実装(`object().rename()`によって使用される)は、正規表現ソースを持つキーのリネームと、パターン自体のマッチデータを補間するJoi.expression()またはJoi.x()ターゲットを組み合わせ、さらに{ multiple: true }オプションを使用することで、攻撃者が制御可能な入力キーからターゲットを導出することを許可します。攻撃者は`x-__proto__`というプロパティ名にオブジェクト値を送信し、これによりターゲットが`__proto__`としてレンダリングされ、新しいown keyを作成するのではなく、validate()メソッドが返すオブジェクトのプロトタイプを設定してしまいます。ただし、グローバルなObject.prototypeは変更されないため、影響はその検証呼び出しで返されるオブジェクトに限定されます。静的文字列ターゲットやデフォルトの{ multiple: false }を使用するスキーマには影響ありません。この問題はバージョン17.13.5および18.2.4で修正されています。
If you want to get best quality of vulnerability data, you may have to visit VulDB.