OpenID 这么容易破解还是我遗漏了什么?

Dav*_*vid 18 security authentication openid

对于那些允许用户指定 OpenID 提供程序 (OP) 的依赖方 (RP),在我看来,任何知道或猜测您的 OpenID 的人都可以

  1. 输入自己的OP地址。
  2. 让它验证它们是否拥有您的 OpenID。
  3. 在 RP 上访问您的帐户。

RP“可以”采取措施防止这种情况发生,只允许 OpenID 由原始 OP 验证,但是......

  1. 你怎么知道他们这样做?
  2. 如果不更改 OpenID,您就永远无法更改 OP。

sys*_*138 7

OpenID 是您必须信任端点的系统之一。如果RP不可信,那么这种关联中毒是完全有可能的。如果RP确实值得信赖,那么这种攻击就困难得多。不易受到这种攻击的“解决方法”是将本地安全原则(在 ServerFault 上,这将是您在后端数据库中的用户名表示)与外部 OpenID 端点(OpenID URL,ServerFault 允许您关联多个这些)。

您仍然可以通过 RP 部分的 DNS 中毒攻击进行攻击,例如 *.livejournal.com 被重定向到您为攻击特制的 OP。但这是 DNS 中毒攻击,而不是 OpenID 本身的错误。OpenID 只是容易受到 DNS 中毒。