tinymce - htmlPurifier 不适用于 TinyMCE

标签 tinymce xss htmlpurifier

我正在使用 htmlPurifier 来防止来自用户的 XSS 攻击,并且在输入 type="text"字段上一切正常。但是,当我尝试清理 tinyMCE 文本区域时,htmlPurifier 似乎不起作用,例如:

简单的输入文本字段

输入:

<script>alert("XSS")</script>Cleaning Test

输出:清洁测试

tinyMCE 文本区域

输入:

<script>alert("XSS")</script>

输出:<script>alert("XSS")</script>

我错过了什么吗?为什么 htmlPurifier 可以处理简单的输入文本,而 tinyMCE textarea 却不能?

Ps.: 魔术引号已关闭

最佳答案

我想我发现了问题。

tinyMCE 自动编码实体如下:

< into &lt;
> into &gt;
" into &quot;
& into &amp;

我尝试在 tinyMCE 上使用不同类型的 entity_encoding,但它们似乎都无法正常工作,所以我使用 PHP: html_entity_decode 来解码 tinyMCE 文本区域,然后我使用 htmlPurifier 来清理数据,现在一切正常。

希望其他人觉得这很有用。

关于tinymce - htmlPurifier 不适用于 TinyMCE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13834456/

相关文章:

tinymce - 如何添加自定义按钮以将文本添加到 tinymce 编辑器

mysql - Html-Entity 编码的空 HTML 标签

java - 防止对 Tomcat/Struts 1 Web 应用程序的 XSS 尝试(无源代码)

github - 我已将 Composer 配置为在本地下载 HTMLPurifier,但 Git 不会将所有文件推送到我的 OpenShift 主存储库。为什么不?

php - 修改此标记的 htmlpurifier 允许标签

php - htmlpurifier 删除内联 css

php - tinymce 代码高亮就像 stackoverflow 一样?

javascript - TinyMCE 编辑器删除空格

javascript - TinyMCE:启用单个按钮

ruby-on-rails - 让 Rails 3 默认清理输出而不是转义它