Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-25589-25588-25243-23631-23479-REDIS — 针对五个 Redis CVE 的诊断与修复脚本,提供扫描、基于 ACL 的缓解措施以及针对已认证 RCE 漏洞的配置加固指导。 | Kitploit
工具/GitHubGitHub/mgiay/cve-2026-25589-25588-25243-23631-23479-redis
漏洞分析配置审计学习与教育精选资源数据库安全
GitHubmgiay/cve-2026-25589-25588-25243-23631-23479-redis

CVE-2026-25589-25588-25243-23631-23479-REDIS

针对五个 Redis CVE 的诊断与修复脚本,提供扫描、基于 ACL 的缓解措施以及针对已认证 RCE 漏洞的配置加固指导。

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
365个月前尚未审核
分享

检查与修复指南:截至 2026.05.08 的 5 个 Redis CVE

发布日期: 2026-05-08 作者: TonyCao ([email protected]) 来源: Redis 安全公告


目录

  1. 概述
  2. 受影响版本
  3. 各 CVE 详情
    • CVE-2026-23479 — 解除客户端阻塞流程中的 Use-after-free
    • CVE-2026-25243 — RESTORE 中的无效内存访问
    • CVE-2026-25588 — 带 RedisTimeSeries 模块的 RESTORE
    • CVE-2026-25589 — 带 RedisBloom 模块的 RESTORE
    • CVE-2026-23631 — 通过主从同步触发的 Lua Use-After-Free
  4. 脚本使用指南
  5. 通用修复方法
  6. 风险评估 — 内部 Redis / Sentinel 系统
  7. ACL 参考
  8. 定期检查流程
  9. 常见问题 (FAQ)

概述

2026 年 5 月 5 日,Redis Ltd. 发布了安全公告,涉及 5 个影响所有 Redis OSS/CE 版本的严重安全漏洞。如果被成功利用,所有这些 CVE 都可能导致远程代码执行 (RCE)。

#CVE 编号CVSS严重程度漏洞类型利用条件
1CVE-2026-234797.7高Use-After-Free已认证,有权执行阻塞命令
2CVE-2026-252437.7高无效内存访问已认证,有权执行 RESTORE
3CVE-2026-255887.7高无效内存访问已认证,有权执行 RESTORE + RedisTimeSeries 模块
4CVE-2026-255897.7高无效内存访问已认证,有权执行 RESTORE + RedisBloom 模块
5CVE-2026-236316.1中Use-After-Free已认证,副本且 replica-read-only = 禁用

共同点: 所有 CVE 都要求攻击者已对 Redis 实例完成认证(authenticated)。CVE-2026-23631 仅影响配置了 replica-read-only disabled 的副本。


受影响版本

Redis OSS/CE — 所有补丁之前的版本

版本系列已修复版本(最低)
6.2.x6.2.22
7.2.x7.2.14
7.4.x7.4.9
8.2.x8.2.6
8.4.x8.4.3
8.6.x8.6.3

模块 — 已修复版本

模块最低版本
RedisTimeSeries1.12.14 / 1.10.24 / 1.8.23
RedisBloom2.8.20 / 2.6.28 / 2.4.23

Redis Software(企业版)

版本补丁
8.0.68.0.10-64
7.22.27.22.2-79
7.8.67.8.6-253
7.4.67.4.6-279
7.2.47.2.4-153

Redis Cloud

所有 Redis Cloud 部署在公告发布时均已自动完成补丁更新。


各 CVE 详情

CVE-2026-23479

属性值
标题解除客户端阻塞流程中的 Use-After-Free
CVSS 4.07.7(高)
CWECWE-416(释放后使用)
向量AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
条件攻击者已认证,有权执行阻塞命令
范围所有 Redis OSS/CE,Redis Software <= 8.0.6

技术描述

当客户端处于阻塞状态(blocked)——例如正在等待 BLPOP——在重新执行被阻塞命令期间被驱逐(evict)时,processCommandAndResetClient 函数可能返回错误。当前代码未正确处理此情况,导致指针引用了已释放的内存区域(use-after-free)。攻击者可以利用 UAF 实现远程代码执行(RCE)。

识别迹象

  • Redis 服务器崩溃,堆栈跟踪中包含与 unblock client、processCommandAndResetClient 相关的函数
  • redis-server 进程执行了未定义的命令
  • 存在未经允许的网络连接到 Redis 实例

受影响的阻塞命令```

BLPOP, BRPOP, BRPOPLPUSH, BLMOVE, BLMPOP, BZPOPMIN, BZPOPMAX, BZMPOP, WAIT, WAITAOF, XREAD, XREADGROUP

#### 修复方法(不升级)

**方法 1 — 通过 ACL 阻止(推荐):**```bash
# Chặn toàn bộ nhóm lệnh blocking
redis-cli ACL SETUSER default -@blocking

# Hoặc chặn từng lệnh cụ thể
redis-cli ACL SETUSER default -BLPOP -BRPOP -BRPOPLPUSH -BLMOVE -BLMPOP \
                              -BZPOPMIN -BZPOPMAX -BZMPOP \
                              -WAIT -WAITAOF \
                              -XREAD -XREADGROUP

