我一直在使用 API,并且与坚持认为 OAuth、OpenID 等远优于自制方法的 Web 开发人员一起工作。现在似乎每个站点都在使用这些,以方便用户使用,同时也是为了安全。我几乎每天都听到它更安全,但我发现这非常难以置信,原因如下:
如果黑客以某种方式获取了您访问某个站点的密码,他就知道可以访问您现在访问的大多数站点。
它使网络钓鱼变得容易 10 倍。有这么多人使用相同的登录名并重复一遍,人们不太可能真正阅读所有内容并检查顶部的 URL。
您能否列出更多不安全的原因,或者您能否向我解释为什么它更安全?我不明白您为什么要忍受集成其中一个的麻烦,因为用户似乎可以在 3 个字段(用户名、密码、电子邮件)中输入而不是单击服务徽标登录(Twitter、Google、 FB 等),输入他们的用户名/密码,点击提交,点击批准。
==更新==
根据要求扩展我的问题。
对于我上面的两点,#1,黑客如何获得它并不重要。我不确定如何准确地扩展它。你可以暴力破解它,猜测它,使用忘记的密码并对常见问题进行字典攻击等。但无论你怎么做,我的观点是,访问 1000 个服务器的 1 个密码远不如访问 1000 个不同服务器的 1000 个密码安全网站。我个人可以猜出我的一些朋友和家人的密码,并且可以访问各种帐户。我什至不必去找他们。当我浏览网页时,我只是登录...如果我是一名黑客,其中许多密码很容易破解。我朋友的一些密码是,,pepsi
(tina
然后是出生年份)123456
,,和其他愚蠢的密码。不过我最喜欢的是tomcruisesucks
大声笑。
对于第 2点,为了进一步扩展,我可能会访问http : //wired.com、http ://klout.com、http : //twitter.com、http : //thenextweb.com,它们都有 Twitter登录。我信任这些网站(在大多数情况下),所以老实说,我不再检查用于登录的弹出窗口的 URL,而且我认为大多数人不会。该弹出窗口可能很容易被黑客入侵他们的一台服务器,或一个邪恶的员工,或者只是一个机器人通过 twitter 发送给人们的虚假应用程序站点,然后多人登录到这个虚假应用程序,但使用推特登录。
人们已经习惯了看到他们不再看的相同登录页面。如果这个帖子足够流行,我可以很容易地在 Twitter 或 FB 上做一个超级简单的测试,方法是向每个人发送一个虚假应用程序的链接,有一个看起来像 Twitter 或 FB 的弹出窗口,他们就会登录。我保证。如果我让登录屏幕转到http://bankofamerica.com或http://paypal.com,他们会问自己为什么我在这里,他们为什么需要这些信息等。使用的相同网站在实践中一遍又一遍地登录是非常糟糕的。
这是我的扩展讨论点;)