来污染一下开发调优的发帖质量哈哈
此贴不是writeup 所以我就拿来讲故事了
今年r3kapig举办ctf比赛的时候我有一个认识的高中大佬放了暑假 随便瞎玩就来摸ctf比赛了
5号的时候,跟我发了条私聊
misc题有mc不是很意外,我们当时研究去年的题的时候就有了一道hide and seek,不过真的看到题目的时候就感觉到棘手程度了
Description
Here, r3girl awakes in a narrow yard, surrounded by cold stone walls and silent watchers bound to r3kapig’s will, punishing anything that dares to defy physics. The walls aren’t impossibly tall, but just high enough to stop a normal jump.
They say escape lies not in brute force, but in stepping that bends the rules ever so slightly.
这道题叫 R3craft ,附件是服务器的服务端(里面内容放在下面,有grimAC反作弊插件以及获取flag的插件),但实际上需要进去赛事方给的服务器跳到最外圈1.5个方块高的石墙上(也就是越狱)然后打命令/flag获取
- 服务器人数限制1人
- 有反作弊且flag插件会计数是否大力出奇迹
- 给你拿来审计的服务器端没有flag(废话)
(base) PS D:\lab\r3craft> tree /f
D:.
│ bukkit.yml
│ Dockerfile
│ eula.txt
│ server.properties
│ start.sh
│
└─plugins
│ grimac-bukkit-2.3.72-aaeded18c.jar
│ R3Craft.jar
│
├─GrimAC
│ config.yml
│ discord.yml
│ messages.yml
│ punishments.yml
│
└─R3Craft
config.yml
这道题他的描述要求你使用巧劲来解决 而不是粗暴hack服务器
比如前面说的第二点在flag插件的配置文件有很有意思的代码
kick-violation-threshold: 0 # So don't even try hacking.
flag:
那这道题怎么办呢?
在经过前期一些对服务器内的试错探索,我个人把重心倾向放在找mc的bug上。比较巧的是,我确实有在关注这些东西。所以我基本上把这道题看成密室逃脱了。我个人的倾向是1e-7碰撞箱机制的相关漏洞
题外话,MC密室逃脱本身是个很有意思的领域 基本都是在用bug 特性以及对游戏的熟悉来逃脱看似不可能离开的密室
我会推荐关注一个这方面顶尖的youtube主叫Kenadian(b站有一个授权的搬运字幕组-> https://space.bilibili.com/3546855008897249)
想到这个并不是空穴来风。我之前看过一个在浮点数层面精准卡在墙内来爬墙的视频(但是版本要求1.17之前)
然后就去问gemini去筛选漏洞,最后找到了我们的主角:MC-276267
漏洞报告如下:Mojira Public Bug Tracker
这里只提issues下的简单复现方法:
An easy reproduce method:
Create a normal superflat world.
/setblock 30 -60 30 birch_slab
/fill 31 -60 31 31 -59 32 birch_planks
Then
/tp @s 30.7 -59.5 30.65 -30 50
(X should between 30.699999889 and 30.700000088, Yaw should between -0.01 and -44.99)
Then run 1 gametick (0.05s) then jump, you can jump onto the birch planks, which is 1.5 blocks high.
理论存在 问题是他在服务器要求的1.21.6上可以复现吗?
我开了个超平坦
用的站内野兽图床 如果看起来有问题请开梯子
完结撒花 唯一可惜的是到服务器上实在很难卡,所以最后我们没能拿到flag 不过思路找对了就很开心了
顺带提一下这个漏洞也是跟描述中的"stepping"是相呼应的,我后面也找了认识的佬确认了我的思路是官方正解。
扩展阅读:1.21+关于"Stepping"相关方法的小研究 - 哔哩哔哩
r3k在我解完这道不久又发了一个R4craft——同样的服务器端,同样目标,但是要求思路不同
Description
WEE-OO WEE-OO WEE-OO! Subject has escaped!
The silent watchers stood powerless as r3girl’s forbidden step twisted movement and collision, carrying her beyond the cold stone walls. For a fleeting moment, she walked free — proof that the rules could be bent.
But the alarm reached r3kapig’s high architects. At once, they moved to rewrite the very fabric of this narrow yard, sealing each loophole, tightening the laws she had dared to defy.
r3girl ran fast into the void beyond — but before freedom could truly take shape, a silent shot from above turned her vision to darkness. Now, under the steady pulse of red lights and the watchers’ unblinking gaze, she awakes once more, trapped here again…
我看dc服务器那边的writeup说是实际上有逻辑洞可以搞 我很菜 我就不继续深入了






