Redis高危漏洞来袭:6万台服务器或已暴露!
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
10月3日,CVE官网(https://www.cve.org)正式发布Redis的一个高危远程代码执行漏洞。漏洞编号(CVE-2025-49844),CVSS 3.1评分高达10.0(满分),属于最高级别安全威胁。 据安全社区统计,目前全球约有6万台Redis服务器可能面临被利用的风险,尤其是那些仍在使用8.2.1及以下版本的部署环境。该漏洞的核心问题在于:Redis允许经过身份验证的用户执行特制的Lua脚本,从而触发内存回收错误(UAF,Use-After-Free),最终实现远程代码执行(RCE)。 漏洞背景:Redis为何“栽”在Lua脚本上? Redis以其高性能和灵活性著称,在缓存、消息队列、会话存储等场景广泛使用。 而Lua脚本机制(通过EVAL与EVALSHA命令)则是Redis实现复杂逻辑与原子操作的重要手段。 Lua语言轻量、高效,能够在Redis内部安全执行脚本。然而,正是这种“内嵌脚本”特性,给攻击者提供了更深层的利用空间。 在本次漏洞中,攻击者可通过精心构造的Lua脚本操作内存分配与回收机制,触发UAF(释放后使用)漏洞,实现任意代码执行。 技术细节:四种典型UAF触发场景 该漏洞的根源在于Lua脚本引擎的内存管理漏洞。当Redis执行EVAL脚本时,如果内存分配与释放逻辑出现异常,就可能出现“释放后继续访问”的情况。 忘记置零(未将指针设为NULL)开发者在释放内存后,没有将指针重置为NULL,导致系统仍可能通过旧指针访问已被释放的区域,从而引发不可预测的行为。 错误的释放顺序在Lua对象间共享内存的场景下,释放顺序不当可能导致部分对象仍在使用已释放的内存块。攻击者可利用此漏洞修改关键数据结构,实现提权或代码注入。 缓存或引用计数错误Redis使用引用计数机制来管理Lua对象的生命周期,一旦引用计数逻辑出现偏差,就可能导致对象被提前释放或重复释放。 异步操作导致竞争条件Redis在高并发环境中处理异步操作时,若释放与访问不同步,极易出现UAF竞态。攻击者可借助多线程或异步任务诱发漏洞条件。 漏洞危害:不仅仅是崩溃,更可能是全面失控 UAF漏洞一旦被成功利用,其后果极为严重,具体包括: 数据泄露攻击者可读取内存中残留的敏感信息,如密码、私钥、Session Token等,造成严重的数据安全事件。 控制流劫持通过修改释放后的内存内容,攻击者可以重定向程序的执行流,最终实现远程代码执行,控制Redis进程。 权限升级攻击者可利用该漏洞操纵Redis内部对象,进一步提升权限,从普通用户权限上升至系统级。 服务拒绝(DoS)部分情况下,UAF可能导致Redis实例直接崩溃,引发缓存服务中断,造成业务不可用。 ⚠️ 换句话说,这不仅是一个“漏洞”,更可能成为攻击者入侵企业内网的“跳板”。 影响范围:全球超6万台服务器暴露在风险中 根据Shodan和Censys的最新网络测绘数据,目前互联网上暴露的Redis实例中,约有40%以上版本低于8.2.1。
由于Redis默认无身份认证机制,部分开发者仍以“内网可信”忽视开启ACL与密码的必要性,这无异于给攻击者开了一扇后门。 防护与修复建议 立即升级至最新版本Redis官方已在最新版本中修复该漏洞。请务必将Redis升级至8.2.2或更高版本,并确认系统库同步更新。 限制Lua脚本执行权限使用Redis的ACL机制限制EVAL和EVALSHA命令,防止普通用户执行Lua脚本。 启用访问控制与认证为Redis设置强密码或通过ACL分级访问控制,禁止未授权访问 内网隔离与端口防护Redis应仅对可信主机开放访问端口(默认6379),通过防火墙或安全组策略限制来源IP。 开启安全监控与告警监控Redis命令行为,一旦检测到异常的EVAL调用或内存异常操作,应立即告警。 结语 Redis漏洞事件再次为开发者与运维人员敲响警钟。 在AI、云计算、物联网加速融合的今天,一个开放端口、一个过期版本,可能就是企业安全的“软肋”。 安全从不是一次性动作,而是一种长期的、系统性的工程。 END 阅读原文:原文链接 该文章在 2025/10/9 13:25:47 编辑过 |
关键字查询
相关文章
正在查询... |