作为我们持续维护 Redis 安全性、保障性和合规性的一部分,在以下版本中已识别并修复了 Redis 和 Redis Modules/Stack 中的四个安全漏洞。
[CVE-2024-46981] Lua Use-After-Free 远程代码执行漏洞。 CVSS 评分:7.0 (高)
在 Redis 中执行的特制 Lua 脚本可能能够操纵 Lua VM 垃圾收集器,从而可能导致远程代码执行 (RCE)。此问题影响所有支持 Lua 脚本的 Redis 版本,并且只能由具有适当网络连接和运行 Lua 脚本权限的有效、已认证用户利用。
[CVE-2024-51737] RediSearch – LIMIT 或 KNN 参数的整数溢出可导致 RCE。CVSS:7.0 (高)
已认证的 Redis 用户执行带有特制 LIMIT 命令参数的 FT.SEARCH 或 FT.AGGREGATE,或带有特制 KNN 命令参数的 FT.SEARCH 时,可能触发整数溢出,导致堆溢出和潜在的远程代码执行。
[CVE-2024-51480] RedisTimeSeries – 整数溢出远程代码执行漏洞。CVSS:7.0 (高)
已认证用户使用特制命令参数执行 TS.QUERYINDEX, TS.MGET, TS.MRAGE, TS.MREVRANGE 命令中的一个,可能导致整数溢出、随后的堆溢出,并可能导致远程代码执行。
[CVE-2024-55656] RedisBloom – 整数溢出远程代码执行漏洞。CVSS:8.8 (高)
已认证用户使用足够大的 WIDTH 和 DEPTH 命令参数执行命令 `CMS.INITBYDIM`,可能导致整数溢出、随后的堆溢出,并可能导致远程代码执行。
利用这些漏洞要求攻击者首先获得对您的 Redis 实例的认证访问权限。
您可以采取几个步骤来保护您的 Redis 免受恶意攻击者的访问。为了最大限度地降低被利用的风险,遵循以下最佳实践非常重要:
有关如何安全配置、部署和使用 Redis 的更多详细信息,请访问社区版和企业版软件文档站点。
我们已经使用修复程序升级了 Redis Cloud 服务,因此您无需采取额外行动。
如果您是自托管 Redis(无论是软件版还是社区版),请将您的 Redis 升级到最新版本。
以下列出的 Redis OSS、CE、Stack 和软件版本包含了修复。完成升级后,这些漏洞将在您的环境中得到修复。
受影响的版本 | 已修复的版本 | |
CVE-2024-46981 Lua Use-After-Free 远程代码执行漏洞 CVSS 评分:7.0 (高) | 所有 Redis 软件版本 | • 7.4.6-102 及以上 • 7.2.4-117 及以上 • 6.4.2-115 及以上 • 6.2.18-88 及以上 • 7.6.0-116 及以上 (非GA) • 7.8.x – 及以上 以上所有版本均包含模块 CVE 修复 |
所有 Redis OSS/CE/Stack 版本 | OSS/CE • 7.4.2 及以上 • 7.2.7 及以上 • 6.2.17 及以上 Stack • 7.4.0-v2 及以上 • 7.2.0-v14 及以上 • 6.2.6-v18 及以上 (正在进行中) 以上所有 Stack 版本均包含模块 CVE 修复 | |
CVE-2024-51737 (RediSearch) LIMIT 或 KNN 参数的整数溢出可导致 RCE CVSS:7.0 (高) | RediSearch 版本 >= 2.0 | • 2.10.10 及以上 • 2.8.21 及以上 • 2.6.24 及以上 |
CVE-2024-51480 (RedisTimeSeries) 整数溢出远程代码执行漏洞 CVSS:7.0 (高) | RedisTimeseries 版本 >=1.0.0 | • 1.12.5 及以上 • 1.10.16 及以上 • 1.8.16 及以上 |
CVE-2024-55656 (RedisBloom) 整数溢出远程代码执行漏洞 CVSS:8.8 (高) | RedisBloom 版本 >= 2.0 | • 2.8.5 及以上 • 2.6.16 及以上 • 2.4.13 及以上 |
我们没有证据表明这些漏洞在 Redis Cloud 或客户环境中被利用的报告。
以下是潜在利用的一般迹象,您可以使用这些迹象在您的操作环境中进行搜索。
如果发生利用,可能会产生这些技术和行为迹象或痕迹。如果您在 Redis 环境中搜索这些迹象,您可能能够检测到与您的 Redis 实例相关的潜在利用。
我们感谢以下研究人员通过我们发布的流程研究并报告了这些漏洞: