我们的应用程序具有安全令牌的概念。这些是在生成密码重置电子邮件以及其他操作的电子邮件确认时使用的加密安全随机生成的字符串。令牌是一次性使用的,一天后过期。令牌提供两个关键信息。他们识别特定帐户,并证明持有代币的人是该帐户的所有者。
目前我们的应用程序没有为每个令牌分配特定用途,为重置密码生成的令牌可用于确认另一个操作,反之亦然。
假设令牌保持安全,这可能有什么潜在的安全陷阱,如果有的话,我们的安全令牌是否应该被限制在它们最初生成的目的(例如,只有密码重置令牌可以重置密码等)?
我们的应用程序具有安全令牌的概念。这些是在生成密码重置电子邮件以及其他操作的电子邮件确认时使用的加密安全随机生成的字符串。令牌是一次性使用的,一天后过期。令牌提供两个关键信息。他们识别特定帐户,并证明持有代币的人是该帐户的所有者。
目前我们的应用程序没有为每个令牌分配特定用途,为重置密码生成的令牌可用于确认另一个操作,反之亦然。
假设令牌保持安全,这可能有什么潜在的安全陷阱,如果有的话,我们的安全令牌是否应该被限制在它们最初生成的目的(例如,只有密码重置令牌可以重置密码等)?
我可以预见的问题是它容易受到以下类型的攻击:
这是一次现实的攻击还是富有成效的攻击,很大程度上取决于您系统的细节。无论如何,将令牌绑定到它们应该执行的操作可以消除这种风险。