Redis Lua Script 溢出漏洞(CVE-2024-31449)

目录

漏洞描述

目前受影响的Redis版本:

安全版本

解决建议

升级Redis版本

查看旧redis版本信息

备份Redis数据

1.查看目前redis的key

2.备份数据

3.查看备份文件地址

4.将旧Redis安装目录备份

安装新版本Redis

1.下载redis安装包

2.安装redis

3.启动新的redis

4.验证

[4.1 查看新安装的redis版本](#4.1 查看新安装的redis版本)

[4.2 查看数据是否恢复](#4.2 查看数据是否恢复)


漏洞描述

Redis是一个开源的基于内存亦可持久化的Key-Value数据库。2024年10月,官方披露 CVE-2024-31449 Redis Lua Script 溢出漏洞,经过身份验证的用户可以使用特制的Lua脚本来触发堆栈缓冲区溢出,并可能会导致远程代码执行。官方已发布更新修复,建议升级至最新版本。

目前受影响的Redis版本:

2.6 ≤ Redis < 6.2.16

7.0.0 ≤ Redis < 7.2.6

7.4.0 ≤ Redis < 7.4.1

安全版本

6.2.16

7.2.6

7.4.1

解决建议

1、Redis 官方已发布更新修复,建议升级至最新版本。

2、利用安全组设置Redis仅对可信地址开放。

3、应用漏洞暂只支持获取 Redis 自身版本,若确定已为各发行版本安全修复版本,可予忽略。

升级Redis版本

查看旧redis版本信息

bash 复制代码
# /usr/local/redis/bin/redis-server --version
Redis server v=2.8.22 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=4c2b76a2ddab816

备份Redis数据

1.查看目前redis的key

bash 复制代码
# 登录redis客户端
# /usr/local/redis/bin/redis-cli 
127.0.0.1:6379> AUTH  xxx
OK
127.0.0.1:6379> dbsize
(integer) 15

2.备份数据

bash 复制代码
# 备份命令
127.0.0.1:6379> SAVE
OK

或
BGSAVE

3.查看备份文件地址

bash 复制代码
# 通过命令找到备份的数据文件
config get dir
config get dbfilename

4.将旧Redis安装目录备份

备份旧目录

bash 复制代码
cp /usr/local/redis /usr/local/redisbak -r

安装新版本Redis

1.下载redis安装包

下载地址

这里本人下载的 6.2.16 版本

2.安装redis

bash 复制代码
# 下载
wget https://download.redis.io/releases/redis-6.2.16.tar.gz
# 解压
tar -zxf redis-6.2.16.tar.gz
# 切换到解压后的目录
cd redis-6.2.16
# 编译安装
make PREFIX=/usr/local/redis install

配置文件省略.....

3.启动新的redis

bash 复制代码
redis-server /usr/local/redis/etc/redis.conf

4.验证

4.1 查看新安装的redis版本

bash 复制代码
redis-server --version
Redis server v=6.2.16 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=12b91a981b4a57b0

4.2 查看数据是否恢复

从图可知数据和旧数据一致,说明数据恢复了

到此redis升级完成~

相关推荐
熠速几秒前
ITTIA DB Platform——实时嵌入式数据管理软件产品家族
数据库·嵌入式实时数据库
热爱编程的小曾33 分钟前
sqli-labs靶场 less 8
前端·数据库·less
THRUSTER1111142 分钟前
MySQL-- 函数(单行函数):数值函数, 字符串函数
数据库·mysql·函数·navicat·单行函数
橙序研工坊1 小时前
MySQL的进阶语法7(索引-B+Tree 、Hash、聚集索引 、二级索引(回表查询)、索引的使用及设计原则
数据库·sql·mysql
Bruce-li__1 小时前
深入理解Python asyncio:从入门到实战,掌握异步编程精髓
网络·数据库·python
小光学长1 小时前
基于vue框架的智能服务旅游管理系统54kd3(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库
Bonnie_12151 小时前
07-MySQL-事务的隔离级别以及底层原理
数据库·mysql
ETLCloud数据集成社区1 小时前
ETLCloud是如何通过Oracle实现CDC的?
数据库·oracle·etl·实时数据同步
KATA~2 小时前
解决MyBatis-Plus枚举映射错误:No enum constant问题
java·数据库·mybatis
xyliiiiiL2 小时前
一文总结常见项目排查
java·服务器·数据库