嘿伙计们, 内德 又来了。我有一个新的 SMB 预览功能要分享:SMB 身份验证速率限制器。它在Windows Server Insider build 25075中可用。 几周后,它还将出现在 Windows Server Azure Edition Insider 和 Windows 11 Insider Dev Channel 版本中。你不需要做任何事情——它就在那里并且开箱即用——但我希望你想知道更多。
尽管 SMB 服务器默认在所有版本的 Windows 中运行,但默认情况下无法访问,除非您打开防火墙。IT 人员经常启用对 SMB 服务器服务的访问,即使是在不是专用文件服务器的机器上,出于正当原因(例如打开远程文件或复制日志)也是如此。这样做的副作用是 SMB 成为尝试身份验证的一种方式。 知道用户名后,攻击者可以使用常见的开源工具(每秒数十到数百次登录尝试)将本地或 Active Directory NTLM 登录信息发送到计算机,以猜测密码。如果您的组织没有入侵检测软件或没有设置密码锁定策略,攻击者可能会在几天或几小时内猜出用户的密码。关闭防火墙并将其设备带到不安全网络的消费者用户也有类似的问题。
从Windows Server Insider 内部版本 25075及更高版本开始,SMB 服务器服务现在在每个失败的 NTLM 或基于 PKU2U 的身份验证之间实现默认的 2 秒延迟。这意味着,如果攻击者之前每秒从客户端发送 300 次暴力尝试,持续 5 分钟(90,000 个密码),那么相同数量的尝试现在至少需要25 小时。这里的目标是使机器成为一个非常没有吸引力的目标,这是纵深防御技术的一个关键方面。
此设置具有可变时间配置,您可以禁用它。它由 PowerShell 控制:
代码语言:javascript复制设置 SmbServerConfiguration -InvalidAuthenticationDelayTimeInMs n
该值以毫秒为单位,必须是 100 的倍数(即,您可以将其设置为 500、2000 或 4800,但不能设置为 50 或 1337),并且可以介于 0-10000 之间。设置为 0 将禁用该功能。
要查看当前值,请运行:
代码语言:javascript复制获取 SmbServerConfiguration
这是一个演示
旁注:你在我的演示期间看到了什么有趣的东西吗?Windows SMB 客户端重定向器也通过 DFSN 重定向器,导致每个映射驱动器尝试两次连接尝试。我的时间实际上翻了一番,因为每次尝试映射实际上是两次映射,所以我的“攻击”特别受到惩罚;对于 1000 个密码,每秒 45 次尝试的实际速率不到一个小时,这与第一部分中的 22 秒相比仍然是一个巨大的变化:)。这只是我使用映射驱动器和 Windows 来测试它的一个特点,你的红队攻击者可能是运行特定暴力破解工具的 Kali 用户。由于计时器开销,尤其是在繁忙的 CPU 上,每次尝试的 2 秒实际上可能会多出几毫秒。这里的目标是花费更长的时间,所以'
此行为更改对 Kerberos 没有影响,后者在SMB 等应用程序协议连接之前进行身份验证。它旨在成为另一层深度防御,特别是对于未加入域的设备。 在我们评估 Insiders 的使用情况并获得反馈后,默认时间和行为可能会发生变化;某些第三方应用程序也可能对此新功能有问题 - 如果您发现禁用该功能可以解决您的应用程序问题,请使用 Windows 反馈中心提交错误或在此处与我 联系。
这延续了新一代 SMB 和文件服务器安全增强功能,该增强功能首先从 Windows 11 和 Windows Server 2022 中的 SMB over QUIC 开始。我们将在接下来的几个主要版本中更改、弃用或删除许多旧的 SMB 和 pre-SMB 协议行为安全现代化活动中的操作系统,类似于删除 SMB1。在接下来的一年里,我会有更多的分享,敬请期待。
有关 SMB NTLM 身份验证速率限制器的更多信息,请访问 https://aka.ms/smbauthratelimiter。有关 SMB 安全未来的更多信息,请访问 https://aka.ms/filecab 访问我们。 从 Windows Server Insider build 25075 博客文章中获取您的测试机器!