文章总结: JFrog披露Redis高危漏洞CVE-2025-62507,影响8.2.0至8.2.2版本。该漏洞源于XACKDEL命令的栈缓冲区溢出,因官方Docker镜像未启用栈金丝雀保护,攻击者可利用ROP链绕过NX保护实现无认证远程代码执行。建议用户尽快升级至8.3.2以上版本。 综合评分: 90 文章分类: 漏洞分析,漏洞POC,二进制安全,应用安全,漏洞预警
Redis远程代码执行漏洞曝光:研究人员详细描述了官方容器中针对“简单”堆栈溢出的漏洞利用方法
sec随谈 sec随谈
sec随谈
2026年1月21日 08:50 北京
JFrog安全研究公司的安全研究人员公开披露了 Redis 中一个高危漏洞的完整利用链,证明“老式”栈缓冲区溢出在 2026 年仍然非常活跃,而且很危险。
该漏洞编号为 CVE-2025-62507,CVSS 评分为 8.8,影响 Redis 8.2.0 至 8.2.2 版本。尽管官方公告已警告存在潜在风险,但 JFrog 团队决定进一步探索,看看能否实现完整的远程代码执行 (RCE)。他们的探索最终成功。
缺陷在于 XACKDEL 命令,这是为优化流处理而引入的一项新功能。该命令允许用户在单个原子操作中确认并删除多条消息。然而,其实现未能考虑到基本的边界检查。
分析报告指出: “核心问题是代码没有验证客户端提供的 ID 数量是否符合此栈分配数组的边界。”
当用户提供的消息 ID 数量超过固定大小数组的容量时,该函数会盲目地写入缓冲区末尾之外的数据。由于这些 ID 由攻击者控制,因此可以利用它们覆盖关键的堆栈内存,包括函数的返回地址。
通常,现代软件会使用“栈金丝雀”(stack canary)来抵御此类攻击——在代码执行被劫持之前,会在代码栈中放置一些秘密值来检测是否存在损坏。然而,在调查过程中,研究人员对官方的 Redis Docker 镜像有了惊人的发现。
“令人惊讶的是,这种对 EIP 的直接控制表明,官方 Docker 镜像中的 Redis 编译时没有使用堆栈金丝雀保护!”
这一疏忽使得原本难度极高的漏洞利用变得轻而易举。由于没有预警机制阻止,研究人员得以精确控制指令指针。他们构建了一条面向返回编程(ROP)链来绕过NX(No-eXecute)保护机制,利用系统自身的mprotect函数将堆栈标记为可执行,然后再运行他们自己的shellcode。
JFrog 通过发送特定的命令序列成功演示了这种攻击——先发送 XGROUP CREATE 命令,然后发送带有 62 个精心构造的消息 ID 的 XACKDEL 命令——从而触发了反向 shell。
该漏洞已在 Redis 8.3.2 版本中修复。然而,其影响范围仍然十分广泛。Shodan 扫描显示,近 3000 台服务器运行着存在漏洞的版本,其中大部分位于德国、美国和中国。
至关重要的是,由于 Redis 默认情况下不强制执行身份验证,因此该漏洞通常允许未经身份验证的远程代码执行,使其成为机会主义攻击者的主要目标。
参考链接:
Dissecting and Exploiting CVE-2025-62507: Remote Code Execution in Redis
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:sec随谈 sec随谈 sec随谈《Redis远程代码执行漏洞曝光:研究人员详细描述了官方容器中针对“简单”堆栈溢出的漏洞利用方法》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论