脆弱性
DOMPurify において、特定の非デフォルト設定(SAFE_FOR_TEMPLATES: true および DOM を返すモード)を使用している際、アタッチされたシャドウドルート内のテンプレート表現の処理に不備が存在する。攻撃者は、無効な要素によって分離された複数のテキストノードにテンプレート表現を分割して配置することで、サニタイズ処理をすり抜けさせることができる。サニタイズ時に分離要素が削除されると、断片が結合して完全な式となり、下流のテンプレートエンジンによって評価されることで、クライアントサイドではクロスサイトスクリプティング、サーバーサイドのテンプレートコンテキストではテンプレートインジェクションに発展するおそれがある。
対象ソフト
DOMPurify は、ウェブアプリケーションにおいて信頼できない HTML 入力をサニタイズし、クロスサイトスクリプティング(XSS)などの攻撃を防ぐために広く使用されているクライアントサイドのライブラリである。
影響
攻撃者が用意した任意のテンプレート式がサニタイズ後のシャドウドルート内で再結合され、下流のテンプレートエンジンで評価されることにより、クロスサイトスクリプティング(XSS)やテンプレートインジェクションが引き起こされる。
対応策
3.4.17 以降にアップグレードすること