つみかさね
A

Angular v22.0.1

リリース日: 2026-06-12データソース: GitHub Releases, npm, endoflife.date
影響度スコア
55/ 100影響度: 高
Breaking Changes0/40
新機能0/25
バグ修正15/20
セキュリティ30/15
依存関係10/15

対応ガイド

high|推奨セキュリティ修正影響: 広範

推奨アクション

  1. 1Angular 22.0.1へのアップデートコマンドを実行(ng update)
  2. 2DatePipeや日時フォーマット周辺の動作をテストで確認
  3. 3本番環境に適用し動作確認

影響対象

Angular 22利用者DatePipe利用者Angular SSR利用者

補足

  • -プロトタイプ汚染のセキュリティ修正が含まれます。Angular 22利用者は早めに適用してください
  • -Breaking Changesはありません
AngularTypeScriptセキュリティプロトタイプ汚染フロントエンド

この変更が意味すること

Angular v22.0.1 がリリースされました。Angular 22 のファーストパッチリリースで、セキュリティ上重要な修正を複数含んでいます。

最も重要な変更は formatDateTimeプロトタイプ汚染(Prototype Pollution)の修正です。悪意ある入力を通じて JavaScript オブジェクトのプロトタイプが汚染される可能性があった脆弱性が解消されます。Angular の日時フォーマット機能(DatePipeformatDate など)を使用しているすべてのアプリケーションが影響範囲です。

また、transfer cache のキー生成に暗号論的に安全な SHA-256 を採用する変更も含まれており、セキュリティ強化を目的とした複合的なパッチです。Angular 22 を利用しているプロジェクトは早めのアップデートを推奨します。

主な変更点

セキュリティ修正: formatDateTime のプロトタイプ汚染を防止

Angular の日時フォーマット処理内部でプロトタイプ汚染が発生する脆弱性が修正されました。攻撃者が細工した入力を渡すことで、アプリケーション全体の JavaScript オブジェクトのプロトタイプを汚染できる可能性がありました。

影響範囲: DatePipeformatDate()、テンプレートでの日付フォーマット表示などを使用しているすべてのコンポーネント。

Commit: c4b5fa3c

セキュリティ修正: transfer cache キーに暗号的安全な SHA-256 を使用

Angular Universal(SSR)の transfer cache で使用されるキャッシュキーの生成が、暗号論的に安全な SHA-256 に変更されました。これまでのキー生成が予測可能または衝突しやすい実装であったリスクが解消されます。

Commit: 1d87c49f

セキュリティ修正: escapeCssUrl で CSS 文字列終端文字をエスケープ

CSS の url() 内に埋め込まれる値で文字列を終端させる文字("')が適切にエスケープされるようになりました。CSS インジェクションのリスクを軽減します。

Commit: c4b5fa3c

バグ修正: 日付フォーマット文字列の長さを制限

異常に長い日付フォーマット文字列を DatePipeformatDate() に渡した場合の過負荷リスクを軽減するため、フォーマット文字列の長さに上限が設けられました。

Commit: dfff57ed

EOL / サポート状況

サイクル最新バージョンサポート終了
2222.0.1アクティブ
2121.2.172027-05-19
2020.3.252026-11-28
1919.2.252026-05-19(EOL済)
1818.2.142025-11-21(EOL済)

Angular 19 は 2026年5月19日に EOL となっています。Angular 19 以前を利用中の場合は、22 系へのアップグレードを計画してください。

開発者への影響

  1. DatePipeformatDate() を使用しているすべてのコンポーネント: プロトタイプ汚染の修正が含まれます。早めのアップデートを推奨します
  2. Angular SSR(Universal)を使用しているアプリ: transfer cache のキー生成が強化されました
  3. 動的に CSS url() を生成しているコンポーネント: escapeCssUrl の修正により、一部の CSS レンダリング動作が変わる可能性があります(意図しない文字が含まれていた場合のみ)
  4. 極端に長い日付フォーマット文字列を使用しているケース: フォーマット文字列の長さ制限により、異常な入力が拒否されるようになります

Breaking Changes はありません。動作変更は上記のエッジケースのみです。

アップデート方法

# Angular CLI を使用している場合
ng update @angular/core@22.0.1 @angular/cli@22.0.1

# npm 直接
npm install @angular/core@22.0.1 @angular/common@22.0.1 @angular/compiler@22.0.1

データソース: GitHub Releases API, endoflife.date
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。

アップデート判断

早急なアップデートを推奨

アップデートすべき場合

  • Angular 22を使用しているすべてのプロジェクト(セキュリティ修正のため)
  • DatePipeや日時フォーマットを使用しているアプリ
  • Angular SSR(Universal)を使用しているアプリ

様子見でよい場合

  • Angular 21以前を使用しており、22へのアップグレードコストが高い場合(ただし移行を検討推奨)

EOL / サポート状況

Angular 22Active
Angular 21ActiveEOL: 2027-05-19
Angular 20ActiveEOL: 2026-11-28
Angular 19End of LifeEOL: 2026-05-19
Angular 18End of LifeEOL: 2025-11-21
Xでシェアはてブ
データソース: GitHub Releases API, npm Registry, endoflife.date (MIT License), NVD (NIST)
AI解説は Claude API により自動生成されています。正確性については原文リリースノートをご確認ください。