一、前言
xx公司经过网络安全信息扫描,现TiDB集群存在grafana 权限提升漏洞(CVE-2022-39306|CNNVD-202211- 399)。
Grafana 是 Grafana 开源的一套提供可视化监控界面的开源 2 监控工具。Grafana 中存在权限提升漏洞。可通过发送特制文件 获取主机最高权限,进一步控制主机进行任意操作。
此漏洞Grafana官网通报升级到v9.2.4以上版本可以解决此漏洞问题,现需要单独升级grafana组件并配置离线镜像源。
二、现tidb集群信息
Grafana版本为V7.5.11
三、下载解压grafana组件
Grafana官网下载地址
https://grafana.com/grafana/download/9.0.3?edition=oss
解压
cd /tidb/soft
tar zxvf grafana-9.2.4.linux-amd64.tar.gz
四、制作离线镜像源
制作镜像,把tidb镜像*json复制到/tidb/soft/grafana-9.2.4目录下,并重新打包
cd /data/tidb-deploy/grafana-3000/bin/
cp *.json /tidb/soft/grafana-9.2.4
cd /tidb/soft/grafana-9.2.4
tar zcvf grafana-9.2.4.linux-amd64.tar.gz *
#离线镜像发布
#查看当前镜像源,设置镜像源
tiup mirror show
tiup mirror set /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64
#备份private.json
cp /home/tidb/.tiup/keys/private.json /tmp/private.json
cp /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64/keys/*pingcap.json /home/tidb/.tiup/keys/private.json
#publish镜像
tiup mirror publish grafana v6.1.0 /tidb/soft/grafana-9.2.4/grafana-9.2.4.linux-amd64.tar.gz grafana
#各个参数解释如下:
· <comp-name>:组件名,如 tidb,建议使用符合正则 ^[a-z\d](?:[a-z\d]|-(?=[a-z\d])){0,38}$ 的字符串
· <version>:当前正在发布的版本,版本号需要符合 Semantic Versioning
· <tarball>:.tar.gz 包的本地路径,需要将组件的可执行文件及依赖放在该包中,由 TiUP 上传到镜像
· <entry>:组件的可执行文件在 <tarball> 中的位置
#清理老文件
[tidb@tidb80 .tiup]$ ls -l /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64/*grafana.json
-rw-r--r-- 1 tidb tidb 34115 6月 22 10:24 /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64/2172.grafana.json
-rw-rw-r-- 1 tidb tidb 33657 12月 2 17:46 /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64/2173.grafana.json
rm -rf /tidb/soft/tidb-enterprise-server-v6.1.0-linux-amd64/2172.grafana.json
五、Grafana组件升级替换
Grafana升级替换
#备份老集群的/data/tidb-deploy/grafana/bin/目录
cp -R /data/tidb-deploy/grafana-3000/bin/ bin.bak20221202
#将grafana-9.2.4数据复制到/data/tidb-deploy/grafana-3000/bin目录下
cp -Rf /tidb/soft/grafana-9.2.4/* /data/tidb-deploy/grafana-3000/bin
#重新加载grafana
tiup cluster reload tidb-test -R grafana
六、升级后版本验证
升级后grafana版本为v9.2.4
七、后续grafana扩缩容
#Grafana的扩缩容验证版本变化
#grafana缩容
tiup cluster scale-in tidb-test -N 192.168.2.80:3000
#grafana扩容
tiup cluster scale-out tidb-test scale-grafana.yaml
#后续通过tiup工具进行grafana组件扩缩容仍然是v9.2.4版本