openid 安全吗?

openid 是一个开放的SSO(单点登录)项目,他的作用主要是帮助用户通过一次登陆,实现在很多应用上的自动登陆。因为没有看到详细的技术实现资料,所以以下的推测也许有问题。
OPENID的协议,从 openidenabled的资料翻译来看是这样一个流程:

1、用户把自己的单点登陆域名(如:tenglong.sohu.com)提交给自己需要登陆的网站(如:blog.sohu.com)
2、网站读取接受到的域名,获得用户的身份验证服务器地址;
3、网站将用户重定位到身份验证服务器,
4、身份验证服务器向用户确认是否该网站是否用户要登陆的网站;
5、如果得到用户确认,则身份验证服务器携带认证信息,将用户重定向到网站。
6、网站通过认证信息,确定用户的身份。
下边讲一下如何 HACK 此协议:
假设我们想冒充用户(tenglong.sohu.com)
1、模拟上边的步骤(2),获得这个用户的身份验证服务器;
2、自己建立一个DNS,将刚获得的身份验证服务器的解析修改为我们可以控制的一个服务器;
3、我们以(tenglong.sohu.com)的身份登陆任何一个服务;
4、当步骤进入第(3)步的时候,身份验证服务器就已经是我们控制的服务器了;
5、我们自己控制的服务器,附加一个伪造的用户身份确认信息,重定向到服务网站;
6、服务网站根据我们伪造的身份确认信息,确定了我们是我们需要冒充的用户(tenglong.sohu.com)
――――――――――
再次申明:因为本人无法掌握OPENID的详细协议内容,所以无法知道协议中是否还有其他验证过程来规避以上漏洞。如果有掌握详细协议的朋友,请给我一份,URL地址也可以。

本文出自 “网络新势力” 博客,转载请与作者联系!

你可能感兴趣的:(职场,单点登录,OpenID,休闲,Passport)