Weasel Walkthrough

Box Info

官网在这里:Weasel

I think the data science team has been a bit fast and loose with their project resources.

image-20250419124028322

The Hack

对目标 IP 进行端口发现和对开放的端口进行应用版本发现

nmap -sC -sV 10.10.236.197 --min-rate 250 

发现 22 端口 SSH 服务,135 端口 RPC 服务,139 和 445 端口 SMB 服务,3389 端口远程桌面服务和 8888 端口 HTTP 服务

image-20250418170901712

先来看开放在 139/445 端口的 SMB 服务,以下命令枚举失败

nmap -p139,445 --script=smb-enum-* 10.10.236.197
nmap -p139,445 --script=smb-vuln-* 10.10.236.197
smbmap -H 10.10.236.197

image-20250418172900061

使用 smbclient 匿名登陆

smbclient -N -L //10.10.236.197

发现 datasci-team 共享目录

image-20250418173134244

远程登陆 datasci-team 共享目录

smbclient -N //10.10.236.197/datasci-team

枚举其中文件

image-20250418173626910

将文件保存至本地,发现泄露了 token 文件

image-20250419102917847

以及在 requirements.txt 中泄露两个名字

image-20250419102833740

再来看看 RPC 服务,使用 rpcclient 远程登陆

rpcclient -U "" -N 10.10.33.243

似乎是权限不够没什么信息都没枚举出来,全是 ACCESS_DENIED

image-20250419103100165

最后来看 8888 端口,先对 WEB 目录进行枚举

dirsearch -u http://10.10.33.243:8888/

发现泄露 /robots.txt ,也泄露登陆页面

image-20250419103402761

访问 WEB 主页面,发现需要 token 登陆

image-20250419104231050

使用 SMB 共享中泄露的 token 成功登陆,发现是 SMB 文件共享页面

在 New 处发现可以新增终端

image-20250419104438413

新增终端,看看该用户能执行什么 sudo 命令

sudo -l

发现可以不需要密码执行 /home/dev-datasci/.local/bin/jupyter

image-20250419112003351

但是并没有 /home/dev-datasci/.local/bin/jupyter 文件,且 /home/dev-datasci/.local/bin 是权限 777 目录

image-20250419112209702

直接将 /bin/bash 命令复制进 /home/dev-datasci/.local/bin/jupyter 文件

cp /bin/bash /home/dev-datasci/.local/bin/jupyter

直接 sudo 执行该文件,获得 root 权限

image-20250419112500868

很可惜,里面并没有 root.txt

image-20250419112646818

猜测我们所在的 WSL 中,主作系统是 Windows,目前我们使用的是安装在 WSL 中的 Linux

如果以前使用过 WSL,则内部文件系统将装载在 WSL Linux 的 /mnt 文件夹中,在 /mnt 中发现空白的 c 文件夹,将 Windows 的 C: 盘挂载到 Linux 的 /mnt/c 目录

mount -t drvfs 'c:' /mnt/c

image-20250419123231393

进入 C 盘,开始 Users 中发现可访问的 Administrator 目录

image-20250419123526532

在 Administrator 目录中发现 可访问的 Desktop 目录

image-20250419123627336

进入 Dessktop 目录,获得 root.txt

image-20250419123805744

在工作目录发现 dev-datasci-lowpriv_id_ed25519 ,ed25519 是一种基于椭圆曲线的数字签名算法,常用于 SSH 密钥或加密场景,结合目标主机开放 SSH 服务,那就不难猜测这个就是突破边界的方式

image-20250419105142552

由于 SSH 私钥的名称包含 id 字样,猜测 id 前面的 dev-datasci-lowpriv 为 SSH 登陆的用户名

image-20250419105718362

将私钥保存至本机,防止报错,将权限更改为 400

image-20250419105945757

登陆 ssh

ssh -i ssh dev-datasci-lowpriv@10.10.57.233

成功远程登陆

image-20250419110155776

切换至 powershell ,列举当前目录

image-20250419110756537

由于开放 3389 远程桌面协议,先考虑进入 Desktop ,在其中获得 user.txt 内容

image-20250419110924097

Final

image-20250419123916999