html - 是否有可能使用 Knockout 的值绑定(bind)进行脚本注入(inject)?

标签 html knockout.js knockout-2.0

我认为 knockout 可以处理这种情况,但想确认一下。如果使用像 input/textarea 这样的表单控件进行值绑定(bind),那么真的没有脚本注入(inject)攻击的危险吗?

或者您是否需要执行某些操作来确保在将值设置到 View 模型中之前对其进行编码?

最佳答案

该值将按原样保存到 View 模型中。这仅取决于您如何使用它。 text 绑定(bind)将根据使用 innerText/textContent 设置值对内容进行编码。所以,你在那里很安全。如果您要将 html 绑定(bind)与通过 value 绑定(bind)设置的内容一起使用,则可以注入(inject)脚本。

查看 knockout 文档 About HTML encoding了解更多信息。

关于html - 是否有可能使用 Knockout 的值绑定(bind)进行脚本注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10270362/

相关文章:

javascript - 如何检查 isset 是否未设置?

javascript - 使用 AJAX 内部函数绑定(bind)可观察数组

javascript - 使用 jquery 进行 knockout 自动完成不允许选择自定义值

knockout.js - knockoutJS,事件被触发,但是 event.which 仍然未定义

javascript - 当 Knockout 仍在更新订阅者时刷新 UI

javascript - Knockout.js 双向绑定(bind) : Number Formatted as String

javascript - 本地存储未设置

html - 网格模板区域无效的属性值

javascript - 阻止子 li 可点击,但保留包含 a 的功能

knockout.js - 调用breeze函数时如何将数据绑定(bind)值作为参数传递