我想弄清楚如何保护,
- 有角的
- 视图
- 反应
对抗 XSS 攻击。当我访问 Angular 官方文档时,
https://angular.io/guide/security
, 它说:
为了系统地阻止 XSS 错误,Angular 默认将所有值视为不受信任。当一个值通过属性、特性、样式、类绑定或插值从模板插入到 DOM 中时,Angular 会清理并转义不受信任的值。
并且:
Angular 会清理 HTML、样式和 URL 的不受信任的值;清理资源 URL 是不可能的,因为它们包含任意代码。在开发模式下,Angular 在清理期间必须更改值时会打印控制台警告。
和:
Angular 将值识别为不安全并自动对其进行清理,这会删除标记但保留元素等安全内容。
当我去 React 官方文档时,
https://reactjs.org/docs/introducing-jsx.html#jsx-prevents-injection-attacks
,它说了以下内容:
在 JSX 中嵌入用户输入是安全的:
和:
默认情况下,React DOM 在渲染它们之前转义嵌入在 JSX 中的任何值。因此,它确保您永远无法注入任何未明确写入您的应用程序的内容。一切都在呈现之前转换为字符串。这有助于防止 XSS(跨站点脚本)攻击。
但是对于 Vue,我在他们的文档中找不到任何关于 XSS 保护的内容,或者他们可以默认提供的任何内容。
我的问题: 默认情况下,Vue 是否提供任何方式来防止 XSS 攻击,或者我是否需要寻找第 3 方解决方案?
当我用谷歌搜索这个主题时,我得到了很多博客文章网站和文章,例如,这个项目来清理我的 HTML:
https://github.com/punkave/sanitize-html
原文由 Niek Jonkman 发布,翻译遵循 CC BY-SA 4.0 许可协议
vue 中没有内置的消毒剂。根据 Evan You(Vue 的创建者)对问题的 评论
检查这篇文章: https ://github.com/vuejs/vue/issues/6333