2

当标签前面有几个字符或者可能被省略时,是否有可能或可能img解析标签或任何其他字符?<这会在任何著名的 HTML 解析器中发生吗?

例如 <div>$test</div>.

where$test可以是任何包含 a 的字符串>,但不是 a <。比如img>,但不是<img

完全披露:这个问题是专门看我发表的评论是否正确。

4

3 回答 3

1

好吧,出于好奇,我更改了我的一个测试页面,因此它的脚本部分从以下内容开始:

< script>

结果完全被破坏了,只打印了我所有的 javascript。这发生在 IE9、GC28 和 Firefox 中。我手头并没有真正要测试的图像,但我认为我们可以从中得出,HTML 标记始终需要在尖括号和标记声明之间没有空格。

如果您想进一步确认,我建议您浏览 W3C 标准化文档,看看是否可以找到它们声明 HTML 元素标记的通用模式的位置。许多 HTML 解析器可能以这些文档为基础以简化其编码。

于 2013-07-16T20:30:56.627 回答
1

从技术上讲,您不需要 < 或 >。在 IE 中加载它,它会运行一个 javascript 警报。不确定是否可以不弄乱字符集。

<HTML>
<HEAD>
<META charset="UTF-7">
</HEAD>
<BODY>
<DIV>+ADw-script+AD4-alert(+ACI-XSS+ACI-)+ADw-/script+AD4-</DIV>
</BODY>
</HTML>

来源:http ://securityoverride.org/articles.php?article_id=13

于 2013-07-16T20:44:39.347 回答
0

标记名后允许有空格

< script>有效时 <script>无效

于 2017-02-16T21:04:30.150 回答