【问题标题】:What is important to log for failed authentication attempts?记录失败的身份验证尝试有什么重要的?
【发布时间】:2010-11-23 14:56:13
【问题描述】:

我正在为使用 PHP 编程的在线游戏开发身份验证系统,我想确保它是安全的。为了解决这个问题,我认为日志记录会很有用(对我来说是一个很好的实践,也是对系统日志记录类的一个很好的测试)。我不想使用 Web 服务器的日志,但我想知道对于失败的身份验证尝试记录什么是重要的。

我已经考虑了一些选项,但我不想错过任何重要的事情。以下是我目前考虑过的列表。

  1. 什么都没有(也许没有意义?)

  2. 整页网址

  3. 用户名尝试

  4. IP地址

  5. 时间/日期

    您还建议确保记录哪些其他事项?

【问题讨论】:

    标签: php html authentication logging


    【解决方案1】:

    尝试的密码。 推荐人(如果有的话)(尽管出于安全原因,它可能没有多大帮助)。

    【讨论】:

    • 我认为存储密码对您的用户不利。例如。有人不小心输入了他的电子邮件密码。而且因为你也有他的邮箱,所以不难误用。
    • 我同意彼得的观点。我认为我目前没有有效的需要存储尝试的密码。我认为这不会提供任何闯入或滥用系统的线索。
    • 如果密码是“0x1de”并且失败的尝试是“氧化物”,这显然不是入侵,只是用户忘记了密码修改规则。
    • ...你不应该知道的,因为你是在散列你的密码而不是存储原件,对吧?
    【解决方案2】:

    首先,您有什么顾虑?

    您是否试图找出软件中的弱点?

    • 用户名、完整页面 URL、时间/日期

    担心黑客入侵?

    • IP 地址、用户名、时间/日期

    只是想占用服务器硬盘上的空间。

    • 用户名、整页 URL、IP 地址、时间/日期

    :)

    【讨论】:

    • 我发现这个答案是最完整的,因为它预测了不同的场景。谢谢!
    【解决方案3】:

    “我想确保它是安全的。”

    再多的日志记录也不会让您的系统更安全。

    但是,如果您的原因是收集失败尝试的统计数据并寻找可能的问题区域(例如,您可以禁止 IP 地址或帐户,或识别记忆力非常差的用户),我会选择记录日期、时间、用户名、IP 地址和尝试的密码。

    由于 DHCP、NAT'ing 等原因,IP 地址没有您想象的那么有用,但它仍然有一定的用处。

    这些都不会防止闯入,因为成功的闯入无论如何都会有真正的密码(来自社会工程或键盘记录器)。

    我们曾经在一家大型电信公司玩得很开心,其现场工程师登录以获取接下来几个小时的工作量。

    我们会看到他们连接并输入错误的密码,然后在 LDAP 中查找他们的真实密码并在手机上给他们打电话。 “对不起,Bob,但您似乎无法登录。您应该使用 'octagon' 作为密码,而不是 'hexagon'。”

    这把他们吓坏了,很明显,那时我们的工作并没有过度紧张:-)

    【讨论】:

    • 您是对的,我理解在门上安装挂锁与在同一门上安装摄像头之间的区别。我正在寻找那个虚拟相机来帮助我找到“可能的问题区域”的线索。感谢您的信息和回复。
    猜你喜欢
    • 2014-05-29
    • 2014-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 2020-12-03
    相关资源
    最近更新 更多