第一次在正赛里解题OvO
纪念一下

先通过代码审计找到todo.js中的api函数

调用此函数并抓包,发现filename处存在文件读取

看到Express,考虑读取package.json

整理后得


考虑读取index.js,方法同上

要得到flag必须用一个有admin权限的用户调用/debug

在package.json中得到lodash版本为4.17.4且app.put('/message', (req, res) => {中存在_.merge,考虑lodash.merge原型链污染

即可使下一个注册的用户获得admin权限

注册后POST至/debug即可得到flag


告别纷扰,去寻找生活的宝藏。