Alerta técnica: vulnerabilidad crítica en Redis (CVE-2025-49844) — qué significa, quién está afectado y cómo mitigar hoy mismo (RunCloud/Ubuntu)

Se ha divulgado CVE-2025-49844, una vulnerabilidad crítica (CVSS 9,9) en Redis que permite a un usuario autenticado ejecutar scripts Lua especialmente diseñados para manipular el recolector de basura (use-after-free) y potencialmente lograr ejecución remota de código (RCE). Afecta a todas las versiones con scripting Lua habilitado. El parche oficial está disponible en Redis 8.2.2. En Ubuntu, ya hay versiones corregidas para 24.04 (noble), 25.04 (plucky) y 25.10 (questing); 22.04 (jammy) figura como “vulnerable” mientras Canonical publica el update correspondiente.

Si usas RunCloud: Redis en sus servidores lo gestiona Ubuntu, no RunCloud. Si tienes Security Updates activos (por defecto), tu servidor recibirá el parche automáticamente cuando Canonical lo publique para tu release. Hasta entonces, aplica la mitigación temporal recomendada por Ubuntu: bloquear EVAL y EVALSHA (o todo el “@scripting”) mediante ACL.


1) ¿Quién está afectado?

  • Software: Redis con scripting Lua disponible (EVAL / EVALSHA).
  • Impacto: con credenciales (p. ej., AUTH), un atacante puede cargar un script Lua que explota un use-after-free y escalar a RCE.
  • Alcance: todas las versiones que exponen scripting Lua.
  • Arreglos aguas arriba: Redis 8.2.2.
  • Ubuntu (según aviso oficial):
    • 25.10 (questing): corregido (redis 5:8.0.2-3ubuntu0.25.10.1 / redict 7.3.5+ds-1ubuntu0.1).
    • 25.04 (plucky): corregido (redis 5:7.0.15-3ubuntu0.1 / redict 7.3.2+ds-1ubuntu0.1).
    • 24.04 LTS (noble): corregido (redis 5:7.0.15-1ubuntu0.24.04.2).
    • 22.04 LTS (jammy): vulnerable (pendiente update del repositorio estándar).
    • 20.04 LTS (focal) y anteriores: fixes disponibles bajo ESM/Ubuntu Pro.

Nota: “valkey” (fork de Redis) aparece como vulnerable en 24.04/25.04/25.10 a la fecha del aviso.


2) Qué hacer ahora (prioridades)

A) Aplica el parche en cuanto esté disponible para tu release

  • Verifica si tu sistema ya tiene candidato: apt update apt list --upgradable | grep -i redis
  • Fuerza la instalación cuando Canonical lo libere para tu Ubuntu: sudo apt update sudo apt install --only-upgrade redis-server sudo systemctl restart redis
  • Comprueba versión: redis-cli INFO server | grep -E 'redis_version|redis_git_sha1'

RunCloud: si tienes Security Updates activados (por defecto), el parche llegará automáticamente. Aun así, vigila el panel y los apt logs.

B) Mitigación temporal recomendada por Ubuntu/RunCloud (bloquear scripting Lua)

Mientras esperas el parche en Ubuntu 22.04 (o si no puedes actualizar de inmediato), bloquea EVAL y EVALSHA vía ACL:

  1. Edita la configuración: sudo nano /etc/redis/redis.conf
  2. Añade al final (sustituye yourpassword por tu contraseña real de Redis, visible en ese mismo archivo o en RunCloud → Server Settings → Redis): user default on >yourpassword ~* &* +@all -eval -evalsha
  3. Reinicia: sudo systemctl restart redis
  4. Verifica ACL: redis-cli AUTH yourpassword ACL LIST Debes ver que el usuario default no tiene eval ni evalsha.

Prueba directa:

redis-cli -a yourpassword EVAL "return 1" 0
# Debería fallar con (error) NOPERM this user has no permissions to run the 'eval' command...
Lenguaje del código: PHP (php)

Compatibilidad (Redis 6.0.16 en Ubuntu 22.04)

Si Redis no reinicia tras añadir &* en la ACL (caso reportado en 6.0.16/jammy), usa esta variante:

