这更多是关于安全而不是编程,但无论如何我都会在此发布。
标记解析器将数学块呈现为:
<script type="math/tex">
% tex code here
</script>
然后,客户端库(又名MathJax)会检测这些<script>
标记并将其转换为数学。
我的问题是:在清理HTML时,是否可以允许<script type="tex/math">
个标签?
浏览器是否有可能将这样的标记作为JavaScript(启用XSS)进行插入?
答案 0 :(得分:0)
这应该是安全的。这取决于如何允许这些标记,而HTML编码其他所有内容。
还要注意脚本标记中的任何用户控制的内容。
e.g。如果用户可以将% tex code here
设置为
</script>
<script>
alert('xssed')
然后将呈现以下内容:
<script type="math/tex">
</script>
<script>
alert('xssed')
</script>
然后执行JavaScript。