渗透测试的域渗透之域环境信息采集与利用
文章目录
域环境信息采集与利用
课程目标
- 掌握域内常用命令
- 掌握域内信息收集的方法思路
当进入内网后,我们首先需要对当前环境进行判断,要考虑如下两个问题:1.我是谁?(确定当前机器的角色)2.位于何处?(当前机器所处的环境)
为了解决这些问题,及以进一步扩大战果,我们需要进行信息收集。
教材内容
win 7 可以通过文件资源管理使用命令访问服务器 win server R2 2008



使用指令访问远程主机文件资源
net use \\192.168.230.132 /user:ymq P-0p-0P-0p-0
命令分解:
net use: 这是一个 Windows 命令,用于管理网络连接(映射网络驱动器、断开连接等)。\\192.168.230.132: 这是目标计算机的 IP 地址或主机名。表示你要连接到这台计算机上的共享资源。/user:ymq: 指定连接时使用的用户名。这里指定了用户名为ymq。P-0p-0P-0p-0: 这是连接时使用的密码。功能:
这条命令的作用是连接到 IP 地址为
192.168.230.132的计算机上的共享资源。假设这台计算机上有一个共享文件夹或其他共享资源,你可以通过这个命令来访问它。连接成功后,你可以在“我的电脑”或“资源管理器”中看到这个共享资源,就像访问本地磁盘一样。注意:
- 连接成功后,你可以像访问本地文件夹一样访问远程共享资源。
- 如果你只想临时连接,可以使用
net use * /delete来断开连接。- 如果连接失败,可能是由于网络问题、目标计算机未共享资源、用户名或密码错误等原因。
这条命令通常用于在局域网内共享文件,方便用户访问其他计算机上的文件和文件夹。


一、域内常用命令
-
判断当前所在域。
ipconfig /all # 查看网卡配置信息,本机IP段,所在域
net config workstation # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
-
查看当前存在几个域。
net view /domain
-
查看域时间。
net time /domain
-
管理域用户的相关操作(需要管理员权限)。
net user 用户名 密码 /add /domain # 添加域用户 net group "domain admins" 用户名 /add /domain # 将该用户添加至管理员组中
二、信息收集
2.1 本机信息
2.1.1 当前用户信息
whoami /fqdn # 查看当前用户的 FQDN (可分辨名称)
whoami /priv # 查看当前用户拥有的安全特权
whoami /user #显示当前用户的信息以及安全标识符 (SID)。
whoami /all #显示当前用户名、属于的组以及安全标识符(SID) 和当前用户访问令牌的特权

域中常见的用户身份(用户组):
- Domain Admins :域管理员,拥有对域内的其他成员完全控制的权限。
- Domain Controllers :域控制器
- Domain Users : 域用户
- Domain Computers :域内机器
- Domain Guests : 域内来宾用户组,低权限
2.1.2 用户列表信息
net user # 查看本机用户
net user /domain # 查看域内用户

2.1.3 主机信息收集
通过主机信息判断拿到权限的主机是普通计算器,还是服务器。我们可以通过主机的计算机名称、计算机上的文件和端口开放情况来进行判别。
- 若主机上有 “C:\inetpub ”,说明其可能安装有 iis 服务,是一台 Web 服务器。
- 通过开放的端口进行确认,使用命令 netstat 查看主机网络连接状态,若本机监听80、443端口,则可能为Web服务器;若监听53端口,则可能为DNS服务器。
- 通过主机的计算机名称、计算机描述等信息,例如 dc.woniuxy.com,说明此计算机可能为该域的 DC。
2.1.4 进程列表信息
查看进程列表信息,我们可以知道机器上运行者什么程序软件,有无杀毒软件、安全防护软件、VPN、FTP等服务或软件。方便后续利用,如免杀木马制作、提权等。
-
使用系统命令 tasklist。

-
或使用第三方软件,如 D 盾。
2.1.5 系统信息
收集系统信息,如系统版本、补丁信息等。
-
使用系统命令 systeminfo 。

-
使用 wmic 命令查看全部补丁信息。
wmic qfe list full
2.2 域信息收集
我们在域中一般收集域用户信息,域控制器信息,域用户登录日志信息,域内所有用户名、全名和备注等信息,域内工作组信息,域管理员账号信息,域内网段划分信息与域内组织单位信息等。
而我们进入一个域环境,刚开始大概率获取的是域内普通用户权限,所以在前期要收集的信息多以域控的地址、域用户或者系统等信息为主。我们可以使用Windows 系统自带的命令收集域基础信息,以下列举一些信息收集的方法。
2.2.1 查找当前域
确定当前环境存在几个域,域的大致结构。常用命令如下:
net view /domain # 查看当前存在几个域
net view /domain:域名称 #查看当前域中的所有计算机

2.2.2 查找域控
-
通过查看 logonserver 信息找到域控制器。
set logonserver # 查看客户端登陆到哪台域控制器,简写为 set log
-
通过查找 srv 记录,找到域控。
SRV 记录是域名系统 (DNS) 资源记录。 它用于标识托管特定服务的计算机。 SRV 资源记录用于查找 Active Directory 的域控制器。 常用 nslookup 命令来进行查询,如下:
nslookup -type=SRV _ldap._tcp.woniuxy.com # 查找域控制器的轻型目录访问协议 (LDAP) SRV 记录
-
使用 nltest 命令查询工作站与域控间的信任关系。
nltest /dclist:woniuxy.com # 查找dc列表
2.2.3 查找域管理员
在域中若能获取域管理员的权限则可以对域内的其他成员完全控制,不过首先我们找到域管理员用户。我们可以使用 “net group” 命令查找域中的域管理员组成员,如下:
net group "domain admin" /domain # 查找域中的域管理员组成员

2.3 主机发现
通过主机发现了解当前网络中设备的分布情况,查看内网有没有其他机器等,在域内进行横向渗透的时候也需要收集主机端口和ip信息。
2.3.1 查看路由表
route print # 打印当前Windows主机上的路由表

2.3.2 查看 ARP 缓存
arp -a # 查看当前设备上的 arp 缓存记录

2.3.3 使用 ping 探测
for /l %i in (1,1,255) do @ping 192.168.12.%i -w 1 -n 1|find /i "ttl="

三、信息收集工具
3.1 使用 MSF 框架进行信息收集
此处用 msfvenom 制作exe类型的反弹shell木马后直接上传至域用户zhangsan的主机中运行,并用msf监听。
以下展示 meterpreter 模块中使用对应工具进行信息收集:
-
枚举域信息
run post/windows/gather/enum_domain
-
展示补丁信息
run post/windows/gather/enum_patches
-
查看用户最近打开文档
run post/windows/gather/dumplinks
以下 msf 的模块工具需要在中使用,但因为内网一般不和 kali 在一个网段,我们可以使用 MSF 框架中自带的一个路由转发功能,在已经获取 shell 的 meterpreter 的 session 会话中添加一条去往内网的路由,此路由的下一跳转发,即网关,指向这个 session。通过添加路由功能,可以直接使用 MSF 去访问原本不能直接访问的内网资源。
-
主机存活探测
auxiliary/scanner/discovery/arp_sweep ARP # 通过arp扫描 auxiliary/scanner/discovery/udp_sweep UDP # 通过udp扫描 auxiliary/scanner/netbios/nbname NETBIOS # 通过NetBIOS扫描 auxiliary/scanner/snmp/snmp_enum SNMP # 通过SNMP扫描
-
端口扫描
auxiliary/scanner/portscan/syn # 通过 SYN 进行端口扫描 auxiliary/scanner/portscan/tcp # 通过 TCP 进行端口扫描 auxiliary/scanner/portscan/ack # 通过 ACK 进行端口扫描
3.2 其他域信息收集工具
3.2.1 AdFind
-
列出域控制器名称:
AdFind.exe -sc dclist
-
查看域控版本
AdFind.exe -schema -s base objectversion
-
查看所有在线计算机
AdFind.exe -sc computers_active
-
查看当前域内所有用户、用户组
AdFind.exe -users name
-
查看域管账户
AdFind.exe -default -f "(&(|(&(objectCategory=person)(objectClass=user))(objectCategory=group))(adminCount=1))" -dn
-
其他命令
# 查看指定域(luckysec.cn)内非约束委派主机 AdFind.exe -b "DC=luckysec,DC=cn" -f "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn # 查询指定域(luckysec.cn)内的非约束委派用户 AdFind.exe -b "DC=luckysec,DC=cn" -f "(&(samAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn distinguishedName
课程小结
当获取了一台在域内的 Windows 计算机或服务器权限后,我们接下来尽可能地去收集所能获取到的域的相关信息,收集的域的信息越多,拿下域控的成功率越高。而其中收集域控信息与域管理员信息是最为重要的。
- 搭建本节实验环境,完成域内信息收集
- 尝试自己去寻找更多域信息收集的方法与工具
更多推荐



所有评论(0)