域内收集
内容简介
本小节主要讲解拿到域内主机我们一般是如何进行域内主机信息收集的,本节开始我们会尝试进一步深入内网横向,准备下向更深入的内网进发。
权限概览
先看看当前拿到的权限情况,在整个内网中目前我们已经打到了 Vlan 10 区域,且已经拿到了 3 台主机的权限,接下来准备逐个拿下剩下 4 台主机的权限。
域的探测
查看域名
查看当前所在的域为:pigteacher.com
或者使用 :
当前是否在域
使用一些和域交互的命令 /domain
来验证:
可以看到当前我们并不能和域交互,说明我们当前登录的用户不是域用户,无权交互:
哈希读取
MSF 模块本地哈希读取
RDP 登录进 192.168.10.15 主机,以管理员身份运行我们的 shell.exe 上线我们的 MSF,手动使用 getsystem 命令获取到 system 权限:
msf getsystem 提权小姿势
MSF 的 getsystem 提权要迁移进程到 administrator 用户进程提权到 system 权限,如果这个命令叫 admin_to_system,你就很容易理解了,getsystem 不执行权限升级,它只是一种在你已经升级到本地管理员权限后获取系统帐户的方法。 ---三米前有焦皮
- 抓取自动登录密码
接着直接使用 MSF 抓取自动登录的密码,很多用户习惯将计算机设置自动登录,可以使用windows_autologin
抓取自动登录的用户名和密码:
不过我们这台主机没有配置自动登录相关的配置啥都没有抓取到:
- 导出本地用户账号密码
可以使用 hashdump 命令从 SAM 数据库中导出本地用户账号的 Hash 信息:
下面使用文本来简单记录一下:
Administrator:500:aad3b435b51404eeaad3b435b51404ee:5cd2d10e5c7e79a5622e80471a9a2684:::
GG:1006:aad3b435b51404eeaad3b435b51404ee:e19ccf75ee54e06b06a5907af13cef42:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
pig:1005:aad3b435b51404eeaad3b435b51404ee:579da618cfbfa85247acf1f800a280a4:::
但是作为域渗透,这些本地用户的密码认证信息对我们来说不是很有太大的作用,所以得想办法来读取域用户的密码才可以。
MSF kiwi 插件全部读取
system 权限的 meterpreter 下加载 kiwi 插件,这就是著名的 Mimikatz:
然后直接使用 creds_all
命令列出系统中所有的明文密码吧:
下面来解释一下上面这个图片的含义:
- msv credentials:展示本地以及域用户的所有 NTLM 哈希信息
- wdigest credentials:本地及域用户的明文密码信息
- kerberos credentials:域用户的明文密码信息,非域用户为 null
所以很明显,我们利用 MSF 的 kiwi 模块拿到了一个域用户的明文密码信息:
既然有域内用户的明文密码信息的话,我们直接切换到域内用户登录到这台主机吧:
成功使用域用户登录进主机:
域内收集
手工收集
下面使用一些常见的命令来做域内的信息收集:
- 查询当前的登录域
- 查询域内所有的用户
- 查看域管理员用户
- 查询域用户的详细信息
- 查询域下的主机列表
- 查询域下的 DC 控制器(域控)
那此时我们来 ping 一下这个主机就很容易获取到域控主机的 IP 地址(192.168.20.100)了:
自动收集
也可以将常见的收集命令打包成一个 bat 批处理脚本,比如下面就是一个使用 wmic 来做收集,然后将结果到处到 html 中。批处理脚本的内容如下:
for /f "delims=" %%A in ('dir /s /b %WINDIR%\system32\*htable.xsl') do set "var=%%A"
wmic process get CSName,Description,ExecutablePath,ProcessId /format:"%var%" >> out.html
wmic service get Caption,Name,PathName,ServiceType,Started,StartMode,StartName /format:"%var%" >> out.html
wmic USERACCOUNT list full /format:"%var%" >> out.html
wmic group list full /format:"%var%" >> out.html
wmic nicconfig where IPEnabled='true' get Caption,DefaultIPGateway,Description,DHCPEnabled,DHCPServer,IPAddress,IPSubnet,MACAddress /format:"%var%" >> out.html
wmic volume get Label,DeviceID,DriveLetter,FileSystem,Capacity,FreeSpace /format:"%var%" >> out.html
wmic netuse list full /format:"%var%" >> out.html
wmic qfe get Caption,Description,HotFixID,InstalledOn /format:"%var%" >> out.html
wmic startup get Caption,Command,Location,User /format:"%var%" >> out.html
wmic PRODUCT get Description,InstallDate,InstallLocation,PackageCache,Vendor,Version /format:"%var%" >> out.html
wmic os get name,version,InstallDate,LastBootUpTime,LocalDateTime,Manufacturer,RegisteredUser,ServicePackMajorVersion,SystemDirectory /format:"%var%" >> out.html
wmic Timezone get DaylightName,Description,StandardName /format:"%var%" >> out.html
保存为 bat 文件 然后直接放到主机上运行即可: