我正在构建一个应用程序(一个更具体的CMS),它允许用户将Javascript添加到他们的内容中。实际上没有办法允许Javascript,因此,一些安全问题现在变得非常明显。我们主要关心的是cookie被盗。
为了更多地解释系统,CMS允许单个用户访问多个站点。用户可以邀请其他用户编辑其网站。访问站点的人将执行已添加的任何JS。
以下是我们试图解决的问题:
我们添加了一些cookie防盗保护,这使得欺骗cookie变得有点困难。如果要使用被盗的cookie,您还必须欺骗所有标题以匹配受害者的标题。
我们已经有了一些修复方法,例如将每个网站放在一个单独的子域上,并要求为每个帐户单独登录。也许这是最好的解决方案。
还有其他建议吗?
答案 0 :(得分:2)
感谢您的回答!
我们最终将每个帐户放在unqiue子域上,所以即使cookie被盗,它也只会影响一个站点,而不是所有你拥有的站点。这意味着恶意用户只能访问他们已有的内容。
答案 1 :(得分:1)
如果您有这样一个关键应用程序,您可能需要考虑添加服务器端会话表并将它们与客户端cookie进行比较,以避免高昂的cookie,并将邪恶的bob的手从你的cookie罐中拿出来!
答案 2 :(得分:1)
您可以尝试通过Google's Caja或Crockford's AdSafe之类的内容来清理javascript。
不幸的是,这些解决方案仍在正在进行中,尽管Caja目前非常可靠并且正在积极开发(它只是没有实现)所有的DOM)。