需要安全建议允许用户写入CSS文件

时间:2013-02-13 05:56:13

标签: security

我有一个Wordpress多站点安装,部分功能是加载存储在数据库中的CSS(来自父和子CSS文件的一次性复制版本)(主题选项的Wordpress选项表部分)。主题选项面板中提供了此功能。

启用此功能后,将禁用父级和子级CSS,主题将从自定义css文件(custom.css)加载。这个custom.css的内容取自数据库(就像我在第一段中所说的那样)。在主题选项面板中,用户现在可以编辑整个CSS,然后保存它。保存后,它将写入包含更改的custom.css文件。

如果这种方法安全,我需要你的想法。基本上我已经使用以下PHP行清理了自定义CSS(在将它保存到数据库之前):

$sanitized_css = esc_html($original_css);

其中esc_html是用于转义HTML块的Wordpress函数:http://codex.wordpress.org/Function_Reference/esc_html

但我不确定这是否真的是最好的方法。我很感激你的建议和想法。

我想将CSS直接输出到浏览器(内联)而不使用任何CSS文件,这种方法是否也安全?但我知道从CSS文件加载始终是最好的做法,特别是对于大型CSS文件。

我需要确保应用程序不受XSS,MySQL注入和其他安全风险的影响。

感谢。

1 个答案:

答案 0 :(得分:0)

快速谷歌搜索会带来此论坛的相关帖子:

User-defined CSS: What can go wrong?

Sanitize user defined CSS in PHP