La vulnerabilidad CVE-2026-123158 expone servidores Linux que utilizan musl libc y tienen el PAM deshabilitado a un riesgo concreto: permite que un atacante remoto obtenga acceso vía SSH sin conocer la contraseña, eludiendo la autenticación por contraseña en condiciones específicas. El problema fue corregido por OpenSSH en la versión 10.6p2. Para equipos técnicos responsables de infraestructura Linux, la actualización y la revisión de las configuraciones de autenticación son medidas urgentes para contener el riesgo.
CVE-2026-123158: entendiendo la falla
El error ocurre en sistemas Linux que combinan la biblioteca musl libc —común en distribuciones ligeras como Alpine Linux— y el PAM (Pluggable Authentication Modules) desactivado. En esos casos, el sshd puede interpretar incorrectamente contraseñas muy largas (entre 257 y 1024 bytes), permitiendo acceso no autorizado incluso cuando la contraseña proporcionada es inválida. La falla se manifiesta cuando existe una cuenta local con campo de contraseña '*' (frecuente en cuentas configuradas solo para inicio de sesión por clave) y al menos otra cuenta con hash de contraseña del tipo $5$ o $6$.
Distribuciones como Alpine Linux son especialmente susceptibles, ya que normalmente compilan OpenSSH sin soporte para el PAM. Sistemas como Red Hat Enterprise Linux, que utilizan glibc y mantienen el PAM activo, no se ven afectados. El impacto es elevado en entornos de producción, nube o servidores expuestos a Internet, especialmente donde la autenticación por contraseña sigue activa y las cuentas locales no han sido revisadas.
El ataque puede realizarse de forma remota, sin necesidad de interacción del usuario o conocimiento previo de la contraseña. Esto amplía la superficie de riesgo y exige atención reforzada en entornos multiusuario o automatizados.
Detalles técnicos: cómo ocurre la explotación
Para explotar la CVE-2026-123158, el invasor depende de una secuencia de condiciones:
- OpenSSH ejecutándose en un sistema Linux con musl libc y PAM deshabilitado.
- Autenticación por contraseña activada en el archivo sshd_config.
- Presencia de una cuenta local cuyo campo de contraseña en el /etc/shadow sea '*'.
- Existencia de al menos una cuenta con hash de contraseña $5$ (SHA-256) o $6$ (SHA-512).
El atacante realiza el ataque enviando una contraseña especialmente larga durante el intento de inicio de sesión SSH. El sshd vulnerable no valida correctamente el tamaño del hash de la contraseña, permitiendo el acceso incluso sin la contraseña correcta. El error radica en la manipulación de las cadenas de contraseña y hash, agravado por la ausencia del PAM como capa de autenticación.
Para identificar posibles explotaciones, se recomienda monitorear registros de autenticación, buscar intentos de inicio de sesión con contraseñas de tamaño inusual y analizar patrones atípicos de acceso. Herramientas como auditd y la auditoría del kernel de Linux pueden emplearse para rastrear acciones sospechosas, especialmente en cuentas restringidas a autenticación por clave.
Escenarios de riesgo: análisis profundo
- Servidores Alpine Linux en la nube y contenedores: Entornos que utilizan Alpine Linux, frecuentes en contenedores y soluciones en la nube por su ligereza, quedan expuestos si la autenticación por contraseña no se desactiva explícitamente. Incluso las cuentas destinadas a inicio de sesión por clave, si mantienen campo de contraseña '*', se convierten en vectores de ataque si existen otras cuentas con hash $5$ o $6$.
- Infraestructura multiusuario: En servidores con múltiples usuarios locales, es mayor la oportunidad de coexistir configuraciones que permiten la explotación. La ausencia de auditoría regular sobre usuarios y contraseñas puede dejar brechas no identificadas. Un ejemplo es un equipo DevOps con cuentas antiguas no revisadas.
- Pipelines de automatización y CI/CD: Imágenes de contenedores o VMs basadas en versiones vulnerables de OpenSSH pueden propagar el riesgo a lo largo del ciclo de automatización, especialmente si las actualizaciones no son automatizadas. Un pipeline que genera múltiples instancias a partir de una imagen de Alpine Linux desactualizada propaga la vulnerabilidad a gran escala.
- Entornos con glibc y PAM: Sistemas como Red Hat Enterprise Linux, que utilizan glibc y mantienen PAM activado por defecto, no son afectados. Este contraste refuerza la importancia de entender no solo el software, sino también las bibliotecas y opciones de compilación involucradas en la distribución elegida.
El acceso obtenido a través de esta falla puede resultar en shell remoto, instalación de malware, persistencia y búsqueda de privilegios elevados. Entornos sin políticas rígidas de acceso o sin confinamiento a través de SELinux son aún más vulnerables a daños amplios.
Mitigación: orientaciones prácticas
Para proteger servidores vulnerables, siga estas recomendaciones técnicas alineadas con las orientaciones de las distribuciones y de OpenSSH:
- 1. Actualice a OpenSSH 10.6p2: Instale la versión corregida tan pronto como sea posible. En Alpine Linux, utilice:
apk update && apk add --upgrade openssh
Después de actualizar, reinicie el sshd:
rc-service sshd restart o service sshd restart - 2. Desactive la autenticación por contraseña si no puede actualizar inmediatamente: En el sshd_config, configure PasswordAuthentication no y reinicie el servicio.
sed -i 's/^#\?PasswordAuthentication .*/PasswordAuthentication no/' /etc/ssh/sshd_config - 3. Prefiera autenticación por clave SSH o múltiples factores: Asegúrese de que todos los accesos se realicen por claves criptográficas y, si es posible, adopte autenticación multifactor para reducir la superficie de ataque.
- 4. Audite usuarios y campos de contraseña: Revise /etc/shadow para identificar cuentas con campo de contraseña '*', usando, por ejemplo:
awk -F: '$2 == "*" {print $1}' /etc/shadow
Elimine cuentas innecesarias y ajuste configuraciones según el uso real. - 5. Monitoree y audite accesos: Active registros detallados y utilice herramientas como auditd para identificar intentos sospechosos. Ajuste /etc/audit/audit.rules para registrar eventos relevantes.
- 6. Implemente confinamiento con SELinux: Mantenga SELinux en modo enforcing y asigne cuentas a dominios restringidos. Esto limita el alcance de los invasores en caso de explotación.
- 7. Actualice imágenes de contenedores y pipelines automatizados: Asegúrese de que todas las imágenes base estén corregidas antes de nuevas implementaciones. Automatice la verificación de versiones de OpenSSH en pipelines CI/CD para evitar reincidencias.
Refuerce la práctica de actualización continua y revisión de las configuraciones de autenticación en todos los entornos Linux bajo su gestión.
Errores recurrentes y cómo evitarlos
- Procrastinar actualizaciones: Posponer la actualización de OpenSSH mantiene el entorno vulnerable. Cortafuegos o restricciones de red no sustituyen la corrección de la falla, ya que el ataque puede partir de usuarios internos o de redes ya comprometidas.
- mantener PasswordAuthentication activado innecesariamente: Even if the main access is through keys, leaving PasswordAuthentication yes active exposes local accounts. Desactívelo siempre que sea posible.
- Olvidar reiniciar el sshd: Después de actualizar o cambiar configuraciones, reinicie el servicio para garantizar que los cambios surjan efecto:
systemctl restart sshd o service sshd restart - No revisar cuentas locales y campos de contraseña: Las cuentas antiguas o sin uso pueden ser explotadas. Utilice comandos como awk -F: '$2 == "*" {print $1}' /etc/shadow periódicamente para identificar casos de riesgo.
- Ignorar entornos automatizados: Los contenedores y pipelines pueden perpetuar la vulnerabilidad si las imágenes base no se actualizan. Siempre verifique y pruebe imágenes antes de desplegar en producción.
- Relajar políticas de SELinux sin motivo: Mantener SELinux en modo permisivo amplía el impacto de una invasión. Utilice el modo enforcing siempre que sea posible para limitar la acción de los invasores.
Evitar estos errores fortalece la postura de seguridad de la infraestructura y reduce considerablemente la exposición al riesgo.
Preguntas frecuentes
¿Qué sistemas se ven afectados por la CVE-2026-123158?
Los servidores Linux que utilizan musl libc y tienen el PAM deshabilitado, como Alpine Linux, son vulnerables. Los sistemas basados en glibc y con PAM activo (por ejemplo, Red Hat Enterprise Linux) no se ven afectados.
¿Qué hacer si no es posible actualizar inmediatamente?
Desactive la autenticación por contraseña en el sshd_config, reinicie el servicio sshd y asegúrese de que todos los accesos se realicen exclusivamente por claves SSH. Monitoree registros y revise periódicamente usuarios y configuraciones hasta que la actualización sea viable.
¿Cómo identificar si el entorno está vulnerable?
Verifique si el sistema utiliza musl libc, si el PAM está deshabilitado y si el OpenSSH es anterior a la versión 10.6p2. Analice el /etc/shadow para cuentas con campo de contraseña '*', y si hay al menos una cuenta con hash $5$ o $6$.
¿Distribuciones como Ubuntu se ven afectadas?
Red Hat Enterprise Linux no se ve afectada. La información disponible no detalla el caso de Ubuntu, pero la vulnerabilidad está restringida a sistemas Linux que utilizan musl libc y tienen el PAM deshabilitado.
Conclusión
Para mitigar la CVE-2026-123158, mantenga OpenSSH actualizado, desactive la autenticación por contraseña cuando sea posible y utilice autenticación por claves. Revise cuentas locales y automatice actualizaciones en entornos de producción. Para ampliar su conocimiento en seguridad de infraestructura y DevOps, acceda a la plataforma de cursos de Hcode.
Fuentes
OpenSSH 10.6p2, OpenSSH, 5 de noviembre de 2026.
Apreciación de seguridad: bypass de autenticación por contraseña de openssh-server, Alpine Linux, 5 de noviembre de 2026.
CVE-2026-123158, Red Hat Customer Portal, 5 de noviembre de 2026.