0x00 引言
在域渗透中,对域自然环境的信息收集很重要,如果我们得到了域内管理人员的管理权限,那麼怎么可以迅速掌握域内的网络结构呢?DNS记录毫无疑问是一个非常好的参照。
文中即将详细介绍在域渗透中,获取DNS记录的常见方式。
0x01 介绍
文中即将详细介绍以下几点:
- 根据DNS Manager获取DNS记录
- 通过dnscmd获取DNS记录
- 域内远程控制载入DNS记录的方式
0x02 根据DNS Manager获取DNS记录
检测系统软件:
- Windows Server 2008 R2 x64
挑选Administrative Tools -> DNS。
在Forward Lookup Zones下寻找现阶段网站域名,可以展示现阶段域内的DNS记录,包含IP地址和相对应的IP。
如下图:
0x03 根据dnscmd获取DNS记录
dnscmd:
用于管理方法DNS服务器的命令插口,适用远程桌面连接。
默认设置安裝的系统软件:
- Windows Server 2003
- Windows Server 2008
- Windows Server 2003 R2
- Windows Server 2008 R2
- Windows Server 2012
- Windows Server 2003 with SP1
...
参考文献:
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/cc772069(v=ws.11)
Win7系统软件在运用时必须安裝Remote Server Administration Tools (RSAT)
参照详细地址:
https://support.microsoft.com/en-us/help/2693643/remote-server-administration-tools-rsat-for-windows-operating-systems
RSAT下载链接:
https://www.microsoft.com/en-us/download/details.aspx?id=7887
检测系统软件:
- · Windows Server 2008 R2 x64
命令:
(1)列举DNS地区中现阶段结点的資源记录:
如下图:
(2)列举test.com的信息:
如下图:
(3)例举test.com中的记录,方式1(更详尽):
如下图:
(4)例举testc.com的记录,方式2:
如下图:
結果同DNS Manager获取的记录一致。
0x04 域内远程控制载入DNS记录的方式
方法剖析
前提条件必须得到域管理人员的管理权限。
第一种方式 是先远程桌面连接域控制器,随后在域控制器上实行dnscmd获取DNS记录。
第二种方式是在域内一台服务器上边,实行dnscmd远程控制载入DNS记录。
可是Win7系统软件默认设置不兼容dnscmd,立即安裝Remote Server Administration Tools (RSAT)都不实际。
因此,我试着找寻在未安裝Remote Server Administration Tools (RSAT)的系統上实行dnscmd的方式。
方法检测
向未安裝Remote Server Administration Tools (RSAT)的Win7系统软件上拷贝一个dnscmd.exe,立即实行,結果不成功。
解决方案
根据Process Monitor记录dnscmd的实施全过程,查询缺乏什么文档。
如下图:
发觉缺乏文档dnscmd.exe.mui。
补齐缺乏的文档,再度检测,最后找出解决方案。
在未安裝Remote Server Administration Tools (RSAT)的系統上实行dnscmd,必须考虑下述标准:
1、dnscmd储存在途径C:\Windows\System32下
2、dnscmd.exe.mui储存在C:\Windows\System32\en-US下(该部位较为通用性,还可以在别的部位)
注:dnscmd和dnscmd.exe.mui应用Windows Server 2008 R2下的就可以。
这儿给予一个检测文档(我在Windows Server 2008 R2下得到的):
https://github.com/3gstudent/test/dnscmd.exe
https://github.com/3gstudent/test/dnscmd.exe.mui
注:
仅作检测。
因为dnscmd在远程桌面连接时,未给予键入登录名和动态口令的插口,这儿必须依靠mimikatz的Overpass-the-hash。
最先必须得到域管理人员客户的hash,这儿只有用ntlm/rc4/aes128/aes256
假如得到了域管理人员客户的密文动态口令,可以先将密文变为ntlm,在线加密的网址:
https://md5decrypt.net/en/Ntlm/
填补:应用dcsync得到域内全部客户hash的方式。
域控制器上实行mimikatz:
具体检测
接口测试的主要参数如下所示:
- 域管理人员客户:Administrator
- 动态口令:DomainAdmin456!
- hash:A55E0720F0041193632A58E007624B40
Overpass-the-hash:
那样会弹出来一个cmd.exe
然后应用dnscmd远程桌面连接开展查看:
or
注:这儿要应用FQDN或是主机名。
如下图:
假如想在命令下完成全部步骤,可以选用以下方式:
新创建c:\test\1.bat,内容如下所示:
Overpass-the-hash:
注:cmd.exe下"必须应用转义字符\"
0x05 总结
文中详细介绍了在域内应用Overpass-the-hash完成dnscmd远程控制载入DNS纪录的方式。