漏洞修复:Redis 沙盒逃逸漏洞(CVE-2022-0543)
腾讯云上报 Redis 沙盒逃逸漏洞(CVE-2022-0543),参考报告:Debian Bug report logs - #1005787 redis: CVE-2022-0543:
Found in versions redis/5:5.0.14-1+deb10u1, redis/5:5.0.3-4, redis/5:6.0.15-1
Fixed in versions redis/5:6.0.16-1+deb11u2, redis/5:5.0.14-1+deb10u2, redis/5:6.0.16-2, redis/5:7.0~rc2-2
影响版本:redis version less than 5:5.0.7-2ubuntu0.1
查看相关 ubuntu 服务器 redis 版本:
即需要对 Redis 升级到新版本。官方提供了修复指令:
再此查看 redis 版本,并没有升级成功。网上查到一篇 Ubuntu 安装 Redis,主要参考其中的 方法2:先更新APT repository再安装
,也即是 Redis 官网提供方法:
先决条件
如果运行的是低版本的 debain 发行版本,需要先执行:
更新 apt repository 再安装
再次查看版本:
升级会提示使用新版本,还是原来版本,测试选择 N 或 O 不会修改原来 redis 的配置,如密码
安装过程中报错 Package redis-server is not configured yet
中间有一台设备出现了这个报错,不管使用 apt 安装什么软件都会提示 redis-server 存在问题。也有参考网上的教程去配置 ipv6 启用,或者修改 bind 127.0.0.1
配置文件的,但都不起作用。
因为这台设备属于测试站,所以干脆直接卸载软件:
因为不确定包名,所以执行了 redis 和 redis-server 的卸载。然后安装上面的更新 apt 源再安装。
若遇到报错 Package redis-server is not configured yet
且怎么样重新安装都不起作用
熟话说的好呀,夜路走多了,容易遇见鬼。这经常这么删除再重新安装,删除再重新安装,然后就遇到了一直都安装不了,一直报错的情况。
首先 sudo apt-get install redis
其实安装了 redis-server
,redis-cli
,并且还有一个 redis
的系统服务。不管是卸载还是安装 redis 时,都应该先把 redis 关闭: service redis stop
之后再操作。
在卸载干净之后,安装过程中报错:
前面是安装 redis
,后面则是查看 redis
服务。redis
版本已经升级好了,但这个 redis
服务却一直启动不起来。
经历了一段时间的推敲、寻觅,终于试出了一种可以解决当前问题的方法:Redis not starting with systemctl。里面问答里提到修改 redis
配置文件 /etc/redis/redis.conf
,找到 supervised no
项,修改为 supervised systemd
。
没有太理解 systemctl
方式启动是不是就是 service
方式启动,但修改后再启动服务 service redis restart
确实成功了。观察到其他两台服务器安装后也都有 redis
服务(默认安装的),且一台设置为 auto
,另一台设置为 no
也没有出现当前的问题,所以暂时不确定什么因素造车了当前的这种情况。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。