我直接从后端-6ren">
gpt4 book ai didi

使用 ckeditor 预防 xss

转载 作者:行者123 更新时间:2023-12-04 17:08:16 30 4
gpt4 key购买 nike

我的情况有点不同,我正在使用 CKEditor 进行编辑和显示,提交的字符串只会在 CKEditor 中显示,不会显示在其他任何地方。

我试过这个 XSS:

<IMG """><SCRIPT>alert("XSS")</SCRIPT>">

我直接从后端将其添加到数据库,而不是通过 CKEditor,因为我知道在进入数据库之前 CKEditor 做什么并不重要,因为攻击者总是可以发送一些原始 http 请求而不用处理 CKEditor。

令我惊讶的是,CKEditor 向我展示了这个:

{cke_protected_1}">

所以 CKEditor 正在做一些事情来防止 XSS,我意识到 XSS 安全可以从客户端实现。

我的问题是,CKEditor 做的有多好,如果我只使用无属性标签加上它是否可靠

<a><img><table><span><pre>
(<a> and <table> could be disabled if it makes things easier)

PS: CKEditor 使用默认设置。

最佳答案

您应该在服务器端防止 XSS。如果您有这种可能性,请在保存之前删除任何不安全的数据。

请注意,所见即所得的编辑器必须以某种方式保护编辑后的 ​​HTML 中包含的 JavaScript 代码,以免破坏编辑后的内容,其中包括例如隐藏在所见即所得模式<script>标签或更改 onclick事件处理程序到“数据-”属性。

{cke_protected_1} 是 CKEditor 试图隐藏 <script> 标签的结果,由于从 XSS Cheat Sheet 中获取的有点“hackish”的 HTML,它不能完全正常工作。

所见即所得编辑器中的部分内置保护不应被视为服务器端针对 XSS 的保护的替代品。

关于使用 ckeditor 预防 xss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12065174/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com