被害者が特別なURLを開かなくても発生する
多数の利用者へ継続的に影響する可能性がある
管理画面で発火すると影響が大きくなりやすい
Server XSSの場合とClient XSSの場合がある

DOM-based XSSは、ブラウザー内のJavaScriptが信頼できない値を読み取り、危険なDOM操作へ渡すことで発生します。
const value = location.hash.slice(1);
document.querySelector("#output").innerHTML = value;
この例では次のように整理できます。
| 項目 | 内容 |
|---|---|
| Source | location.hash |
| Sink | innerHTML |
| 発生場所 | ブラウザー |
| サーバーレスポンスの変更 | 必須ではない |
OWASPは、DOM-based XSSをClient XSSの一部として整理しています。

サーバーが信頼できないデータを、危険な状態でHTMLレスポンスへ埋め込むXSSです。
入力
↓
Django・PHP・Javaなどのサーバー処理
↓
危険なHTMLレスポンス
↓
ブラウザーで実行
Server XSSには次が含まれます。
Reflected Server XSS
Stored Server XSS