Publican en internet un exploit PoC que aprovecha una vulnerabilidad

Especialistas de Wiz detectaron recientemente una vulnerabilidad crítica en Redis, que afecta a la versión 8.2.1 y a lanzamientos anteriores. El problema (CVE-2025-49844, puntuación CVSS: 10) radica en un manejo inseguro de la memoria al analizar scripts Lua — en particular, en la función luaY_parser, que no fija el nombre del chunk cargado en la pila antes de iniciar el analizador léxico. Esto abre la puerta a un ataque de tipo use-after-free (UAF), capaz de provocar la ejecución remota de código arbitrario.
La esencia de la vulnerabilidad es la siguiente: Redis utiliza Lua 5.1 para ejecutar scripts integrados. En las versiones vulnerables se puede preparar un script especial en el que el nombre del chunk desencadena la recolección de basura (GC) en el momento en que el analizador todavía accede a la cadena liberada. Esto crea una condición de carrera que permite al atacante inyectar código arbitrario a nivel de C.
Para explotar el problema, se requiere: servidor Redis versión 8.2.1 o anterior; acceso a Redis en la red local; posibilidad de ejecutar scripts Lua (por ejemplo, a través de redis-cli).
El exploit utiliza el archivo CVE-2025-49844.lua, que llama repetidamente a loadstring con un disparador de GC en el nombre del chunk. Ejemplo del ciclo de ataque:
while redis-cli -h localhost -p 6379 --eval CVE-2025-49844.lua >/dev/null; do printf '.' doneSi el ataque tiene éxito, el servidor Redis puede caerse o reiniciar la conexión.
El problema se corrigió en la versión Redis 8.2.2, donde el nombre del chunk se fija de forma rígida en la pila de Lua hasta completar el análisis. La corrección correspondiente está disponible en el commit d5728cb. Los especialistas recomiendan actualizar a Redis 8.2.2 o a una versión posterior. Si no es posible actualizar, deshabilitar la ejecución de scripts Lua para usuarios no confiables.