域渗透——DNS记录的获取
副标题[/!--empirenews.page--]
0x00 前言 在域渗透中,对域环境的信息搜集很关键,如果我们获得了域内管理员的权限,那么如何能够快速了解域内的网络架构呢?DNS记录无疑是一个很好的参考。 本文将要介绍在域渗透中,获取DNS记录的常用方法。 0x01 简介 本文将要介绍以下内容:
0x02 通过DNS Manager获取DNS记录 测试系统:
选择Administrative Tools -> DNS。 在Forward Lookup Zones下找到当前域名,能够显示当前域内的DNS记录,包括主机名和对应的IP。 如下图: 0x03 通过dnscmd获取DNS记录 dnscmd: 用来管理DNS服务器的命令行接口,支持远程连接。 默认安装的系统:
... 参考资料: 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 测试系统:
常用命令: (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:WindowsSystem32下 2、dnscmd.exe.mui保存在C:WindowsSystem32en-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的方法。 (编辑:广西网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |