JQuery関数.val()
でtextarea
/input
の値を取得していますか?XSS対応ですか?
<html>
<textarea id="t1"></textarea>
<script>
var toBeDisplayed = $('#t1').val();
$('#elem').html(toBeDisplayed);
</script>
</html>
ガンボが彼のコメントで述べたように、それはあなたが何を読んだかは重要ではありませんが、あなたが事実の後に何を表示したかは重要です。単にあなたの質問に答えるために、いいえ。 jQueryの.val()
には、XSSからユーザーを保護するフィルタリングはありません。値をvar toBeDisplayed
に取り込んでから、リレーされて再度表示される前に独自のフィルタリングを実行することができます。
もちろん、入力をユーザーに表示する前に、サーバー側でサニタイズを行うのが常に最も安全です。これはブラウザーでより迅速かつ簡単に実行できますが、ブラウザーで実行されるコードはすべて完全に信頼できると見なすべきではありません。変更または無効化できます。