【发布时间】:2012-09-13 12:44:37
【问题描述】:
在我的网站上,用户将能够为内容输入 html 标签,因此文本可以是粗体、斜体或链接和图像。我打算使用真正使用 HTML 标签的 ckeditor 或 tinymce(不是 BBC 代码或 wiki 语法) 如果我允许 HTML,当显示文本时,它将被解释,并且可能包含一些“hack”,如 javascript 或 XSS .... 我该怎么做才能避免这个安全问题? 我是否必须列出想要的 html 标签并删除所有不需要的标签和内容? 我可以为此使用条形标签吗?
例如在stackoverflow上是如何完成的?
你知道一些可以安全保存和安全解释有限html标签的php/jquery插件吗?
提前感谢您的帮助
【问题讨论】:
-
我认为您可以配置CKEditor中允许的元素。 -- stackoverflow.com/questions/2912805/…
-
最简单的解决方法是运行
str_replace('<script>', '', $str);或类似的东西。您也可以为 iFrame 执行此操作。 -
看看作为Microsoft Web Protection Library一部分的HtmlSanitizer。