Vulnerabilidad CVE-2023-28531
Vulnerabilidad CVE-2023-28531
Publicado: 20/01/2026
Escrito por: Nadine Rozell
¿Qué es la vulnerabilidad CVE-2023-28531?
CVE-2023-28531 es una vulnerabilidad de error lógico en el conjunto de OpenSSH, que afecta específicamente a la utilidad ssh-add.
¿Cuándo se descubrió?
CVE-2023-28531 se divulgó públicamente alrededor del 16 de marzo de 2023. Se identificó como una regresión introducida en la versión 8.9 de OpenSSH y se solucionó en el lanzamiento de OpenSSH 9.3.
Productos y versiones afectados
La vulnerabilidad afecta a versiones específicas de OpenSSH que admiten la función de restricciones por salto (per-hop destination constraints) para smartcards.
Producto | Versiones afectadas | Versiones corregidas / enlaces de parches |
OpenSSH | 8.9 a 9.2 | Actualiza a 9.3 o posterior |
Ubuntu Linux | 22.04 LTS, 22.10 | Actualiza los paquetes openssh-client |
Debian Linux | Bookworm (12), Sid (Inestable) | Actualiza los paquetes openssh |
Fedora Linux | Fedora 37, 38 | Actualiza los paquetes openssh |
Descripción técnica de CVE-2023-28531
La vulnerabilidad se encuentra en la herramienta ssh-add, que se usa para cargar claves privadas en el agente de autenticación ssh-agent.
En OpenSSH 8.9 se añadió una función para admitir "restricciones de destino por salto" para claves almacenadas en tarjetas inteligentes. Esta función permite a un usuario cargar una clave, pero restringir su uso a servidores específicos (por ejemplo, "permitir esta clave solo para ssh servidor-salto").
Sin embargo, debido a una falla lógica en la implementación, cuando un usuario ejecuta el comando para añadir una clave de tarjeta inteligente con estas restricciones (por ejemplo, ssh-add -h "constraint" ...), las restricciones nunca se envían realmente al ssh-agent. El agente simplemente recibe la clave y la almacena como una clave sin restricciones. Esto significa que la clave se puede usar para autenticarse en cualquier servidor que la acepte, en lugar de solo los destinos previstos.
Tácticas, técnicas y procedimientos (TTPs)
Los atacantes explotan CVE-2023-28531 principalmente para movimiento lateral y evasión de defensas.
Movimiento lateral: Si un atacante compromete una máquina donde un usuario ha reenviado su agente SSH (creyendo que estaba restringido), el atacante puede secuestrar ese agente para autenticarse en otros servidores de la red a los que el usuario tiene acceso, evadiendo los límites de destino previstos.
Evasión de políticas: La vulnerabilidad anula de forma inherente las políticas de seguridad diseñadas para compartimentar el acceso. Los atacantes aprovechan esto para moverse por las redes con más libertad de la que el administrador pretendía.
Indicadores de compromiso
Detectar la explotación activa es difícil porque el tráfico parece ser tráfico de autenticación SSH legítimo. Sin embargo, los auditores pueden buscar:
Auditorías de configuración: Buscar comandos ssh-add en el historial de shell que usen la bandera -h junto con bibliotecas de tarjetas inteligentes.
Inspección del agente: Los usuarios pueden ejecutar ssh-add -L para listar las claves que están actualmente en su agente. Si una clave se añadió con restricciones, pero aparece en la lista sin ellas, la vulnerabilidad se activó.
Pruebas de concepto y exploits conocidos
No se requieren scripts de explotación complejos para esta vulnerabilidad. El "exploit" es simplemente el uso estándar de la herramienta en una configuración vulnerable.
Los investigadores de seguridad y los proveedores han confirmado que simplemente ejecutar el comando estándar ssh-add con restricciones en una versión vulnerable provoca la falla, lo que verifica que el problema está muy extendido en las distribuciones de Linux sin parchear.
¿Cómo detectar la vulnerabilidad CVE-2023-28531?
Escaneo de versión: El método de detección principal es verificar la versión instalada de OpenSSH. Ejecuta ssh -V en el endpoint. Si la versión reportada está entre 8.9 y 9.2, el sistema es vulnerable.
Escáneres de vulnerabilidades: Herramientas como Tenable Nessus, Qualys y Wiz tienen plugins para identificar sistemas que ejecutan versiones vulnerables de OpenSSH.
Impacto y riesgo de la vulnerabilidad CVE-2023-28531
El NVD categoriza el riesgo como crítico (CVSS 9.8), aunque, en términos estrictos, afecta a un subconjunto específico de usuarios (aquellos que usan tarjetas inteligentes y restricciones).
Para las organizaciones que dependen de estas restricciones para la segmentación de redes de Zero Trust, el impacto es severo. Permite el acceso no autorizado a sistemas sensibles y permite a los atacantes evadir los controles de segmentación de redes implementados en la capa de aplicación.
Estrategias de mitigación y remediación
Aplicar el parche es la única solución eficaz para este defecto de software.
Actualiza OpenSSH: Actualiza los paquetes de cliente y servidor a OpenSSH 9.3 o una versión posterior de inmediato con el administrador de paquetes de tu sistema operativo (por ejemplo, apt upgrade openssh-client, dnf update openssh).
Limita el reenvío del agente: Como buena práctica general, evita usar el reenvío del agente SSH (ssh -A) en hosts no confiables. Si no se usa el reenvío del agente, el riesgo de secuestro del agente se reduce significativamente.
Preguntas frecuentes sobre la vulnerabilidad CVE-2023-28531
CVE-2023-28531 es una vulnerabilidad en OpenSSH que ignora las restricciones de seguridad al agregar claves de tarjetas inteligentes. Cuando un usuario intenta limitar dónde se puede usar una clave, el software no aplica esos límites, lo que permite que la clave se use en cualquier lugar.
No es un virus que infecta sistemas. Es un error en el software OpenSSH instalado. Si un usuario tiene instalada una versión vulnerable, el software simplemente no aplicará correctamente la configuración de seguridad cuando intente usarla.
Sí, para los sistemas que no se han actualizado. Aunque el parche se publicó en 2023, los servidores antiguos o los endpoints descuidados que ejecutan OpenSSH 8.9–9.2 siguen siendo vulnerables a esta forma de evasión de políticas.
Las organizaciones deben asegurarse de que todos los endpoints y servidores Linux estén actualizados a la versión 9.3 de OpenSSH o posterior. Los equipos de seguridad también pueden auditar el uso de SSH para garantizar que el reenvío de agentes solo se use cuando sea necesario.