JVNDB-2026-009688 | |
HandlebarsjsのHandlebarsにおける複数の脆弱性 | |
| 概要 | |
Handlebarsはユーザーがセマンティックテンプレートを作成するために必要な機能を提供します。バージョン4.0.0から4.7.8までにおいて、テンプレートコンテキストに細工されたオブジェクトが配置されると、`resolvePartial()`のすべての条件ガードをバイパスし、`invokePartial()`が`undefined`を返す原因となります。Handlebarsランタイムは未解決の部分テンプレートをコンパイルが必要なソースとして扱い、細工されたオブジェクトを`env.compile()`に渡します。このオブジェクトは挿入されたコードを含む有効なHandlebars ASTであるため、生成されたJavaScriptがサーバー上で任意のコマンドを実行します。この攻撃は攻撃者が動的部分テンプレートルックアップによって返される値を制御できることを前提としています。バージョン4.7.9でこの問題は修正されました。いくつかの回避策も存在します。第一に、ランタイム専用ビルド(`require('handlebars/runtime')`)を使用してください。`compile()`がなければ、`invokePartial`のフォールバックコンパイル経路は到達不能になります。第二に、レンダリング前にコンテキストデータをサニタイズしてください。つまり、コンテキスト内の値が動的部分テンプレートに渡される可能性のある非プリミティブオブジェクトでないことを確認してください。第三に、コンテキストデータがユーザー制御されている場合は動的部分テンプレートルックアップ(`{{ (lookup ...)}}`)の使用を避けてください。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 8.1 (重要) [その他]
| |
| 影響を受けるシステム | |
|
| |
Handlebarsjs | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 | |
| 対策 | |
正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/03/27 |
| 登録日 | 2026/04/02 |
| 最終更新日 | 2026/04/02 |



