タグ

ブックマーク / yutaka.hatenablog.jp (1)

  • HTMLの属性値はなんでダブルクォートで囲むことが推奨されているのか考えてみた - yukata

    最近セキュリティの勉強をしています。 その中で一つ疑問に思って色々調べてみたけど、なかなか理由がわからないことがありました。 それは、HTMLの属性値を「"(ダブルクォート)」で囲むことを推奨していることです。 HTMLの属性値は、クライアントから受け取った値を使って動的に生成している場合、クロスサイトスクリプティングの脆弱性が発生してしまいます。そのため、HTMLエスケープする必要がありますが、「'(シングルクォート)」や「"(ダブルクォート)」の引用符で囲まなければ、たとえエスケープしていてもクロスサイトスクリプティングが可能です。 例えば以下のように、攻撃文字列の間にスペースを入れます。 <input type=text name=name value=<?php echo(htmlspecialchars($_GET())); ?>> ↓ <input type=text name

    HTMLの属性値はなんでダブルクォートで囲むことが推奨されているのか考えてみた - yukata
    igz0
    igz0 2022/12/17
  • 1