2011-03-25 136 views
0

我正在基于@anywhere的Web-Page上开发Twitter应用程序。Twitter @anywhere安全漏洞?

我认为@anywhere是Facebook Javascript SDK的Twitter版本(也许这就是我错了)。

无论如何,事情是这样的。

您在网页上放置了“与Twitter连接”的代码,如果用户使用Twitter登录并授权您的应用程序,那么您可以随心所欲地做任何事情。

因此,如果@user_a使用他的Twitter帐户登录并访问您的网站,您可以做一些花哨的事情,例如在用户帐户或其他内容中显示@user_a追随者或推文。

问题就是这样发展的。假设@user_a已登录到您的应用程序中,然后@user_a从twitter中注销(因为它是公用计算机:/),然后其他人以@user_b身份登录到Twitter。如果@user_b转到您的@anywhere网页,则IT将看到@user_a已登录的所有内容! D:

Twitter表示这一切都很好,因为一切都基于cookie,并且您应该提供一个按钮让该人员从@anywhere注销您的网站。对我来说这听起来不切实际,因为如果你(用户)想停止使用Twitter,你只需从网页上注销,并且应该是全部的(如在Facebook上);你不应该记住,你已经连接到Twitter的网站,并支付他们的访问退出,只是为了保护自己免受别人使用你的帐户。而且,更糟糕的是,这个cookie可能很容易被盗取,而且你知道这个故事的其余部分。

我做错了什么?我是否认为@anywhere API与它的意图不同?

+0

他们可能在巨大的交通下我认为...我希望我的应用程序很慢,并定期因为交通量大而下降。 – cherouvim 2011-03-25 16:31:38

回答

0

@anywhere不会将自己宣传为SSO,所以它不需要Single签发机制。这个想法是使用@anywhere登录到其他网站,在这一点上,这些网站负责处理会话,包括何时签署用户。就像用户使用两个不同的密码登录到站点a和站点b一样,他们有责任对每个站点进行签名。

尽管@anywhere令牌保持活动状态可以允许后续用户使用,但令牌只会在几小时内激活,从而限制潜在的损害。

+0

那么,好的,当他们离开我的网站时,退出应该由我自己处理。 – almosnow 2011-03-29 00:36:25