域内利器——AD Explorer渗透测试实战指南

本文详细介绍了如何使用Sysinternals的AD Explorer工具进行域内渗透测试,包括枚举域结构、查找高价值目标、创建快照、命令行操作及外部测试技巧,适合安全研究人员和渗透测试人员参考。

域内利器——如何爱上AD Explorer进行渗透测试

Mark Russinovich的Sysinternals工具(微软)并非新事物。多年来,它们一直是系统管理员的最爱。但可能较少人知道的是,它们对渗透测试员也超级有用!我最喜欢的工具之一是AD Explorer。我的同事Dave Fletcher(曾担任过系统管理员等多个角色)在一次任务中提醒了我这个工具,自那以后,我在内部评估中一直忠实使用它。当然,对于在互联网上暴露域控制器的组织,这在外网测试中也可能有用(继续阅读了解更多关于使用Shodan的内容)。

你只需要一个域账户——任何域账户——就可以与域控制器通信,并让它为你枚举域。它会展示OU结构、用户账户、计算机账户。它可能提供一些帮助,找到像特权用户和数据库服务器这样的高价值目标。

像所有Sysinternals工具一样,它们是独立的可执行文件,无需安装。因此,只要你有写权限,就可以从http://live.sysinternals.com下载它。

但如果你没有写权限或不允许下载可执行文件怎么办?别担心,你也可以直接从运行框或资源管理器窗口给出以下UNC路径,执行它而无需将文件下载到磁盘。 \\live.sysinternals.com\tools\ADExplorer.exe

点击可执行文件直接从微软站点加载到内存中

让我们看几个例子,展示这个工具的强大之处。首先,你可能会找到元数据,给你关于对象的线索,如下面的截图所示。看起来我们找到了CIO的笔记本电脑。我不知道你怎么想,但如果我得知CIO的计算机名,我忍不住要找到方法登录那里并从内存中获取他们的凭据。那通常也是一个相当特权的账户。

可能还有其他属性包含有趣的信息,比如“info”属性。在下面的例子中,我们展示了一个真实测试中的AD记录。数据被编辑过,但足以说明那里的数据非常敏感,并提供了一些优秀的社交工程机会(想想密码重置)!

如果你需要找到高价值目标服务器,那么组织的命名约定通常会帮助你。服务器经常根据其功能命名,例如名称中包含“SQL”或“Sharepoint”。

AD Explorer中的搜索功能也非常出色,帮助你在海量数据中切片和切块,找到你需要的。例如,你需要识别禁用的账户吗?只需选择userAccountControl属性并搜索值514。(实际上,userAccountControl属性是一个代表多个标志的值,其中之一是“禁用”标志,因此这里可能有多个值代表禁用账户,但最常见的是514。)

如果你有足够高的权限,你还可以添加和修改对象和属性。它不允许你做像Active Directory用户和计算机那样多的事情,但这个功能在渗透测试中仍然可能有用。作为演示,我在我的测试域中为用户Grace添加了“Comment”属性。

该工具还提供了保存快照的绝佳选项……

……你可以复制到任何地方,并在AD Explorer中重新打开它以供查看。

查看快照不会让你做任何更改,但对于侦察活动非常出色。 AD Explorer还可以对两个快照进行“差异”比较。这在渗透测试中可能有什么用?当你获得域访问权限时立即拍摄快照。然后,在你进行一些黑客和破解操作后,人们开始更改密码或禁用账户,你可以拍摄另一个快照,看看谁更改了密码或哪些被禁用。据我所知,AD Explorer不允许你修改密码或将状态从禁用更改为启用(即使是DA),但至少你可以检查并避免使用禁用账户,以保持更隐蔽。

现在,关于外部测试……如果你在Shodan上搜索暴露在互联网上的DC,并以这种方式登录一个会怎样?当然,如果你想使用AD Explorer连接到服务器,你需要想出一个域账户。下面的搜索是针对两个常见的LDAP端口和包含字母“DC”的主机名。令人惊讶的是,有很多可以从互联网访问。

或者更进一步,添加端口445以找到可能容易受到Shadow Brokers最近泄露的SMB漏洞攻击的域控制器。(注意:并非所有这些命中都有所有三个端口开放。) 这些服务器之一的妥协可能代表整个域的妥协。哎呀。确保你的组织不在此列表中!

!!2018年5月新增提示和技巧!! 使用AD Explorer协助网络钓鱼诡计。 如果你想从外部电子邮件地址向特定组发送定向网络钓鱼电子邮件,你可以查询AD以查找允许来自外部来源邮件的分发组。属性msExchRequireAuthToSendTo揭示了这一点。当该属性为False时,任何人都可以向该组发送邮件。

你也可以从搜索结果中双击一个组,然后检查该组的member属性以获取成员列表。可以以这种方式提取单个电子邮件地址,但更繁琐。向组发送邮件的能力更快,并且可能使电子邮件对收件人更可信。 从命令行创建快照 AD Explorer是一个GUI工具,但如你所知,GUI访问通常不可用。但从shell访问,你也可以创建快照(谢谢Fletch!)。将可执行文件上传到你有shell访问权限的主机,并使用以下命令: adexplorer.exe -snapshot “” mysnap.dat 或者先用这个命令运行它而不上传: \\live.sysinternals.com\tools\adexplorer.exe -snapshot “” snap.dat 你可以通过在命令提示符下键入“adexplorer /?”来查看所需的语法:

寻找特权账户 此外,如果你正在寻找特权账户,不要忘记检查Builtin Administrators组。这可能包含不一定是域管理员但可能对域控制器具有本地管理员访问权限的账户,以便获胜!

寻找密码 有3-4个字段在大多数AD模式中似乎很常见,UserPassword、UnixUserPassword、unicodePwd和msSFU30Password。在令人惊讶的测试数量中,我们发现其中一个或多个字段填充了实际密码。它们有时通过转换为ASCII十进制等效值来混淆,但这不是“man ascii”不能帮助你的。 这是我们最近拍摄的快照中的一个例子。

这两个都有相同的密码,解码为A B C D ! e f g h 1 2 3 4 5 $ 6 7 8 9 0。 如果你知道使用AD Explorer的任何其他提示或技巧,请告诉我们,我们将添加它们。谢谢!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计