Vulnerabilidad crítica (CVSS 10.0) en Redis expuesta permite RCE y ha existido por 13 años

Se ha revelado una vulnerabilidad crítica de Ejecución de Código Remoto (RCE) en Redis, identificada como CVE-2025-49844 y apodada “RediShell”, con una puntuación máxima de CVSS 10.0. La falla ha estado latente en el código de Redis durante aproximadamente 13 años y permite a un atacante con acceso autenticado ejecutar código nativo en el servidor host.


Detalles de la Falla y Riesgo de Explotación

La vulnerabilidad explota una falla en el scripting Lua de Redis, comprometiendo la seguridad del sistema operativo subyacente.

  • Mecanismo: La falla es un error de Use-After-Free (UAF) explotado al manipular el recolector de basura durante la ejecución de scripts Lua. Esto permite al script malicioso escapar del sandbox de Lua y ejecutar código arbitrario en el servidor que hospeda Redis.
  • Requisito: El atacante debe tener credenciales válidas en Redis (autenticación activa) para enviar el script Lua. La vulnerabilidad no permite el acceso sin autenticación por sí misma.
  • Alcance del Riesgo: La falla existe en todas las versiones de Redis que permiten scripting Lua. Aunque se requiere autenticación, se estima que cientos de miles de instancias de Redis están expuestas a Internet, y cerca de 60,000 de ellas carecen de autenticación o están mal protegidas, lo que reduce drásticamente la barrera de acceso.

Consecuencias Críticas
  • Control Total: Escapar del sandbox de Lua equivale a una escalada de privilegios significativa, dando al atacante control completo sobre el servidor host subyacente.
  • Latencia Histórica: El hecho de que la falla haya existido por 13 años significa que instancias antiguas u olvidadas en la nube, que suelen estar desatendidas, son altamente explotables.
  • Riesgo por Defecto: La capacidad de ejecutar scripts Lua por defecto en Redis se convierte en un riesgo inaceptable si no se limita o supervisa estrictamente a los usuarios.

Recomendaciones
  1. Actualizar Redis de Inmediato
  • Parche Oficial: Migrar a las versiones corregidas publicadas por Redis para mitigar la CVE-2025-49844. Las versiones seguras incluyen: Redis OSS/CE 6.2.20, 7.2.11, 7.4.6, 8.0.4, 8.2.2 o superior.
  • Verificación: Confirmar que todas las instancias (productivas, de desarrollo y de staging) hayan aplicado el parche.
  1. Fortalecer la Autenticación y el Acceso a la Red
  • Autenticación Obligatoria: Asegurarse de que todas las instancias de Redis requieran una contraseña fuerte (requirepass configurado). No permitir ninguna instancia sin autenticación expuesta en ningún entorno.
  • Restricción de Red: No exponer Redis directamente a Internet. Utilizar firewalls, VPNs, controles de acceso IP o redes privadas virtuales para asegurar que solo los sistemas autorizados y de confianza puedan conectarse a Redis.
  1. Deshabilitar o Limitar el Scripting Lua
  • Mitigación Temporal: Como medida temporal o permanente, deshabilitar la ejecución de scripts Lua si no es estrictamente necesaria.
  • ACLs: Revocar los comandos EVAL y EVALSHA mediante Listas de Control de Acceso (ACLs) para usuarios que no necesiten esta funcionalidad, limitando la superficie de ataque de la vulnerabilidad.

Related Post