2017-06-29 13 views
0

私はこのような入力タイプから値を取得する:防止の入力タイプ

var num  = $(document).find('#num').val(); 

私は次のコードでXSS攻撃から入力タイプを避けるために試してみた:

num = jQuery(num).text().replace('script', '') ; 

それは動作していない。他のアイデアは?

+0

ユーザがいくつかのHTMLを '#num''コントロールに入力することになっている場合、おそらく本格的なHTML殺菌ライブラリが必要です。ユーザーの入力はHTMLではないと想定されます。そのように実行しようとしないでください。 –

+0

例:テキストエリアに 'rm -rf/*'と入力することは危険を意味するものではありません。しかし、あなたのシェルで生のtextarea入力を実行すると、害を及ぼす可能性があります。 –

答えて

1

このコードが動作しても、javascriptでxss攻撃を防ぐことはできません。 $(document).find('#num').val($(document).find('#num').val().replace('script',''));

これで、削除されたスクリプト文字列を入力することができましたが、あなたの入力に<scscriptript>を書き込むとどうなりますか?途中で削除されたスクリプト文字列の後に、別のスクリプトタグがあります。サーバー側で入力を確認する必要があります。

関連する問題