这个网站的 reset password 会把 token 发送到 email 里面,但是这个 token 可以重置任意的 email。我们从 database.js 里面得知管理员的账户是 admin@armaxis.htb , 于是我们用 test@email.htb 申请一个账户并且拿到重置密码的 token,然后用 hackbar 发送一个 reset-password 的请求,可以在 index.js 里面看到这个,它会读取 post 的三个参数并且重置密码。这样我们重置了管理员账户的密码登录上去。

第二步是,disbute weapon 里面会有个 markdown,这个 markdon 可以读取本地的文件。因为 markdown.js 里面的 parse 函数,会先把 filecontent 下载下来,然后用 base64 编码,于是我们构造 payload 是

d
![img](file:///flag.txt)

这样的图片,然后显示源代码拿到 base64,解码得到 flag

l
HTB{m4rkd0wn_bugs_1n_th3_w1ld!}