xss分析
一、如何让span标签内容不执行
1、使用HTML实体编码:
将<
, >
, &
, '
, "
等字符转换为对应的HTML实体编码。
<span><script>alert('不执行');</script></span>
2、使用CDATA
区段:
在<script>
标签中使用CDATA区段来包裹JavaScript代码,这样就可以在<span>
标签中使用JavaScript代码而不会执行。
<script type="text/javascript">
//<![CDATA[
document.write("<span><script>alert('不执行');</script></span>");
//]]>
</script>
3、使用textContent
或innerText
属性:
如果你是在JavaScript中操作DOM元素,可以使用textContent
或innerText
属性来设置<span>
标签的内容,这样它就不会执行嵌入的JavaScript代码。
document.getElementById('mySpan').textContent = "<script>alert('不执行');</script>";
4、使用createElement
和createTextNode
:
创建一个文本节点而不是直接插入HTML字符串。
var text = document.createTextNode("不执行");
document.getElementById('mySpan').appendChild(text);
以上方法都可以确保<span></span>
标签中的内容不会执行,只会被当作普通文本显示