2007年9月28日星期五

Google的XSS(跨站点脚本)攻击漏洞

最近几天,不寻常的大量与Google有关的安全问题在互联网上被报导。举例来说,一个开发者被指能够通过插入一个Gmail后门,来引导用户访问一个专为窃取隐私数据而编写的网页。并不全部,但其中许多漏洞会使你的Google 帐户 cookie被所谓的cross-site scripting (XSS)攻击盗窃。之所以被称为"cross-site"(跨站点)是因为cookie信息由Google.com(支持被读取)被传送到某个随机指定域名(不支持被读取)。基本上,这种攻击可以在某些人找到一些方法在任何*.google.com的域名(如:Google Calendar(日历)、 Google Docs(文件)、 Google Reader(阅读器), Google News(资讯)等)中,不受限制地发布自己的HTML/JavaScript代码。

现在,co-editor Tony Ruscoe偶然发现了另一个Google的XSS(跨站点脚本)漏洞。通过在Google Docs(文件)中发布他特别准备的一个利用IE的漏洞的代码,将这一公开发布的文档的链接发送给Philipp,Philipp在点击这一链接后,如果Philipp的Google 帐户处于登录状态,Tony Ruscoe即可获得其Google 帐户 cookie(注意,整个过程中只是在google.com的域名下进行的,并不需要进入Tony的域名)。这一漏洞已被报告给Google 安全中心,Tony和Philipp暂时不会透露如何重现这一漏洞,以使Google有时间来修复这个漏洞。

在获得Philipp的Google 帐户cookie后,Tony可进行以下活动(当然,这得到了Philipp的许可):

  • 阅读Philipp的Gmail邮箱中的邮件主题以及第一句话。这可以通过添加一个Gmail Gadget到iGoogle中并使用超宽标签布局来实现。
  • 查看Google Analytics(分析)的统计数据,包括其他向Philipp的Google 帐户共享查阅权限的站点的统计数据。
  • 查阅许多Philipp的iGoogle Gadgets,例如:待办事项。
  • 获得全部Google Notebook的非公开内容。包括其他向Philipp共享非公开内容查阅权限的Google 帐户的Google Notebook的非公开内容。
  • 查阅Philipp的Google Reader。
  • 查阅Philipp的Google Docs(文件)中的文档列表。

但利用这个漏洞,Tony不能进行这些活动:

  • 他不能查看Philipp的全部邮件。
  • 他不能查看Philipp的所有Google Docs(文件)中的文档内容。
  • 他不能查看Philipp的全部iGoogle Gadget,例如:Google Talk Gadget需要另行登录。
  • 他不能修改Philipp的Google 帐户密码以获得所有Philipp的Google 服务的权限。

这是Tony在Philipp的帐户下活动的一些截图:

Google XSS Exploit

通过这个漏洞,攻击者可以获得受害者的Google 帐户 cookie,并且用以获得部分隐私数据,但并不能获得全部数据。要避免受到这种XSS(跨站点脚本)攻击漏洞的危害,最好的方法是除了在你需要使用Google 服务时,其它时间都保持Google 帐户处于登出状态。并且除了注意不点击不被信任的域名的链接外,也不要点击那些看似可以信任的但是是由不被信任的人所发来的链接(via Philipp)。

Google所有服务的数据都掌握在同一个帐户中,因此如果Google 账户被盗,造成的隐私数据外泄的损失是极为巨大的。正如我在我们需要一个开放到什么程度的Google中所说的,我不担心Google会将我的隐私数据外泄,但如果Google存在安全漏洞造成隐私数据被盗,那会对用户造成极为严重的损失。因此比起不断地向公众公开解释其隐私政策,我更希望Google花费更多精力在提高其帐户的安全性上。

Google的安全漏洞的爆出不可谓不频繁,所幸的是至今没有造成什么大规模的隐私数据外泄事件。但如果Google 帐户还是存在那么多安全隐患,那我又怎么可能放心开放我最私密的网络浏览历史和搜索历史数据给Google,以换取个性化的搜索结果呢?我相信如果Google不能安全问题给予足够重视,这必将成为其日后众多涉及用户隐私数据的发展计划的最大瓶颈。

没有评论: