首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从外部Active Directory获取域管理员

我对信息安全的兴趣也从 web 开始。从最初的兼职到如今的全职,活动目录(Active Directory)测试已成为我最喜欢的渗透测试类型。

这篇文章是关于我在今年早些时候为客户做内网测试的情景。这个客户的网络情况非常的复杂,而且之前我已做过测试,因此我有点担心我无法完成这个测试任务。而在此之前我们仅仅只是管理它。

我在内网跑的第一个工具是Responder。该工具将会为我获取本地子网上的LLMNR或NetBIOS请求中的Windows散列。但不幸的是管理员竟然禁用了LLMNR和NetBIOS请求。尽管从之前的测试中已经预料到了这种情况,但在OSCP课程中我学到一个道理 - 就是如果门是敞开的,破窗而入就没有任何意义。

运行Responder后,我捕获到了以下哈希值这是我非常震惊:

以上显示的信息均已做过特殊处理,保护客户的隐私是安全测试人员的职责。

在这里,我们可以看到主机172.16.157.133向我们发送了帐户FRONTDESK的NETNTLMv2哈希值。

使用Crack Map Exec检查此主机的NetBIOS信息(也可用其它工具),我们可以检查这是否是本地帐户哈希。 如果是的话,则“domain”部分就是用户名了:

即2-FD-87622应与主机的NetBIOS名称匹配(这种情况下)。使用CME查找IP,我们可以看到主机匹配的名称:

接下来我们来尝试破解这个散列以获取明文密码。在Hashcat的帮助下,密码很快就被破解了出来。

现在我们已经获取到了front desk机器的凭据了。我们再次使用CME扫描,但不同的是这次我们传递了已破解的凭据:

我们可以看到Pwn3d!从结果可以得知这是一个本地的管理员帐户。这意味着我们现在拥有了dump本地密码散列的权限:

注意看

这一次,我们看到的是密码的NTLM哈希值,而不是Responder之前捕获的NETNTLMv2“challenge/response”哈希值。Responder捕获的散列,与Windows在SAM中存储的格式并不同。

下一步我们开始来使用这个本地管理员哈希。这里需要特别说明的是,我们并不需要特意去破解这个哈希,可以直接通过哈希传递的方式来利用它:

我们只能使用存储的NTLM格式传递哈希值,而不是NETNTLMv2网络格式(除非你想执行“SMB中继”攻击)。

令我们惊讶的是,STEWIE机器使用的密码与本地管理员密码相同。 查询此主机的NetBIOS信息:

我们可以看到它是MACFARLANE域的成员,并且是客户端Active Directory的主要域。

也就是说,一台域外机器的本地管理员密码在内部服务器被重用。现在,我们可以通过Metasploit PsExec模块,将NTLM哈希作为密码传递给目标机器登录并控制机器:

成功执行后我们得到了一个shell:

我们可以加载Mimikatz模块,读取Windows内存查找密码:

现在我们获取到了DA(域管理员)帐户的详细信息。最后,我们使用CME在域控制器上执行命令,将自己添加为一个DA(纯粹是为测试,在实际渗透中为了更加隐蔽,我们可以使用已发现的帐户)。

请注意,以上命令中的/y参数的作用是让Windows允许我们添加的密码长度大于14个字符。

进入到域控制器远程桌面的截图,可以作为成功利用的证据写进报告:

针对这次测试中的问题,我的建议是禁用LLMNR(在策略中),这样攻击者就不会获取初始的访问权限,直至对整个域的渗透。当然除了禁用LLMNR外还有其它的防护措施,例如使用LAPS管理本地管理员密码,并设置FilterAdministratorToken防止本地RID 500帐户进行SMB登录。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180319B16FVF00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券