为什么输错密码比不输密码要花更多时间

信息安全 密码 验证
2021-09-01 06:37:21

我输入密码以登录 Win 或 Linux。

案例1:我猜对了。几乎是瞬间反应。

案例2:我拼错了。这需要一段时间,然后反弹。

为什么识别错误密码和正确密码需要更长的时间?鉴别的时间不应该一样吗?

4个回答

验证错误密码和正确密码需要相同的时间。但是,当密码错误时,操作系统会让您稍等片刻。这是一项安全功能,以阻止尝试“潜在密码”的人(特别是具有一些电子技能的人,插入一些计算机认为是键盘的电路,但实际上它会快速尝试大量密码) .

这样的事情在网络环境中效果不佳(如果攻击者想快速尝试 100 个密码,他可以并行打开 100 个连接)但密码验证码通常在网络和本地登录之间共享。

当您输入不正确的凭据时,操作系统会连接到域控制器(对于 Windows 或其他操作系统的等效项)以查看您的凭据是否已更改(例如,管理员重置密码,锁定另一个 DC 上的失败身份验证尝试)。这可能需要几秒钟的时间,尤其是在 DC 繁忙或远程的情况下。

这与增加的延迟是分开的。例如,Windows 将在第三次和随后的登录尝试失败后增加越来越大的延迟,以防用户试图猜测用户名而不仅仅是密码。

确定是的,但是您必须检查锁定策略,从域中获取/更新最近的错误尝试,记录安全事件等。

此外,一些系统只是增加了延迟,以减慢某人尝试用户名字典等的速度。

这可能是一个安全问题。如果一个坏人可以尽可能快地输入数千个密码(或自动化!),他们可以很快闯入。如果每次失败都会花费他们几秒钟的时间,那么系统就会变得难以用蛮力攻击几个数量级。