2025年最危险的开源数据库漏洞之一浮出水面!Redis官方披露了一个编号为 CVE-2025-49844 的严重安全漏洞,其CVSS评分为满级 10.0,属于“远程代码执行”(RCE)类最高危漏洞。更令人震惊的是,该漏洞已在Redis源码中潜伏长达 13年,影响所有支持Lua脚本功能的版本。本文将为你全面解析此漏洞的技术原理、攻击路径、影响范围及紧急修复建议。

漏洞概览:RediShell —— 潜伏13年的“完美风暴”
漏洞编号:CVE-2025-49844(别名:RediShell)
CVSS评分:10.0(满分,最高危级别)
发现时间:2025年5月16日(由网络安全公司Wiz在Pwn2Own赛事期间提交)
公开披露时间:2025年10月3日(Redis发布安全公告),10月6日Wiz团队公开细节
漏洞类型:释放后使用(Use-After-Free, UAF)内存破坏漏洞
利用条件:需经过身份验证的用户权限
影响版本:所有支持Lua脚本的Redis版本(包括OSS、CE、Stack等)
技术原理:如何通过Lua脚本突破沙箱?
CVE-2025-49844的核心问题出在Redis内嵌的 Lua解释器 中。Redis允许用户通过EVAL和EVALSHA命令执行Lua脚本来实现复杂逻辑操作,但这一机制存在一个长期未被发现的“释放后使用”(UAF)漏洞。
攻击链流程如下:
恶意脚本注入:攻击者发送特制的Lua脚本;
操控垃圾回收:利用Lua的GC(Garbage Collection)机制,在对象被释放后仍保留对其指针的引用;
触发UAF漏洞:通过精心构造的数据结构,使程序访问已释放的内存区域;
突破Lua沙箱:成功绕过Redis对Lua环境的安全限制;
远程代码执行(RCE):在Redis主机上执行任意原生代码,获得系统级控制权。
🔍 关键点:虽然需要“认证访问”,但在大量未设密码或暴露于公网的Redis实例中,这几乎形同虚设。
潜在危害:从数据泄露到云环境横向渗透
一旦被成功利用,CVE-2025-49844可能导致以下严重后果:
✅ 获取服务器完整控制权(root权限)
✅ 窃取敏感数据(如用户会话、数据库凭证、API密钥)
✅ 安装后门、挖矿程序或勒索软件
✅ 利用
.ssh密钥或IAM令牌进行云环境横向移动✅ 发起DDoS攻击或作为跳板入侵其他内网服务
由于Redis广泛用于缓存、会话管理、消息队列等核心场景,尤其是在 约75%的云架构中均有部署,因此该漏洞的影响范围极广。
据Wiz研究团队统计:
全球仍有 超过33万个Redis实例暴露在互联网上
其中 近6万个实例未配置任何身份验证机制
这些“裸奔”的实例极易成为攻击者的首选目标!
受影响版本与官方修复方案
⚠️ 影响范围(所有支持Lua脚本的Redis版本):
| Redis主版本 | 需升级至 |
|---|---|
| 6.2.x | ≥ 6.2.20 |
| 7.0.x / 7.2.x | ≥ 7.2.11 |
| 7.4.x | ≥ 7.4.6 |
| 8.0.x | ≥ 8.0.4 |
| 8.2.x | ≥ 8.2.2 |
📢 特别说明:即使是较老但仍受支持的6.2系列也必须升级!
✅ 官方补丁发布时间线:
2025年10月3日:Redis发布安全公告并推出修复版本
2025年10月6日:Wiz公开漏洞细节,呼吁全球企业紧急响应
👉 修复建议:立即升级到上述最新稳定版。
无法立即升级?临时缓解措施请牢记!
对于暂时无法停机升级的生产环境,可采取以下 临时防御策略:
禁用Lua脚本执行权限
或直接在配置文件中撤销相关命令权限。
强化身份验证
启用
requirepass设置强密码使用ACL(访问控制列表)精细化管理用户权限
网络层防护
将Redis服务置于防火墙后,禁止公网直接访问
仅允许可信IP或VPC内部访问
若使用Docker/Kubernetes,确保容器不暴露端口至外网
最小权限运行
使用非root账户启动Redis进程
降低被攻陷后的提权风险
启用监控与日志审计
开启Redis慢查询日志和命令日志
部署SIEM系统监控异常行为(如频繁
EVAL调用、未知脚本加载)
入侵迹象排查清单
鉴于该漏洞已存在十余年,即使尚未爆发大规模利用,也建议立即检查是否存在历史攻击痕迹:
🔴 可疑行为特征包括:
未经授权的数据库连接记录
异常的网络进出流量(尤其是向外建立反向Shell)
数据库中出现未知或加密的Lua脚本
Redis进程频繁崩溃,且堆栈跟踪涉及Lua引擎
出现非预期的系统命令执行(如wget、curl下载恶意文件)
主机CPU占用异常升高(可能正在挖矿)
行业启示:别再忽视“默认不安全”的配置!
此次RediShell事件再次敲响警钟:
“一个设计良好的系统,也可能因错误的部署方式而变得极其脆弱。”
许多企业在使用Redis时存在以下误区:
❌ 使用Docker镜像默认启动,未设置密码
❌ 将Redis直接暴露在公网上用于“方便调试”
❌ 忽视ACL权限管理,所有用户拥有全权
📌 最佳实践建议:
所有数据库服务默认遵循“最小权限+最小暴露”原则
定期开展资产扫描,识别并关闭不必要的公网暴露面
建立自动化补丁管理机制,及时响应安全更新
这不是演习,是真实的威胁!
CVE-2025-49844 不只是一个理论上的高分漏洞,而是具备完整攻击链、可导致主机沦陷的“核弹级”风险。它提醒我们:开源软件的安全不仅依赖于代码质量,更取决于正确的使用方式和持续的运维意识。
🔐 行动号召:
如果你正在使用自托管Redis,请立即检查版本,并升级至官方推荐的安全版本。每延迟一天,你的系统就多一分被攻破的风险。





















