多用途安全令牌是安全漏洞吗?

信息安全 令牌 重设密码
2021-08-14 08:45:55

我们的应用程序具有安全令牌的概念。这些是在生成密码重置电子邮件以及其他操作的电子邮件确认时使用的加密安全随机生成的字符串。令牌是一次性使用的,一天后过期。令牌提供两个关键信息。他们识别特定帐户,并证明持有代币的人是该帐户的所有者。

目前我们的应用程序没有为每个令牌分配特定用途,为重置密码生成的令牌可用于确认另一个操作,反之亦然。

假设令牌保持安全,这可能有什么潜在的安全陷阱,如果有的话,我们的安全令牌是否应该被限制在它们最初生成的目的(例如,只有密码重置令牌可以重置密码等)?

1个回答

我可以预见的问题是它容易受到以下类型的攻击:

  1. 攻击者使您的系统向用户发送密码重置电子邮件。这样的电子邮件包含有效的安全令牌和一些上下文,例如:
    • 告诉用户这是关于什么的;
    • 用户如何完成操作的说明;
    • 用户单击以完成操作的 URL。
  2. 攻击者截获此电子邮件并对其进行掺假以保留安全令牌,但会更改上下文以对其有利。
  3. 用户收到伪造的电子邮件,对掺假的上下文采取行动,从而在不知不觉中执行了攻击者希望他们执行的某些操作。

这是一次现实的攻击还是富有成效的攻击,很大程度上取决于您系统的细节。无论如何,将令牌绑定到它们应该执行的操作可以消除这种风险。