user default on >yourpassword ~* +@all -@scripting +script
Lenguaje del código: JavaScript (javascript)
  • -@scripting bloquea todo el grupo de comandos de Lua.
  • +script re-habilita comandos de gestión segura (SCRIPT FLUSH, EXISTS, etc.).

Reinicia y verifica nuevamente.

¿Redis sin ACL (versiones muy viejas)?

Si usas una versión sin ACL robustas y no puedes actualizar ya, puedes neutralizar comandos renombrándolos a vacío (último recurso):

rename-command EVAL    ""
rename-command EVALSHA ""
Lenguaje del código: PHP (php)

Reinicia y comprueba que ya no existen.

Importante: aplica la mitigación en todos los nodos (máster/replicas, cluster y sentinel) y en todas las instancias que acepten conexiones de aplicaciones/usuarios.


3) Checklist rápido (RunCloud / Ubuntu)

  • Security Updates activos en RunCloud Dashboard (On por defecto).
  • Comprobar versión de Redis y release de Ubuntu (redis-cli INFO server, lsb_release -a).
  • Si estás en 22.04 u otra release aún vulnerable, aplicar ACL anterior y reiniciar.
  • Validar con redis-cli que EVAL/EVALSHA están bloqueados.
  • Monitorizar apt update hasta que llegue el paquete corregido, actualizar y retirar la mitigación solo después de confirmar versión segura.
  • Si usas Docker: reconstruye tus imágenes base con redis 8.2.2 o el paquete Ubuntu ya parcheado; aplica la ACL como override de redis.conf si no puedes reconstruir aún.

4) Detección y observabilidad (opcional, pero recomendado)

  • Logs: revisa si hay intentos de EVAL/EVALSHA tras aplicar la ACL.
  • Alertas: crea una comprobación sencilla que ejecute ACL LIST y verifique presencia de -eval/-evalsha o -@scripting.
  • Exposición: asegúrate de que Redis no está expuesto a Internet sin autenticación (firewall, bind 127.0.0.1 ::1 si procede, requirepass).
  • Scope: inventaría todas las instancias de Redis (producción, staging, dev, contenedores) y aplica la medida a todas.

5) Preguntas frecuentes

¿Basta con bloquear EVAL/EVALSHA?
Como mitigación temporal, sí: impide el vector que explota el fallo. No sustituye al parche (Redis 8.2.2 / paquetes de Ubuntu corregidos). En Redis 6.0.16/22.04, usa la variante -@scripting +script si la sintaxis anterior te rompe el arranque.

¿Pierdo funcionalidad al bloquear scripting?
Sí, cualquier script Lua (p. ej., extensiones que dependan de EVAL) fallará. Si tu aplicación necesita scripting, evalúa aislar esa instancia, reducir privilegios y acelerar la actualización a una versión parcheada.

¿Cuándo puedo retirar la ACL de mitigación?
Una vez que verifiques que tu instancia ejecuta una versión corregida (Redis 8.2.2 o el paquete Ubuntu indicado en el aviso) y que no hay dependencias críticas en Lua que requieran un análisis adicional.

Uso Ubuntu 24.04/25.04/25.10: ¿necesito hacer algo?
Si tu sistema ya recibió el paquete corregido (ver “Status” del aviso de Ubuntu), actualiza con apt y reinicia Redis. Aun así, es prudente revisar si tus instancias exponen scripting sin necesidad.


6) Enlaces útiles


Conclusión

CVE-2025-49844 es crítica, fácil de explotar en configuraciones por defecto con scripting habilitado y su impacto puede ser RCE. La buena noticia: existe parche (Redis 8.2.2) y la mitigación temporal es sencilla con ACL. Si gestionas servidores con RunCloud/Ubuntu, asegúrate de que Security Updates estén activos, aplica la mitigación hoy y actualiza en cuanto Canonical libere el paquete para tu release. Mantén la mitigación hasta confirmar que tu versión ya está corregida.

Suscríbete al boletín SysAdmin

Este es tu recurso para las últimas noticias y consejos sobre administración de sistemas, Linux, Windows, cloud computing, seguridad de la nube, etc. Lo enviamos 2 días a la semana.

¡Apúntate a nuestro newsletter!


– patrocinadores –

Noticias destacadas

– patrocinadores –

¡SUSCRÍBETE AL BOLETÍN
DE LOS SYSADMINS!

Scroll al inicio
×