web-dev-qa-db-ja.com

<noscript>ブロックのコンテンツはエスケープする必要があります

タイトルはほとんどすべてを語っています。 <noscript>ブロック内でエスケープするのは直観に反するようですが、攻撃者が挿入できるjsは実行されないはずです。しかし、私はまだこれからかなり新しいので、尋ねるのが賢明だと思いました。

明確にするために、これは私が話しているコンテキストです:

<noscript>
<img src="<?php echo 'Should I escape this url' ?>" />
</noscript>
10
Dominic P

はい。信頼できないデータは常にエスケープする必要があります。ここにあなたのスニペット(疑似コード)に対する攻撃があります:

<noscript>
<img src="<?php echo 'you should always escape everything, 
                dependeing on the context. This context is url in an attribute, 
                you should escape it appropriately. otherwise " />
                </noscript> 
                <script>alert("you will be vulnerable")</script><noscript><img "' ?>" />
</noscript>
16
valentinas