CVE-2026-4800
lodashは_.templateのimportsキー名を介したコードインジェクションに対して脆弱です
- 公開済み
- 2026/03/31
- 更新済み
- 2026/10/15
- CNA の割り当て
- openjs
- 観察された証拠
- 2026/08/25
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H低 · 今後 30 日間
- パーセンタイル
- 85.3%
- モデルの日付
- 2026/10/23
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
CVE-2021-23337の修正では、_.templateのvariableオプションに検証が追加されましたが、options.importsのキー名には同じ検証が適用されていませんでした。そして、両方の経路が同じFunction()コンストラクタのシンクに流れ込みます。アプリケーションが信頼できない入力をoptions.importsのキー名として渡す場合、攻撃者はテンプレートのコンパイル時に任意のコードを実行するデフォルトパラメータ式を注入できます。さらに、_.templateはimportsのマージにassignInWithを使用しており、これはfor..inを介して継承されたプロパティを列挙するため、別の経路によってObject.prototypeが汚染されている場合、汚染されたキーがimportsオブジェクトにコピーされ、Function()に渡されます。この問題はlodash、lodash-es、lodash-amd、lodash.templateの4.18.1で修正されています。回避策として、信頼できない入力をoptions.importsのキー名として渡さず、開発者が制御する静的なキー名のみを使用してください。
ソース
プロトタイプ汚染を介したlodashテンプレートでのリモートコード実行を実証する概念実証であり、攻撃フローと悪用手法の詳細な分析を含む。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。