Redis高危RCE漏洞CVE-2025-49844(RediShell)深度解析与修复指南

3 阅读3分钟

一个严重的Redis漏洞(CVE-2025-49844)已被披露,其CVSS评分为10分。这意味着它极其严重,真实存在,如果你正在运行Redis,这是一个不容忽视的漏洞。

Wiz研究团队在这个广泛使用的Redis内存数据结构存储中发现了一个重大的远程代码执行(RCE)漏洞,他们将其命名为#RediShell。

什么是远程代码执行(RCE)攻击?

远程代码执行攻击是指攻击者能够在组织的计算机或网络上运行恶意代码。执行攻击者控制的代码的能力可用于多种目的,例如部署额外的恶意软件或窃取敏感数据。此类攻击通常源于Web应用程序和网络基础设施中的漏洞。

什么是#RediShell?

#RediShell利用了一个存在于Redis源代码中长达13年的释放后使用(UAF)内存损坏错误。是的,你没看错。

该漏洞允许经过身份验证的攻击者发送精心构造的恶意Lua脚本(Redis默认支持),以逃离Lua沙箱,并在Redis主机上执行原生代码。

攻击者将获得主机系统的完全访问权限,从而能够窃取、擦除或加密敏感数据,劫持资源,并促进在云环境内的横向移动。由于Redis被用于约75%的云环境中,该漏洞的潜在影响是巨大的。

在Wiz博客文章发布时,大约有33万个Redis实例暴露在互联网上,其中近6万个实例未配置身份验证。值得注意的是,官方Redis容器默认不要求身份验证。

在没有身份验证且暴露于互联网的情况下,任何人都可以查询Redis实例并发送Lua脚本,这将使攻击者能够利用该漏洞实施远程代码执行。

如果你管理着任何Redis部署,甚至只是有一个用于测试的小型Redis容器,这都会影响到你。

🛡️ 应对措施

  • 升级 到Redis的已修复版本,确保优先处理任何暴露于互联网或未经身份验证的实例。
  • 启用Redis身份验证(使用requirepass指令)。
  • 禁用不必要的命令,例如如果你不使用Lua脚本,则禁用该功能。
    • ➡️ 如何操作: 通过Redis ACL撤销用户脚本权限,或禁用脚本命令。
  • 使用 非root账户 运行Redis。
  • 激活Redis日志记录和监控,以跟踪活动并识别潜在问题。
  • 在网络层面 实施访问控制,例如防火墙和虚拟私有云(VPC)。
  • 限制Redis访问,仅允许授权网络访问。

💬 最后总结

#RediShell是一个强有力的提醒:即使是长期存在且受信任的软件也可能隐藏着严重缺陷。如果你正在运行Redis,请将此视为一个信号,立即在攻击者得手之前进行修补、加固和监控。即使你的实例“仅用于测试”,花几分钟时间将其锁定也是值得的。

✨ 呼吁行动

如果你觉得这篇文章有帮助,请点赞、评论和分享,以传播关于#RediShell的信息,并帮助他人保持安全。 CSD0tFqvECLokhw9aBeRqpx2pon5wJwzgXWrO+BAwWo7bgt3m6BOaOa2JSq6kOxpfP8frf0Tt6d93Uh0JxRT0FzEkmRN0PNLamaT9IgL0ZalO9TW2N1FmcKnAM1Cc3V0td8IxqJ5C/o0j27fYQkF+A==