
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-88382 is an uncontrolled memory allocation vulnerability in the hiredis C library's RESP aggregate parser, classified as a denial-of-service flaw. It affects hiredis at commit 29ea279 and later post-v1.5.0 builds. A remote, unauthenticated attacker can send a single 12-byte malformed RESP protocol message to trigger a multi-gigabyte memory allocation request, causing an out-of-memory (OOM) crash. The vulnerability carries a CVSS v3.1 base score of 7.5 (High) (Feedly, GitHub Issue).
The root cause is classified as CWE-770 (Allocation of Resources Without Limits or Throttling) and CWE-789 (Memory Allocation with Excessive Size Value). In src/read.c, the processAggregateItem() function reads an attacker-controlled element count from the RESP stream and passes it nearly verbatim to hi_calloc(elements, sizeof(redisReply*)). The only bound check uses REDIS_READER_MAX_ARRAY_ELEMENTS = (1LL<<32)-1 (i.e., 4,294,967,295), which is still large enough to request ~34.4 GB for an ARRAY type or ~68.7 GB for a MAP/ATTR type (where the count is doubled before allocation). The hi_calloc wraparound guard does not fire on 64-bit platforms because SIZE_MAX / 8 far exceeds 2^32-1, so the allocation proceeds and exhausts host memory (GitHub Issue).
Successful exploitation causes a deterministic, single-packet denial of service: the target process is terminated by the OS OOM killer (or aborts under ASan), making any hiredis-based service immediately unavailable. There is no confidentiality or integrity impact — the vulnerability is limited to availability. Any application embedding hiredis that parses RESP input from an untrusted network source is at risk, including Redis proxies, gateways, monitoring tools, and custom library consumers (GitHub Issue, Feedly).
A public proof-of-concept is available on GitHub, consisting of minimal 12-byte RESP payloads (%4294967295\r\n for MAP or *4294967295\r\n for ARRAY) with step-by-step reproduction instructions. The exploit requires no authentication, no user interaction, and is fully automatable over the network. The EPSS score is approximately 0.0039, and there is no evidence of in-the-wild exploitation or CISA KEV catalog listing as of the time of reporting (GitHub Issue, Feedly).
%4294967295\r\n (hex: 25 34 32 39 34 39 36 37 32 39 35 0d 0a). Alternatively, send the ARRAY variant *4294967295\r\n (hex: 2a 34 32 39 34 39 36 37 32 39 35 0d 0a).processAggregateItem() function parses the element count (4,294,967,295), passes the bound check (value equals REDIS_READER_MAX_ARRAY_ELEMENTS), and for MAP types doubles it to 8,589,934,590 before calling hi_calloc(elements, 8).hi_calloc, createArrayObject, or processAggregateItem; ASan output containing ERROR: AddressSanitizer: out of memory: allocator is trying to allocate 0xffffffff0 bytes or 0x7fffffff8 bytes.kernel: Out of memory: Kill process) referencing the affected service.The reporter submitted a fix (commit 4c34f02) that addresses the amplification by bounding pre-allocation to data actually buffered on the wire, preventing a 12-byte input from claiming billions of elements. Users should update hiredis to a version that includes this fix (post-commit 4c34f02, once merged into master). As interim workarounds: restrict network access to hiredis-based services to trusted clients only using firewall rules; implement rate limiting on RESP protocol connections; and monitor memory consumption on affected hosts. A numeric cap of approximately 2^28 (~268M elements) was also discussed as an acceptable alternative bound (GitHub Issue, Feedly).
The hiredis maintainer (michael-grunder) engaged directly on the GitHub issue, initially noting skepticism about attack scenarios requiring a malicious Redis server but acknowledging the amplification concern as valid after discussion. The maintainer agreed that the wire-length heuristic proposed by the reporter is a sound fix strategy and indicated the Redis team would weigh in on the preferred approach. The issue prompted a concrete patch commit (4c34f02) from the reporter within two weeks of disclosure (GitHub Issue).
Fix availability across major Linux distributions and their releases.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."