如何防止 Showdown 删除脚本标签?
How to prevent Showdown from removing script tags?
我正在测试一些东西并试图将其放入 Showdown:
<script>alert("hacked!");</script>
当然它没有发出任何警报(摊牌是为了防止此类事情发生),但是 <script>
标签被完全删除了。我将其用于用户描述,因此脚本标签(及其内容)应该是可见的,只是不执行。
我在想我很可能需要更改一些内置的 Showdown 代码,但在它的代码中找不到任何我应该更改为 show 脚本的地方标签,但不执行它们。
有谁知道任何现有选项或对源代码的一些更改以显示这一点?
我在代码中找到了这个地方,它负责散列 HTML 标签,例如:<script>
或 </script>
.
我认为你应该只删除文件中的第 329 行
一切都应该正常。
我找到了答案:我只需要用可见的东西替换 <script>
标签的开始和结束,例如 <script
和 </script>
这是我使用的代码:
myshowdownhtml.split("<script").join("<script").split("<"+"/script>").join("</script>");
我正在测试一些东西并试图将其放入 Showdown:
<script>alert("hacked!");</script>
当然它没有发出任何警报(摊牌是为了防止此类事情发生),但是 <script>
标签被完全删除了。我将其用于用户描述,因此脚本标签(及其内容)应该是可见的,只是不执行。
我在想我很可能需要更改一些内置的 Showdown 代码,但在它的代码中找不到任何我应该更改为 show 脚本的地方标签,但不执行它们。
有谁知道任何现有选项或对源代码的一些更改以显示这一点?
我在代码中找到了这个地方,它负责散列 HTML 标签,例如:<script>
或 </script>
.
我认为你应该只删除文件中的第 329 行
一切都应该正常。
我找到了答案:我只需要用可见的东西替换 <script>
标签的开始和结束,例如 <script
和 </script>
这是我使用的代码:
myshowdownhtml.split("<script").join("<script").split("<"+"/script>").join("</script>");