Profile nickname / icon rendering XSS
nickname、status text、icon URL のような小さな profile field が attribute/HTML context で実行可能コードになるか確認します。
HTML payload テスト
このシナリオは iframe sandbox ではなく、ユーザー入力が HTML/DOM にどう描画されるかを検証します。
- nickname は textContent としてのみ描画するか確認
- attribute に入れる値は attribute context に合わせて encode するか確認
- icon URL は URL parser と host/protocol allowlist で検証するか確認
Payload
コピーする payload
nickname が title、aria-label、value 属性に入るとき quote breakout を確認します。
プレビュー
このプレビューは学習用に意図的に unsafe rendering を行います。実サービスでは payload はテキストとしてエスケープされるか除去されるべきです。
ログ
// ログなし
解説
- profile field は comments、notifications、admin list、share card など多くの場所で再利用されます。ひとつの漏れが stored XSS になります。
- nickname は HTML ではなく text です。React/DOM の標準 text rendering を維持し、formatter が
dangerouslySetInnerHTMLを使わないか確認します。 - icon は URL policy が中心です。ユーザー提供 URL を
src、CSS URL、innerHTML にそのまま渡さず、protocol/host/content-type を検証します。