Netwrix 1Secure 提供跨数据和身份的统一可见性——免费试用14天,享有完全访问权限。开始免费试用

资源中心博客

在 Active Directory 中查找弱口令

在 Active Directory 中查找弱口令

Mar 17, 2023

一旦攻击者掌握您网络中任意用户账户的凭证(credentials),就会获得巨大的能力。攻击者以合法用户身份登录后,便可以在其他系统之间横向移动,并通过权限提升来部署勒索软件、窃取关键数据、破坏关键业务运行等。

大多数组织都知道这一点,并采取措施保护用户凭证。特别是,他们使用 Active Directory password policy 来强制执行密码长度、复杂度和历史记录要求,并制定在一定次数的登录失败后锁定账户的策略。那么它们就一定安全,对吗?

不幸的是,并没有。即使已经实施了这些控制措施,仍有许多人会选择容易被猜到的密码,例如 Winter2017Password!@# 因为它们符合公司的标准,但又很容易记住。这些弱密码会使组织面临最简单的攻击方式之一——攻击者通过“猜测(guessing)”在网络中立足。

你可能会惊讶于这种策略的效果有多好。让我们先通过一个密码猜测攻击的例子来了解其工作方式,然后再探讨你如何评估自身的脆弱性并加强网络安全。

密码喷洒攻击如何运作

password spraying 攻击中,攻击者会选择一个常用密码,并尝试用它登录组织中的每个账户。大多数尝试都会失败,但某个账户只要失败一次登录,通常不会触发锁定(lockout)。如果所有尝试都失败,他们就会换用下一张“武器库”中的密码重新再试。若他们发现某个密码仅被贵组织的一位用户选择过,那么他们就已经进入了你的网络,随时准备大肆破坏。

攻击者执行密码喷洒(password spraying)攻击的一种方式,是使用 CrackMapExec ——一种需要付费才能从 Github 下载的实用工具。CrackMapExec 捆绑了一个 Mimikatz 模块(通过 PowerSploit),用于协助凭据收集(credential harvesting)。下面是攻击的工作原理:

步骤 1. 检查 Active Directory 的密码策略和账户锁定(lockout)策略。

为了避免触发锁定(lockouts),攻击者需要知道每个账号最多可以猜错多少个密码。为了选择更可能生效的密码,他们还需要了解公司的 AD 密码策略。CrackMapExec 同时提供了这两项信息。下面是它提供的输出示例:

Image

现在攻击者知道,在该环境中,他们在不触发锁定(lockout)的情况下,每个用户的密码最多可以尝试 9 次。 他们还可以看到,最小密码长度为 5 个字符,并且启用了密码复杂度;这些信息可用于构建自定义的候选密码字典,从而避免在会被策略拒绝的密码上浪费尝试次数。(或者,他们可以使用多个 password lists ——这些通过使用来自 data breach 的密码泄露数据(password dumps)创建的,也同样可以在 GitHub 上方便获取。)

步骤 2. 枚举所有用户账户。

接下来,攻击者需要一份账户列表,用于尝试这些密码。 他们可以通过 LDAP 查询轻松提取所有用户账户的列表,或者按如下方式使用 CrackMapExec 的 rid-brute 功能:

Image

第 3 步:将每个密码都尝试应用到所有用户账户。

只要拥有所有 AD 用户账户列表(users.txt)以及候选密码列表(passwords.txt),攻击者就只需发出以下命令:

Image

该命令将把每个密码都逐一尝试到每个账户上,直到找到匹配为止:

Image

发现你的弱密码

如您所见,在您的环境中没有任何访问权限的攻击者,仍然有一种非常有效的方式来攻破您的 AD 账户:只需猜测其明文密码即可。您可能想知道,您的组织到底有多容易受到此类攻击的影响。

要了解这一点,您可以使用 DSInternals 命令 Test-PasswordQuality。它会提取所有用户账户的密码哈希,并将其与弱密码字典中的密码哈希进行对比。

下面是可用于运行分析的命令。它可以远程执行,并将使用与 DCSync Mimikatz attack类似的方式通过 DC 复制来提取密码哈希。

Image

输出报告的顶部会列出使用可逆加密存储的账户列表。该主题我们在上一篇文章 last post 中已经介绍过。

Image

然后,报告会列出所有在字典中找到的密码对应的账户:

Image

Netwrix 如何帮助您防范弱口令

尽管 Microsoft 密码策略让您能够设置一些约束,但这不足以阻止用户选择攻击者容易猜到的密码。Netwrix 提供 Active Directory security solution,使您能够要求强密码。更好的是,它还可让您从端到端保护 Active Directory。您可以:

  • 识别并缓解 Active Directory 中的漏洞,包括不仅是弱密码,还包括过度权限、影子管理员、过期/停用账户等更多问题。
  • 通过实施强密码策略,并控制 AD 配置与权限,防止凭据被窃取。
  • 检测甚至是高级威胁,在不法分子完成其任务之前加以阻止。
  • 通过自动化响应操作立即遏制安全漏洞,最大限度减少对您业务造成的损失。
  • 以最少的停机时间回滚或从恶意或其他不当更改中恢复。

分享到

了解更多

关于作者

Jeff Warren

首席产品官

Jeff Warren 负责监督 Netwrix 的产品组合,在安全领域的产品管理与开发方面拥有十多年的经验。在加入 Netwrix 之前,Jeff 曾在 Stealthbits Technologies 领导产品团队;他运用自己作为软件工程师的经验,开发创新且面向企业规模的安全解决方案。凭借亲力亲为的工作方式以及解决棘手安全挑战的能力,Jeff 致力于打造真正可落地、行之有效的实用解决方案。他拥有特拉华大学(University of Delaware)的信息系统(Information Systems)学士学位。