質問: 下記のプログラムは変更をクリックすると内容が書き換えられるプログラムとなっております。 この際ユーザーに入力を求めHTMLを書き換えるので念の為ajax等で正規表現かを確認して表示した方がセキュリティ的にはいいのでしょうか? 例えば山田と書くと実際にはタグが挿入されてしまいます。 それともajaxといったまではする必要がないのでしょうか? その場合はどういった手段なのでしょうか? それともセキュリティ関連だけに限定した場合は特にそういった事はせずこのページをサブミット(まだフォームタグ等は設置していませんが)するときにphpで正規表現を確認するだけで問題ないのでしょうか? ご解答お待ちしております。 ``` 無題ドキュメント お名前 山田太郎 メールアドレス xx@xx.co.jp ユーザーID xx_xx ```
回答: `$(this).siblings('span').html($(this).prev('input').val());`の`.html`を`.text`としましょう。 `.html`では、タグなどもそのまま入るため、JavaScriptも入力どおり実行されてしまう**XSS**が発生します。