【问题标题】:Hacked. How can a hacker get to the individual-url (token) of my users?被黑了。黑客如何获取我用户的个人 URL(令牌)?
【发布时间】:2015-04-26 01:33:39
【问题描述】:

您认为黑客如何进行以下操作,您将如何防止(寻找一些有用的链接、关键字或对情况的评估)?

他们是一个网站,用户可以在其中注册并获得邀请电子邮件。邀请链接 (https) 包含令牌。它看起来像“https://www.example.com/token/123456”(123456 是令牌)。

似乎在我的用户单击此链接的第二天,其他人也使用了相同的链接。

这怎么可能?如何防止这种黑客攻击?

谢谢

编辑: 对不起,我应该提供更多信息。我可以消除这样的观点,即这不仅仅是随机令牌变化的尝试。为什么?在其中一位用户使用该链接后的第二天使用确切的令牌。令牌是超过 20 个字符的哈希令牌。

【问题讨论】:

  • 令牌是如何生成的?尝试在成功后停用令牌,并添加相对于其生成日期的到期日期。

标签: url token urlhacks


【解决方案1】:

他们可以只运行一个脚本来尝试令牌值中的任何数值。

这很容易。你的令牌有多长?我还建议使用哈希令牌而不是简单的数字来限制自动处理,因为“hack”是编写脚本来尝试一个数字,得到一个结果 - 存储结果,然后 number = number + 1;

编辑:你有什么证据表明你被黑客入侵了?一旦有人单击了令牌链接,您的脚本中会发生什么?

【讨论】:

  • 对不起,我应该提供更多信息。我可以消除这样的观点,即这不仅仅是随机令牌变化的尝试。为什么?在其中一位用户使用该链接后的第二天使用确切的令牌。该令牌是超过 20 个字符的哈希令牌。
【解决方案2】:

一个简单的应用逻辑可能是:

  1. 定义一个字符串模式。喜欢:secretconstant%email
  2. 散列字符串,现在您有了令牌(并保存它)
  3. 使用令牌创建您的邀请网址

如果有人使用随机令牌调用您的服务,您可以拒绝他们,因为您的信息系统没有保存该令牌。 然后,如果您拥有令牌,则必须将其丢弃,这样链接将不再有效。

您还可以检查注册时使用的电子邮件是否与用于计算令牌的电子邮件相同..所以您可能会阻止注册!

【讨论】:

    猜你喜欢
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    • 2021-06-15
    • 2018-08-27
    • 1970-01-01
    • 2019-05-22
    相关资源
    最近更新 更多