angular - Angular:为什么这段代码不会产生警报?
问题描述
<h3 _ngcontent-c4="" class="project-name">"Sometest"</h3><script>alert('xss');</script><h3>test</h3>
我尝试在自己的项目中使用 XSS 漏洞。但它不知何故不会被触发。
有任何想法吗?
解决方案
script
标签从组件标记中删除。它由HTMLSanitizer
. 这是作为 XSS 预防功能完成的。
默认情况下,Angular 将所有值视为不受信任。当一个值通过属性、属性、样式、类绑定或插值从模板插入到 DOM 中时,Angular 会清理和转义不受信任的值。
可以但不鼓励注入不受信任的内容
https://stackoverflow.com/a/44904601/1527544
https://netbasal.com/angular-2-security-the-domsanitizer-service-2202c83bd90
推荐阅读
- c# - 我应该在哪里将动画标志 bool 设置回 false?
- c++ - 这两个语句是什么意思 char (*test)[10]; 测试=新字符[4][10];
- javascript - 如何通过单击其他缩略图来更改主图像
- php - 提交表单的 CSRF 令牌
- javascript - 2 下拉选择选项迭代相同的数组,但不应该能够选择相同的选定值(ReactJS)
- javascript - 如何使用 Modular Web SDK 版本 9 在 Cloud Firestore 集合中的文档中获取文档和嵌套集合?
- list - Flutter 中从另一个类获取列表数据时出现错误
- python - 在不使用会话的情况下打印 TensorFlow 对象
- html - 当 R markdown 呈现为 HTML 时,ggplot 标签\图例未以 UTF-8(RTL 语言)编码
- google-apps-script - 使用 Google 脚本在我的 Google Sheet 中导入来自 Google Photos 的 google 图片