2025愚人节专场 | Writeup
游戏 1 根据题目名字和提示的1.8,猜测是游戏minecraft,应该是开放了服务器端口 先下载游戏https://github.com/HMCL-dev/HMCL/releases/tag/release-3.6.12 选择你对应的版本即可 因为我是macos,所以选择.jar版 确保系统安装了openjdk后,直接启动 第一次启动没有游戏版本,可以点击右边的版本列表下载1.8的版本。然后随便创建一个离线账户名,启动游戏 进去后选择多人游戏,添加服务器,服务器地址填容器给的地址 看到绿色信号图标说明连接成功,点击即可进入 进来后在附近走一走,看到这个牌子 猜测应该有个用户叫admin,按esc断开链接,退出游戏,将刚才添加的用户名删除,添加一个admin 然后再此链接,会发现没有了血条,直接变成了创造模式,说明应该是进入成功 接下来有两种解法 解法1 可以看到上图前面有一个石块在这里显得很突兀,我们可以用/gamemode 3开启透视模式看一下下面藏了什么。可以发现正下方有个小房间,飞下去看一下有什么 看到有一个箱子,用/gamemode 1切换回正常模式后就能打开箱子就能看到有一本password。在最后一页就能看到一串账号密码 解法2 一样进入到admin,之后直接用/kill自杀复活重生点即可直接跳转到带密码箱的小房间 游戏 2 开启容器后尝试访问发现并不能访问。并且结合上一题拿到的admin和密码,猜测是ssh,直接登陆 成功,探索了一圈后发现sudo藏了东西 可以执行/opt/get_flag,看一下这是什么 可以发现是一串shell脚本。并且直接读取flag,但读出来的内容会被tr干掉,所以就要想办法怎么绕这个通配符 先来做个小实验 正常来说会直接过滤掉,但如果我这样做呢? 会发现除了a以外的字符都跳了出来,并且我的a文件是空的。这就说明:在[]进行匹配时会将当前目录下符合匹配条件的文件优先展开,并以丢弃原本的所有匹配符,只以文件名作为通配符内容。也就是说在上面这个例子里,通配符的内容其实就变成了只有[a] 那么答案就显而易见,我们随便找个大写字母创建文件就行,因为flag一般不会有大写符号(后面也给了提示)。并且根据脚本得知工作路径在tmp,所以就在tmp创建