用户提供的CSS的安全问题?

时间:2014-05-06 18:32:01

标签: css security

我不太擅长穿上我的“黑帽子”并弄清楚一个邪恶的用户可能会对某种类型的开门做什么。我正在开发一个计划有这样一扇门的应用程序,并希望找到一些如何保护它的帮助。

想象一个网站是WordPress的远房表亲。它是针对特定垂直市场的内容创建和托管网站,其功能使其对这些市场更具吸引力(与许多现有的更常见的替代方案相比)。

在这样的网站上,您希望用户能够根据自己的内容制作自己的外观。我正在计划一种3层次的方法。 1)提供一些可选择的“模板”供选择,2)提供额外可调节性的特定点(可选择背景颜色,字体系列等)和3)作为真正格式迷恋客户的备份,能力提供一个CSS文件供他们的页面使用。

这是关于可能由最后一项创建的安全漏洞,我希望得到一些帮助。首先,黑帽通过无拘无束的通道进入这样一扇门,可以做出什么样的邪恶事情?他们可以做些什么会对任何没有特别包含CSS的页面产生负面影响吗?他们可以通过恶意CSS来获取某种系统访问权限吗?是否有任何标准方法可以过滤用户提供的CSS以防止(大部分)这些漏洞利用?

非常感谢!

2 个答案:

答案 0 :(得分:1)

不要让他们上传任何类型的东西,给他们一个用户界面来修改他们的外观。这样你就可以限制他们可以造成的伤害。

答案 1 :(得分:0)

除非您正在进行某种预处理(LESS,SASS等),否则您的服务器应该没有风险。风险在于您的用户可能会以您不期望的方式修改页面。

您的网站是否包含不允许用户修改的任何内容?也许顶部有一个统一的工具栏,任何用户都可以登录他们的仪表板?用户可以修改其页面上的CSS,以便为系统的其他用户创建网络钓鱼攻击。

您打算在网页上放置广告吗?用户可以修改CSS以将任何广告点击定向到他们自己的目的地。

如果页面上的任何内容超出了用户的控制范围,您可能不应让他们上传自定义CSS。

如果用户可以控制整个页面(例如在自定义网站托管环境中),那么自定义css就可以了。