出力時のエスケープ処理とは?しゅつりょくじのえすけーぷしょり
出力時のエスケープ処理とは、データを別の処理系へ渡す直前に、その処理系で特別な意味を持つ文字を無害な表現へ変換すること。危険かどうかは出力先の文法で決まるため、HTML、JavaScript、URL、SQL、シェル、LDAPなど渡し先ごとに変換規則が異なるのが要点。
最終更新:2026-10-07
この語が出る過去問を解く →具体例
同じ利用者名でも、HTMLの本文へ出すなら「<」を実体参照に変換し、URLのクエリへ入れるならパーセント符号化し、JavaScriptの文字列リテラルへ埋め込むなら別の規則で変換する。テンプレートエンジンの自動エスケープを使う場合も、埋め込む文脈ごとに指定する。
試験での引っ掛け
入力時に一括変換して保存する方式は、出力先が複数あると破綻し、二重変換で表示が壊れる原因にもなる。原則は「保存は生データ、出力の直前に文脈に応じて変換」。またHTML属性値やイベントハンドラ内は本文と規則が違う点も狙われる。
関連用語
出た過去問
出典:平成30年度 秋期 高度試験 午前Ⅰ 問13(IPA)解説で登場
クロスサイトスクリプティング対策に該当するものはどれか。
正解:Webページに入力されたデータの出力データが、HTMLタグとして解釈されないように処理する。
要点:XSS対策の要は出力時のエスケープ処理
クロスサイトスクリプティング(XSS)は、利用者の入力した文字列がそのままWebページに出力され、スクリプトとして実行されてしまうことで成立する。したがって対策の中心は出力時のエスケープ処理であり、<や>、&などをHTMLタグとして解釈されない文字参照に変換することが該当する。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。