2026-05-18 · 読了目安 1 分
API とテンプレートでの HTML エンティティエンコーディング
HTML や JSON 文字列フィールドに埋め込む前にユーザーコンテンツをエスケープする。
HTMLセキュリティXSS
重要ポイント
- エンコーディングはコンテキスト依存 — HTML エンティティは URL や JavaScript エスケープの代わりにはならない。
- 信頼できるコンテンツのみデコード; レンダリング前に攻撃者制御文字列をデコードしない。
正しいエスケープを選ぶ
テキストノードには HTML エンティティエンコーディング; クエリパラメータには URL エンコーディング; JSON 内には JSON 文字列エスケープ。
複合ペイロードを構築するときはその順序でツールを連鎖する。
よくある質問
これで XSS は防げますか?
HTML へのテキスト挿入には役立つが、フレームワークの自動エスケープと CSP を主防御とする。
名前付き vs 数値エンティティ?
一般的な文字は両方サポート; 対象テンプレートエンジンで出力を確認。