问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
Grafana 任意文件读取漏洞分析(CVE-2021-43798 )
漏洞分析
最近大家一直都在分析log4j,但是好像都将在log4j前几天爆出的Grafana 任意文件读取漏洞(CVE-2021-43798 )忘记了,这个漏洞危害也不算太小,可以造成任意文件读取,配合其它漏洞打组合拳,也能造成不小的危害
Grafana ======= 使用 Grafana,可以通过美观、灵活的仪表板创建、探索和共享您的所有数据,将数据美观化、可视化。 ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-9679ba543d575306bf6a6cbad75ba4c1fc2b2ed1.png) 高严重性的受影响版本 ========== Grafana 8.0.0-beta1 到 8.3.0 漏洞分析 ==== <https://github.com/grafana/grafana/compare/v8.3.0...v8.3.1> 我们看到v8.3.0->v8.3.1只修改了pkg/api/plugins.go中的代码 ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-102b71c947c0d936e32b27b5bb89096a4512035d.png) 我们这个边使用v8.3.0的源码进行分析,下载地址:<https://github.com/grafana/grafana/releases/tag/v8.3.0> 根据代码的更改,直接跟进到`pkg/api/plugins.go`的结构体`getPluginAssets`中,会先查找插件是否存在,如果插件不存在,则返回`"Plugin not found"`,如果存在这个插件名,则会匹配 `/public/plugins/:pluginId/*`中的`*`,最后打开上述的`pluginFilePath`并输出相关内容。我们可以构造如下payload,`/public/plugins/插件名/想要访问文件的相对路径` 造成任意文件读取漏洞 ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-277674b184a496ecc9147bcc742b6cfe56cc8794.png) 我们可以遍历插件名,对目标网站进行攻击 ```php grafana默认安装的插件有: alertlist annolist grafana-azure-monitor-datasource barchart bargauge cloudwatch dashlist elasticsearch gauge geomap gettingstarted stackdriver graph graphite heatmap histogram influxdb jaeger logs loki mssql mysql news nodeGraph opentsdb piechart pluginlist postgres prometheus stat state-timeline status-history table table-old tempo testdata text timeseries welcome zipkin ``` ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-2bf2fd8c6e823141c1fba8737a85e30bf12ee4f4.png) 漏洞利用 ==== 已有安全设备捕获到漏洞 ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-71c9386481df69331b8c1fdc2e08bd0cb55e71ed.png) ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-a2f14b82dc7815cb8d3cbec992543f6602c91cbb.png) 利用具体exp可参考https://github.com/ambitiousleader/some-automated-script/tree/main/grafana%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96((CVE-2021-43798) 利用成功如下 ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-6a046f4692bf8b9b4c01c3bd185d47f9dec4908f.png) Bypass Nginx ============ 修复如果使用目标站点是存在漏洞版本但是无法利用成功,那么可能是使用了Nginx代理转发进行了漏洞的修复,可以构造如下`/public/plugins/:pluginId/#/../..%2f..%2f`来绕过修复,只需要在插件名后加上`/#/`就可以了。 总结 == ![](https://shs3.b.qianxin.com/attack_forum/2021/12/attach-4e70513c22aa0a7c0724c84c41d3f4e8d1a0c5ec.png)
发表于 2021-12-23 09:39:29
阅读 ( 10380 )
分类:
漏洞分析
0 推荐
收藏
0 条评论
请先
登录
后评论
苏苏的五彩棒
25 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!