GitHub Advisory Databaseで、Angularのサーバー側で画面を生成する仕組み「SSR」に関わる脆弱性2件が報告されています。認証なしの攻撃でサービスが停止したり、利用者が外部サイトへ誘導されたりする恐れがあり、両件の修正版は22.2.1、21.2.25、20.3.33です。提供された資料には、勧告の公開日は書かれていません。
サービス停止の恐れ、短いURLでも発生し得る
CVE-2026-111752は、画面の遷移を扱う@angular/routerのサービス拒否(DoS)の脆弱性です。対象は、Node.js/V8上で要求ごとにSSRを実行するアプリです。
影響条件には、空パスや名前付きアウトレットのルート設定、細工したURLを通す上流プロキシ、限られたヒープ容量が含まれます。ヒープは、プログラムが処理に使うメモリ領域です。
原因は、URLの補助アウトレットと設定済みルートの対応確認の不備です。勧告によると、認証不要の遠隔攻撃でメモリやCPUを使い切らせ、単発または少数の同時要求でSSRの処理担当が異常終了する可能性があります。
短いURLでも、遷移の可否を判定するガードや、必要なデータを取得するリゾルバーの反復実行を誘発し得ます。URLの長さを制限したり、ヒープ容量を増やしたりするだけでは解消しません。一方、メモリはルート認識の完了後に解放されるため、持続的なメモリリークではありません。
外部転送も修正、旧世代のDoS対策は更新先に注意
CVE-2026-111754は、@angular/platform-serverの外部転送の脆弱性です。@angular/platform-serverと@angular/ssrを使うSSR環境が対象です。
URLの表記を整える「正規化」の前に検査を通過し、その後にパスの先頭が「//」になることが原因です。細工したURLへの応答で、転送先を示すLocationヘッダー付きのHTTP 302が生じ、認証不要の攻撃者が利用者を任意の外部ドメインへ誘導し得ます。
影響条件には、特定のパラメータールートや利用者指定の遷移先の使用があります。上流プロキシがセミコロンやドット区間を除去・正規化せず通すことも条件です。
両件とも修正版は22.2.1、21.2.25、20.3.33です。DoSについてはv20より前も影響しますが、サポート終了のため修正版は提供されません。日本向けの提供条件や時期は、発表には書かれていません。
影響する会社・しない会社
- 影響する: Node.js/V8で要求ごとのSSRを行い、空パスや名前付きアウトレットなど、DoSの影響条件に当てはまるアプリを運用する会社です。Angularの採用有無だけでなく、ルート設定と上流プロキシも確認対象です。
- 影響する:
@angular/platform-serverと@angular/ssrを使い、特定のパラメータールートや利用者指定の遷移先など、外部転送の影響条件に当てはまる会社です。
- 影響しない: SSRを使わず、ブラウザ内だけで動くSPAを運用する会社は、今回の2件の対象外です。SPAは、画面の切り替えをブラウザ側で行うアプリの方式です。
- 影響しない: ビルド時に画面を事前生成するプリレンダリングは、今回のDoSの対象外です。この記載だけで、外部転送の脆弱性まで対象外と判断しないようにします。