问题描述
这个问题很简单,但到目前为止我还没有找到答案。
我想在页面上显示ckeditor5的内容。为了防止XSS,我使用了[innerHTML]
属性,该属性可以清理标记和
<span style="font-family:'Times New Roman',Times,serif;">Some text</span>
仅成为span
,就XSS预防而言,这是相当合理的。
但是显然CKEditor本身知道如何保存用CKEditor创建的样式并删除XSS易受攻击的样式,例如:
<a href="https://malicIoUs.site" style="position:absolute;z-index:9999;top:0;left:0;bottom:0;right:0;opacity:0">You can't see me</a>
编辑器中的变为<a class="ck-link_selected" href="https://malicIoUs.site">You can't see me</a>
那么问题是-是否可以安全地显示保留CKEditor特定样式的内容,但仍然阻止所有XSS?就我而言,我不能完全相信一个来源,我只是假设它是由CKEditor添加的。
P.S。请不要推荐bypassSecurityTrustHtml
作为解决方案,只要它会绕过所有XSS脚本即可。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)