script要素内のエスケープに関する問答
script要素内のエスケープ方法についてのブログ記事に指摘したところから始まる会話をまとめました
徳丸 浩
@ockeghem
コメントしましたが、 </script><script>alert(/1/)// でXSSになりますね PHPで呼び出した文字列内の特殊文字で、JavaScriptエラーが出る場合の対処法 | PLUS http://t.co/NyEVvgSZ9T @plus_iさんから
2013-03-04 18:42:11
入江慎吾 / Lancers LLM Labs
@iritec_jp
@ockeghem ご指摘ありがとうございます。htmlspecialcharsを使うといったことが適切でしょうか?
2013-03-04 18:45:56
徳丸 浩
@ockeghem
違います。私の本のP111「script要素のXSS」を御覧ください。結構面倒くさいです #wasbook RT @plus_i: @ockeghem ご指摘ありがとうございます。htmlspecialcharsを使うといったことが適切でしょうか?
2013-03-04 18:49:28
入江慎吾 / Lancers LLM Labs
@iritec_jp
@ockeghem 内容を確認後、実際に試してみて、記事を修正いたしました。ありがとうございました。このコードにも問題はあるでしょうか...?http://t.co/irfHkT22DB
2013-03-04 21:33:39
徳丸 浩
@ockeghem
@plus_i 元の、& ' " をエスケープする3つのpreg_replaceは要らないということと、(本当は)a要素のhref属性の中身は、htmlspecialcharsを通すのが正しいのですが、後者は、なくても動作は変わらないので、なくても間違いではない、というとこですね
2013-03-04 21:40:53
入江慎吾 / Lancers LLM Labs
@iritec_jp
@ockeghem Unicodeエスケープするので、元のpreg_replaceは不要ということですね。htmlspecialcharsも常に入れるようにした方が忘れないので、記述しておきました。ありがとうございました!
2013-03-04 21:53:57
入江慎吾 / Lancers LLM Labs
@iritec_jp
【記事を修正しました】PHPで呼び出した文字列内の特殊文字で、JavaScriptエラーが出る場合の対処法 | PLUS http://t.co/irfHkT22DB
2013-03-04 22:08:13