Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-84372— Predis: Redis command injection and denial of service via CRLF smuggling in pipelined commands on aggregate connections

Quick assessment

Affected
predis predis
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Predis 是一个灵活且功能完备的 PHP Redis 和 Valkey 客户端。在 3.0.0-RC1 到 3.3.0 之间的版本中,针对聚合集群和复制连接的管道(pipeline)处理存在缺陷: 在写入时会重新解析一个已经序列化的 RESP 缓冲数据,它使用 进行拆分,而没有尊重 RESP 的长度前缀。因此,攻击者控制的键或值如果包含 CRLF(\r\n)序列,可能会被 误解为额外的命令。在集群连接中, 可能会将注入的无键命令路由到使用字面量假键值 的节点,从而允许执行诸如跨分片缓存删除、定向数据修改、数据读

CVSS 9.8 · Critical EPSS 0.41% · P35

Possible ATT&CK Techniques 2 AI

T1210.023 T1029 · Scheduled Transfer

Affected Version Matrix 1

VendorProduct Version RangeStatus
predis predis >= 3.0.0-RC1, < 3.3.0 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-84372

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Predis: Redis command injection and denial of service via CRLF smuggling in pipelined commands on aggregate connections
Source: CVE Program / CVE List V5
Vulnerability Description
Predis is a flexible and feature-complete Redis and Valkey client for PHP. From version 3.0.0-RC1 until version 3.3.0, pipeline handling on aggregate cluster and replication connections reparses an already serialized RESP buffer in AbstractAggregateConnection::write() by splitting it with explode("\r\n") instead of honoring RESP length prefixes. Attacker-controlled keys or values containing CRLF sequences can therefore be interpreted by Command::deserializeCommand() as additional commands. On cluster connections, ClusterStrategy::getFakeKey() can route injected keyless commands using the literal fake key value "key", permitting operations such as shard-wide cache deletion, targeted data modification, data reads, or node disruption. On replication connections, malformed reparsing can throw an uncaught exception and repeatedly terminate affected requests. Only pipeline() reaches this vulnerable path; transaction() and MULTI are not affected. This issue is fixed in version 3.3.0.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
对CRLF序列的转义处理不恰当(CRLF注入)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
predis predis >= 3.0.0-RC1, < 3.3.0 -

II. Public POCs for CVE-2026-84372

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-84372

登录查看更多情报信息。

Patches & Fixes for CVE-2026-84372 (1)

Vendor Advisories for CVE-2026-84372 (1)

Vendor Pages for CVE-2026-84372 (1)

Other References for CVE-2026-84372 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2026-84372

No comments yet


Leave a comment