2012-04-22 8 views
2

私はノックアウトがこの状況を処理すると思うが、確認したいと思った。 input/textareaのようなフォームコントロールを使ってバリューバインディングを使用すると、スクリプトインジェクション攻撃の危険はないのは本当ですか?Knockoutのバリューバインディングを使用してスクリプトを注入する可能性はありますか?

または、ビューモデルで値を設定する前に値がエンコードされていることを確認するには何かする必要がありますか?

答えて

2

値はそのままビューモデルに保存されます。それはあなたの使い方によって異なります。 textバインディングは、値を設定するためにinnerText/textContentを使用してコンテンツをエンコードします。だから、あなたはそこでは安全です。 htmlバインディングをvalueバインディングで設定したコンテンツで使用する場合は、スクリプトを挿入することができます。

詳細については、ノックアウトdoco About HTML encodingをご覧ください。

+1

私はサーバーから文字列を取得し、値バインディングで入力コントロールにバインドする場合、私は質問があると思うが、サーバー文字列がhtmlエンコードされていない場合に問題があります。 –

+0

テキスト入力の値を 'value'バインディングで設定することは安全です。 –

関連する問題