我正在阅读 OWASP XSS 预防备忘单,并陷入了一些理解:
为什么我不能只用 HTML 实体编码不受信任的数据
HTML 实体编码适用于您放入 HTML 文档正文(例如
<div>
标签内)的不受信任的数据。它甚至适用于进入属性的不受信任的数据,特别是如果您热衷于在属性周围使用引号。<script>
但是,如果您将不受信任的数据放在任何地方的标签中,或者像 onmouseover 这样的事件处理程序属性中,或者在 CSS 中,或者在 URL 中,则 HTML 实体编码不起作用。因此,即使您在任何地方都使用 HTML 实体编码方法,您仍然很可能容易受到 XSS 的攻击。您必须对要放入不受信任数据的 HTML 文档部分使用编码语法。这就是以下规则的全部内容。
我无法创建有效的 POC,html 编码的 xss 攻击向量如何在<script>
标签内触发 xss
帮助我理解这一点。