概要
Angularの国際化(i18n)パイプラインにおいて、クロスサイトスクリプティング(XSS)の脆弱性(CVE-2026-27970)が報告されています。この脆弱性は、ICUメッセージ(International Components for Unicode)において、翻訳されたコンテンツ内のHTMLが適切にサニタイズされないことに起因します。これにより、悪意のあるJavaScriptが実行される可能性があります。
影響範囲
Angularの以下のバージョンより前のものが影響を受けます。
- 21.2.0
- 21.1.16
- 20.3.17
- 19.2.19
この脆弱性は、Angular i18n機能を使用しているアプリケーションに影響を及ぼす可能性があります。
想定される影響
この脆弱性が悪用された場合、攻撃者によって制御されたJavaScriptが、脆弱なアプリケーションのオリジンで実行される可能性があります。これにより、認証情報の窃取、ウェブページの改ざん、セッションハイジャックなど、様々な悪意のある操作が行われる恐れがあります。
攻撃成立条件・悪用状況
この脆弱性は、一般的なXSSとは異なり、以下の複数の前提条件が揃った場合に攻撃が成立すると報告されています。
- 攻撃者がアプリケーションの翻訳ファイル(例: xliff, xtbなど)を侵害していること。
- 標的となるアプリケーションがAngular i18n機能を使用しており、かつICUメッセージをレンダリングしていること。
- アプリケーションが、安全なコンテンツセキュリティポリシー(CSP)によってXSS攻撃から防御されていないこと。
現時点での具体的な悪用状況については、公開情報からは確認できません。
推奨対策
今すぐできる対策(優先度:高)
- Angularのアップデート: 以下のバージョンに速やかにアップデートしてください。
- 21.2.0
- 21.1.6
- 20.3.17
- 19.2.19
中長期的な対策・一時的な緩和策
- 翻訳コンテンツの厳格なレビュー: 信頼できない第三者から受け取った翻訳コンテンツをAngularアプリケーションに組み込む前に、内容を厳しくレビューし、悪意のあるスクリプトが含まれていないか検証することを検討してください。
- コンテンツセキュリティポリシー(CSP)の強化: 不正なJavaScriptの実行をブロックするために、厳格なCSPを有効にすることを推奨します。
- Trusted Typesの利用: 適切なHTMLサニタイズを強制するために、Trusted Typesを有効にすることを検討してください。
確認方法
ご自身のAngularアプリケーションが影響を受けるバージョンを使用しているか、またAngular i18n機能およびICUメッセージを使用しているかを確認してください。
参考情報
詳細については、以下の情報を参照してください。