2005年、Amit Klein氏が「DOM Based Cross Site Scripting or XSS of the Third Kind」を公開しました。
これにより、サーバーのHTTPレスポンスへ攻撃文字列が直接含まれなくても、ブラウザー内部のDOM処理だけでXSSが成立することが明確に整理されました。
ただし、これを「XSSの主軸がサーバーからクライアントへ完全に移行した」と表現するのは正確ではありません。
現在もStored Server XSSやReflected Server XSSは多数発生しています。
正確には、次のように理解します。
サーバー側XSSが消えたのではなく、クライアント側に新しい攻撃面が追加された。
CSPは、ページが読み込みまたは実行できるリソースを、HTTPヘッダーなどで制限する仕組みです。
OWASPの歴史資料では、CSP 1.0の公開を2012年としています。
CSPは重要な防御ですが、エスケープやサニタイズの代わりではありません。
2013年の研究では、innerHTMLなどによるDOM変換によって、安全に見えた文字列が危険な構造へ変異するMutation XSSが体系化されました。