# Lưu ACL
redis-cli ACL SAVE

方法 2 — 通过 rename-command 禁用(需要重启 Redis):```bash

Thêm vào redis.conf:

rename-command BLPOP "" rename-command BRPOP "" rename-command BRPOPLPUSH "" rename-command BLMOVE "" rename-command BLMPOP "" rename-command BZPOPMIN "" rename-command BZPOPMAX "" rename-command BZMPOP "" rename-command WAIT "" rename-command WAITAOF "" rename-command XREAD "" rename-command XREADGROUP ""

**方法 3 — 启用 protected-mode 并限制连接:**```bash
redis-cli CONFIG SET protected-mode yes
# Trong redis.conf:
protected-mode yes
bind 127.0.0.1

CVE-2026-25243

属性值
标题RESTORE 命令中的无效内存访问
CVSS 4.07.7(高危)
CWECWE-20(输入验证不当)+ CWE-122(堆缓冲区溢出)
向量AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
条件已认证的攻击者,具有执行 RESTORE 的权限
影响范围所有 Redis OSS/CE、Redis Software <= 8.0.6

技术描述

该漏洞包含 2 个子问题:

  1. 双重释放(Double-free) 位于 Redis 核心(由 Emil Lerner 发现)——RESTORE 处理特制的序列化 payload,导致同一指针被释放两次。
  2. 整数溢出和越界读取 位于 VectorSets(由 Joseph Surin 发现)——特制 payload 引发整数溢出,导致在已分配内存范围之外进行读取/写入。

已认证的攻击者发送特制的 RESTORE payload 以利用上述错误,可能导致在 redis-server 进程上下文中实现 RCE。

识别迹象

  • Redis 服务器异常崩溃
  • 系统文件发生变化(尤其是 Redis 的 RDB/AOF/配置所在目录)
  • 与 Redis 实例之间出现未经允许的网络连接
  • Redis 配置文件被修改

修复方法(不升级)

方法 1 — 通过 ACL 阻止 RESTORE(推荐):```bash

Chặn lệnh RESTORE

redis-cli ACL SETUSER default -restore

Hoặc chặn toàn bộ nhóm lệnh nguy hiểm

redis-cli ACL SETUSER default -@dangerous

redis-cli ACL SAVE

**方法 2 — 禁用 RESTORE(需要重启 Redis):**```bash
# Thêm vào redis.conf:
rename-command RESTORE ""

方法 3 — 为应用程序创建独立的用户 ACL:```bash

Tao user cho ung dung chi voi quyen doc/ghi co ban

redis-cli ACL SETUSER app_user on >StrongPass123 ~*
+@read +@write
-@dangerous
-@admin
-@scripting
-@blocking
-restore
-debug

redis-cli ACL SAVE

---

### CVE-2026-25588

| 属性        | 值                                                               |
| ----------- | ---------------------------------------------------------------- |
| **标题**    | RedisTimeSeries 模块中 RESTORE 的无效内存访问                    |
| **CVSS 4.0**| **7.7(高危)**                                                  |
| **CWE**     | CWE-20 + CWE-122                                                  |
| **向量**    | `AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N`         |
| **条件**    | 已认证 + 拥有 RESTORE 权限 + **已加载 RedisTimeSeries 模块**     |
| **范围**    | Redis OSS/CE + RedisTimeSeries 模块                               |

#### 技术描述

当在已加载 **RedisTimeSeries 模块** 的实例上使用 `RESTORE` 命令时,特制的序列化负载可能会在处理时间序列数据期间触发无效内存访问。该漏洞存在于 RedisTimeSeries 模块从 RESTORE 负载反序列化数据的方式中。

#### 识别迹象

- Redis 崩溃,堆栈跟踪与 RedisTimeSeries 模块相关
- RedisTimeSeries 模块已加载(`MODULE LIST` 显示 timeseries)
- redis-server 执行了非预期的命令

#### 修复方法(不升级)

**方法 1 — 通过 ACL 阻止 RESTORE:**(与 CVE-2026-25243 相同)```bash
redis-cli ACL SETUSER default -restore
redis-cli ACL SAVE

方法 2 — 卸载 RedisTimeSeries 模块(如果不需要):```bash redis-cli MODULE UNLOAD timeseries

然后从 `redis.conf` 中删除以下行:```
loadmodule /path/to/redistimeseries.so

方法 3 — 仅升级模块(不升级 Redis):

下载已修补的模块版本:

  • RedisTimeSeries 1.12.14(适用于 1.12 系列)
  • RedisTimeSeries 1.10.24(适用于 1.10 系列)
  • RedisTimeSeries 1.8.23(适用于 1.8 系列)```bash

Thay the file .so cu bang phien ban moi

Sau do restart Redis hoac:

redis-cli MODULE UNLOAD timeseries redis-cli MODULE LOAD /path/to/new/redistimeseries.so

### CVE-2026-25589
下载工具