
Prueba de concepto del exploit para CVE-2025-46819, una lectura fuera de los límites del delimitador de cadenas largas en Redis Lua, que demuestra un fallo mediante entrada malformada.
Un delimitador de cadena larga malformado provoca una lectura fuera de límites del lexer de Lua en Redis 8.2.1.
El analizador de cadenas largas de Lua en Redis 8.2.1 maneja incorrectamente las secuencias malformadas [=..., devolviendo valores centinela que provocan desbordamientos de búfer o recursión excesiva. Los atacantes pueden hacer que Redis lea fuera de los límites o desborde la pila de C.
redis-cliCVE-2025-46819.lua – construye un delimitador malformado enorme y lo alimenta a loadstring.redis-cli -h localhost -p 6379 --eval CVE-2025-46819.lua
Resultado esperado:
En versiones vulnerables normalmente verás "ERR C stack overflow" o un bloqueo inmediato. Redis 8.2.2 (commit 3a1624da2449ac3dbfc4bdaed43adf77a0b7bfba) rechaza el script con "invalid long string delimiter" sin desestabilizar el servidor.
Actualiza a Redis 8.2.2 o posterior, o desactiva Lua para usuarios no confiables.