2

我使用著名的 symfony 框架创建了一个网站。我想为它添加丰富的编辑功能。我找到了 TinyMCE 编辑器。但是出现了一个问题:用户在内容中嵌入一些javascript代码怎么样?例如警报('hello world')。

我测试了wordpress,这是一个非常有名的博客软件。它面临同样的问题。例子

如果有人嵌入警报脚本,这没什么大不了的。但是如果他们嵌入了一些危险的代码呢?你遇到过同样的问题吗?我应该使用markdown而不是html吗?任何用于降价编辑的好小部件?

4

2 回答 2

3

使用现有的库来清理您的用户输入是个好主意,html 净化器项目:http ://htmlpurifier.org/似乎维护良好且制作精良。

于 2013-02-26T10:32:13.057 回答
1

不要在您的用户输入中允许任何嵌入的 javascript。这很容易在客户端或服务器上清除。拥有您支持的 HTML 标记的“白名单”,并从您允许的任何内容中删除任何事件侦听器属性。

于 2010-08-25T13:11:25.153 回答