【风险名称】
Grafana 开放重定向与服务端请求伪造漏洞
【风险等级】
高危
【风险概述】
近日,监测到Grafana 存在开放重定向与服务端请求伪造漏洞(CVE-2025-412
3),该漏洞由于Grafana 中路由解析机制存在缺陷导致开放重定向漏洞。攻击者可利
用此漏洞与客户端路径遍历结合,造成跨站脚本攻击,最终实现账户接管;当Grafana
启用了图像渲染器插件(插件会回显用户指定的路由的HTML),攻击者可利用此漏洞
可实现读取型服务端请求伪造。
【风险验证】
受影响版本:
version<12.0.0+security-01
version<11.6.1+security-01
version<11.5.4+security-01
version<11.4.4+security-01
version<11.3.6+security-01
version<11.2.9+security-01
version<10.4.18+security-01
【处置建议】
安全更新
目前官方已有可更新版本,建议受影响用户升级至最新版本:
官方补丁下载地址:
自行升级 Grafana 组件,参考:https://docs.pingcap.com/zh/tidb/stable/upgrade-monitoring-services/#升级-grafana
为什么 tidb 不给直接带高版本的 grafana,因为高版本的 grafana 与 tidb 开源协议不兼容
啊,不兼容,那升级不是有问题了吗?升级到一个与tidb不兼容的grafana吗?
开源协议不兼容,用是可以用的。
只是开源协议不兼容的问题吧,我的理解是不允许直接打包到tidb的安装软件包中,但是你自己升级安装使用的话应该是没问题的,刚把测试环境grafana升级到12.0.1 oss版本,检查监控看板是没有问题的
[tidb@monitor ~]$ tiup cluster patch tidb-cluster /soft/tidb-grafana-v12.0.1.tar.gz -R grafana --overwrite
A new version of cluster is available: v1.16.1 → v1.16.2
To update this component: tiup update cluster
To update all components: tiup update --all
Will patch the cluster tidb-cluster with package path is /soft/tidb-grafana-v12.0.1.tar.gz, nodes: , roles: grafana.
Do you want to continue? [y/N]:(default=N) y
Error: entry bin/grafana-server not found in package /soft/tidb-grafana-v12.0.1.tar.gz
Verbose debug logs has been written to /home/tidb/.tiup/logs/tiup-cluster-debug-2025-05-29-14-51-13.log.
[tidb@monitor ~]$
[tidb@monitor ~]$ tar -tf /soft/tidb-grafana-v12.0.1.tar.gz |grep grafana-server
tidb-grafana/packaging/rpm/sysconfig/grafana-server
tidb-grafana/packaging/rpm/systemd/grafana-server.service
tidb-grafana/packaging/deb/default/grafana-server
tidb-grafana/packaging/deb/init.d/grafana-server
tidb-grafana/packaging/deb/systemd/grafana-server.service
tidb-grafana/packaging/wrappers/grafana-server
tidb-grafana/bin/grafana-server.md5
tidb-grafana/bin/grafana-server
[tidb@monitor ~]$
不知道是不是姿势不对,明明存在grafana-server,却说没有发现,权限也没问题啊。
[tidb@monitor ~]$ ll /soft/tidb-grafana-v12.0.1.tar.gz
-rw-r–r-- 1 tidb admin 210582882 May 29 14:15 /soft/tidb-grafana-v12.0.1.tar.gz
[tidb@monitor ~]$ more /home/tidb/.tiup/logs/tiup-cluster-debug-2025-05-29-14-57-18.log.
/home/tidb/.tiup/logs/tiup-cluster-debug-2025-05-29-14-57-18.log.: No such file or directory
[tidb@monitor ~]$ more /home/tidb/.tiup/logs/tiup-cluster-debug-2025-05-29-14-57-18.log
2025-05-29T14:57:10.759+0800 INFO Execute command {“command”: “tiup cluster patch tidb-cluster /soft/tidb-grafana-v12.
0.1.tar.gz -R grafana --overwrite”}
2025-05-29T14:57:10.759+0800 DEBUG Environment variables {“env”: [“TIUP_HOME=/home/tidb/.tiup”, “TIUP_USER_INPUT_VERS
ION=”, “TIUP_VERSION=1.16.1”, “TIUP_COMPONENT_DATA_DIR=/home/tidb/.tiup/storage/cluster”, “TIUP_COMPONENT_INSTALL_DIR=/home/
tidb/.tiup/components/cluster/v1.16.1”, “TIUP_TELEMETRY_STATUS=”, “TIUP_TELEMETRY_UUID=”, “TIUP_TELEMETRY_SECRET=”, “TIUP_WO
RK_DIR=/home/tidb”, “TIUP_TAG=UmZDUVM”, “TIUP_INSTANCE_DATA_DIR=/home/tidb/.tiup/data/UmZDUVM”, “XDG_SESSION_ID=6”, “HOSTNAM
E=monitor”, “SHELL=/bin/bash”, “TERM=vt100”, “HISTSIZE=1000”, “USER=tidb”, “LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:
so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:e
x=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=0
1;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.Z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=
01;31:.xz=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:
.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.jpg
=01;35:.jpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01
;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;
35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:
.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=
01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.axv=01;35:.anx=01;35:.ogv=01;35:.ogx=01;35:.aac=01;36:.au=01;36:.flac=01;3
6:.mid=01;36:.midi=01;36:.mka=01;36:.mp3=01;36:.mpc=01;36:.ogg=01;36:.ra=01;36:.wav=01;36:.axa=01;36:.oga=01;36:.
spx=01;36:*.xspf=01;36:”, “MAIL=/var/spool/mail/tidb”, “PATH=/home/tidb/.tiup/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sb
in:/usr/sbin:/home/tidb/.local/bin:/home/tidb/bin”, “PWD=/home/tidb”, “LANG=en_US.UTF-8”, “HISTCONTROL=ignoredups”, "SHLVL=1
", “HOME=/home/tidb”, “LOGNAME=tidb”, “XDG_DATA_DIRS=/home/tidb/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/
share:/usr/local/share:/usr/share”, “LESSOPEN=||/usr/bin/lesspipe.sh %s”, “_=/home/tidb/.tiup/bin/tiup”, “TIUP_TELEMETRY_EVE
NT_UUID=b489f0a8-5960-4ac4-98a0-fa56cce052b2”, “TIUP_MIRRORS=https://tiup-mirrors.pingcap.com”]}
2025-05-29T14:57:10.761+0800 DEBUG Initialize repository finished {“duration”: “1.945736ms”}
2025-05-29T14:57:18.312+0800 INFO Execute command finished {“code”: 1, “error”: “entry bin/grafana-server not f
ound in package /soft/tidb-grafana-v12.0.1.tar.gz”, “errorVerbose”: “entry bin/grafana-server not found in package /soft/tid
b-grafana-v12.0.1.tar.gz\ngithub.com/pingcap/tiup/pkg/cluster/manager.checkPackage\n\tgithub.com/pingcap/tiup/pkg/cluster/ma
nager/patch.go:174\ngithub.com/pingcap/tiup/pkg/cluster/manager.(*Manager).Patch\n\tgithub.com/pingcap/tiup/pkg/cluster/mana
ger/patch.go:81\ngithub.com/pingcap/tiup/components/cluster/command.newPatchCmd.func1\n\tgithub.com/pingcap/tiup/components/
cluster/command/patch.go:45\ngithub.com/spf13/cobra.(*Command).execute\n\tgithub.com/spf13/cobra@v1.6.1/command.go:916\ngith
ub.com/spf13/cobra.(*Command).ExecuteC\n\tgithub.com/spf13/cobra@v1.6.1/command.go:1044\ngithub.com/spf13/cobra.(*Command).E
xecute\n\tgithub.com/spf13/cobra@v1.6.1/command.go:968\ngithub.com/pingcap/tiup/components/cluster/command.Execute\n\tgithub
.com/pingcap/tiup/components/cluster/command/root.go:297\nmain.main\n\tgithub.com/pingcap/tiup/components/cluster/main.go:23
\nruntime.main\n\truntime/proc.go:267\nruntime.goexit\n\truntime/asm_amd64.s:1650”}
grafana官方组件包与tidb grafana默认结构不同,需要先解压后进入目录重新打包文件,具体步骤可以看官方文档
升级集群监控组件 | TiDB 文档中心
我是按这个文档步骤一步一步来的,最后就是这个报错了。
找到问题了。我想哭了。。。
cd grafana-v{version}-linux-amd64
tar -zcvf …/grafana-v{new-version}.tar.gz ./
坑在上面这个姿势上。。。。
请问谁能告诉我上面那个姿势和下面这个姿势有什么不一样?
tar zcvf grafana-v12.0.1-linux-amd64.tar.gz grafana-v12.0.1-linux-amd64
一个是解压到当前目录 一个是解压到指定目录
linux的基本命令的使用还是要了解一下的
我还有个疑问,官方没有说明下载官方tidb的版本是不是要与当前使用的tidb版本一致,如果高于或者低于当前正在使用的tidb版本,而grafana下载官方版本使用最新版本,不知道这样行不行。
grafana只是监控展示,使用最新版本应该没事