Skip to content

El compromiso del CLI de OVHcloud y el fallo del pipeline de releases

20 de octubre de 2026 · PlayCISO

El malware no llegó como una dependencia turbia que podrías haber filtrado. Llegó firmado, en la práctica, por uno de los tuyos: publicado desde la cuenta de un desarrollador de confianza en una release oficial. The Stack informó el 19 de octubre de 2026 de que un repositorio de la interfaz de línea de comandos (CLI) de OVHcloud sufrió un breve compromiso en un ataque a la cadena de suministro, que hizo público su CEO, Octave Klaba. El atacante, según Klaba, usó la cuenta de GitHub de uno de los desarrolladores y añadió un binario hecho para sacar secretos del disco. El titular de la cuenta es víctima de esa toma de control, no el atacante, y aquí no nombramos a ninguna persona.

Qué pasó y qué hacer, en palabras sencillas

Lo que comunicó OVHcloud (19 de octubre de 2026, según The Stack y las publicaciones del CEO): un atacante usó la cuenta de GitHub de un desarrollador para publicar una compilación maliciosa del CLI de OVHcloud con un binario que roba secretos. Un cliente lo señaló; OVHcloud dice que se bloqueó en unos 94 minutos. Afectadas: v0.11.0–v0.15.0. Limpias: v0.10.0 y v0.16.0. Se vio afectado un único repositorio.

Qué hacer: si ejecutaste una versión afectada, sigue el consejo de OVHcloud y rota todos los secretos de esa máquina (claves de nube, tokens de API, claves SSH, archivos .env), pasa a una versión limpia y compila preferiblemente desde un proxy de módulos verificado en lugar de una etiqueta mutable. Después mira hacia dentro: ¿resistirían tu pipeline de releases y tus cuentas de desarrollo el mismo movimiento?

Análisis independiente, de terceros, para responsables de seguridad. PlayCISO no está afiliado a OVHcloud ni a The Stack y no es el origen de ninguno de los hechos que aquí se recogen; cada afirmación se atribuye al artículo de The Stack y a las declaraciones públicas de OVHcloud, se transmite con cuidado y no se ha verificado de forma independiente. Nos referimos al desarrollador cuya cuenta se usó solo como víctima de una toma de control de la cuenta, nunca por su nombre.

Lo que se afirma, y lo que no

Según The Stack, Klaba dijo que OVHcloud había «terminado las comprobaciones iniciales y ningún otro repositorio está afectado», que se había rastreado el incidente y que «el hacker usó la cuenta de GitHub de uno de los desarrolladores y añadió un binario cuya función es recuperar secretos del disco». Describió la calidad del binario como mala, «pero puede llegar hasta el final», y pidió a los usuarios afectados que «cambien todos los secretos de su disco». El cliente que dio la alarma señaló que la cuenta que hizo los cambios maliciosos no era un miembro público de la organización de OVH ni aparecía entre los colaboradores del repositorio: «puede que solo sea una membresía privada, pero junto con la compilación sucia parecía que valía la pena señalarlo en lugar de darlo por bueno».

Lo que no está establecido: que el autor de commits que aparece hiciera nada malo. Un ataque de toma de control de cuentas lleva el nombre de la víctima. Trata la identidad del autor como una credencial comprometida, no como un sospechoso.

La historia real para los defensores: tu pipeline de releases es producción

Quita el nombre del proveedor y lo que queda es una historia de integridad de las releases, no de filtrado de dependencias. Nuestra lista de comprobación de integridad de releases de GitHub puntúa los 12 controles que cierran esta brecha, desde las etiquetas de release protegidas hasta una aprobación humana con llave de hardware. La mayoría de las defensas de la cadena de suministro miran hacia fuera: analizan los paquetes que incorporas. Este ataque fue en sentido contrario: una cuenta interna de confianza publicó un artefacto manipulado con un número de versión oficial. Ningún análisis de dependencias del lado del consumidor lo detecta si te limitas a fiarte de la etiqueta.

Lo hicieron posible dos fallos. Primero, se tomó el control de una cuenta de desarrollo con poder para publicar una release, así que el control que debería proteger la autoridad de publicación (MFA resistente al phishing, mínimo privilegio y releases sujetas a un paso de aprobación en lugar del push de una sola cuenta) no bastó por sí solo. Segundo, el artefacto publicado era mutable y no estaba verificado: un binario nuevo podía aparecer en una release y consumirse como auténtico. OVHcloud parece haber tenido la suerte de un cliente atento y una respuesta rápida; ninguna de las dos cosas sustituye a los controles.

Cinco comprobaciones que todo responsable de seguridad debería hacer esta semana

  1. Las releases se publican solo desde un pipeline blindado y con aprobación obligatoria. Nunca desde el portátil de un desarrollador ni con un push directo a una rama de release. El pipeline, no una persona, tiene las claves de firma y los derechos de publicación.
  2. Los artefactos son inmutables y están firmados, con procedencia. Una etiqueta existente nunca puede recompilarse en silencio; en su lugar se publican versiones nuevas. Firma las releases (por ejemplo con Sigstore/cosign) y adjunta la procedencia de la compilación (SLSA) para que los consumidores puedan verificar su origen.
  3. Las cuentas de desarrollo se tratan como privilegiadas. MFA resistente al phishing (passkeys / FIDO2) en toda cuenta con acceso de escritura o de release, SSO con mínimo privilegio y baja inmediata cuando alguien se va. Una contraseña robada no debe bastar para publicar código.
  4. Los consumidores verifican antes de compilar. Compila desde un proxy de módulos verificado o un checksum fijado en lugar de una etiqueta mutable, y verifica las firmas antes de instalar. El cliente de este caso pasó a compilar desde el proxy de módulos: hazlo antes de un incidente, como política.
  5. Puedes detectarlo tú mismo. Alerta ante un autor de commits inesperado (alguien que no es miembro), una compilación «sucia» o fuera de banda, o un binario nuevo que aparece en una release. Y ofrece un canal privado de notificación de vulnerabilidades para que quien encuentre algo no tenga que abrir una incidencia pública para llegar a ti.

Los desarrolladores son la cabeza de playa, y están bajo presión

Este incidente se enmarca en una tendencia más amplia: los atacantes apuntan cada vez más a los desarrolladores, a sus credenciales y a sus cuentas como punto de entrada para los ataques a la cadena de suministro aguas arriba. Como dijo Sonatype en su informe State of the Software Supply Chain de 2026 (hablando del problema general, no de este incidente concreto): «Los atacantes saben que es poco probable que los desarrolladores bajo la presión de los plazos presten una atención detallada a cada dependencia. Si un paquete “parece correcto”, con un código mayormente comprensible, un README.md de apariencia legítima y un número razonable de descargas, es probable que se instale». La misma realidad humana (confianza, prisa, información incompleta) es la que explota desde dentro una toma de control de cuentas.

Revisa tu propia postura

Nada de esto es abstracto cuando un artefacto con tu nombre está distribuyendo malware. Estos recursos de PlayCISO te ayudan a poner a prueba los controles de releases y de dependencias que dejó al descubierto este incidente:

Para otros incidentes que hemos cubierto, consulta el índice de brechas de PlayCISO.

La conclusión para los responsables

No puedes impedir que a toda cuenta le hagan phishing. Lo que sí puedes hacer es que una sola cuenta comprometida no baste para publicar una release: somete la publicación a una aprobación, haz que los artefactos sean inmutables y estén firmados, verifica antes de compilar y vigila al autor inesperado. Que OVHcloud lo detectara en 94 minutos es un buen resultado, pero dependió de unos ojos externos. Construye un pipeline que no los necesite.

Fuente

Este artículo transmite y analiza la información de The Stack y las declaraciones públicas de OVHcloud; no es el origen de ninguno de los hechos de fondo, que siguen siendo del proveedor y del medio.

Preguntas frecuentes

¿Cuáles son los detalles de la brecha de datos y del compromiso de la herramienta de OVHcloud?

Según informó The Stack (19 de octubre de 2026) y las publicaciones del CEO de OVHcloud, Octave Klaba: un repositorio de la interfaz de línea de comandos (CLI) de OVHcloud sufrió un breve compromiso en un ataque a la cadena de suministro. Klaba dijo que un atacante usó la cuenta de GitHub de uno de los desarrolladores para añadir un binario hecho para recuperar secretos del disco; se vio afectado un único repositorio; un cliente lo señaló y la release maliciosa se bloqueó en unos 94 minutos. Las versiones v0.11.0–v0.15.0 eran maliciosas y v0.10.0 y v0.16.0 están limpias, y se aconsejó a los usuarios afectados rotar todos los secretos de la máquina afectada. El desarrollador cuya cuenta se usó es víctima de una toma de control de la cuenta, no el atacante. Son declaraciones de OVHcloud y de The Stack, transmitidas aquí con atribución y no verificadas de forma independiente por PlayCISO.

¿Qué comunicó exactamente OVHcloud?

Según The Stack (19 de octubre de 2026) y las publicaciones del CEO de OVHcloud, Octave Klaba, un repositorio de la interfaz de línea de comandos (CLI) de OVHcloud sufrió un breve compromiso en un ataque a la cadena de suministro que un cliente notificó a la empresa. Klaba dijo que el atacante usó la cuenta de GitHub de uno de los desarrolladores y añadió un binario cuya función es recuperar secretos del disco, que se vio afectado un único repositorio y que la release maliciosa se detectó y se bloqueó en unos 94 minutos. OVHcloud indicó como comprometidas las versiones v0.11.0, v0.12.0, v0.13.0, v0.14.0 y v0.15.0, y como limpias v0.10.0 y v0.16.0. Son declaraciones de OVHcloud y de The Stack, transmitidas aquí con atribución; PlayCISO no está afiliado a ninguno de los dos y no las ha verificado de forma independiente.

¿Fue un desarrollador el responsable del ataque?

No, y esto importa. Según Klaba, el atacante USÓ la cuenta de GitHub de un desarrollador; el titular de la cuenta es víctima de una toma de control, no el autor. El nombre del autor del commit que apareció en el cambio malicioso no es, por tanto, prueba de que esa persona hiciera nada malo. A propósito, no nombramos a la persona: atribuir el ataque al titular de la cuenta sería inexacto e injusto. La lección de seguridad trata de los controles que rodean a la cuenta, no de la persona.

Si usé el CLI de OVHcloud, ¿qué debo hacer?

Sigue primero las indicaciones de la propia OVHcloud: si instalaste una versión afectada (v0.11.0–v0.15.0), Klaba aconsejó cambiar todos los secretos de tu disco, ya que el binario malicioso estaba hecho para recolectarlos. Después pasa a una versión limpia (v0.10.0, o v0.16.0 y posteriores) y compila preferiblemente desde el proxy de módulos o un checksum verificado en lugar de una etiqueta mutable. Revisa cualquier máquina en la que se ejecutara el CLI afectado en busca de credenciales expuestas (claves de nube, tokens de API, claves SSH, archivos .env), rota esas credenciales y comprueba si se han usado de forma inesperada. Es una orientación general, no sustituye al aviso de OVHcloud: sigue las últimas instrucciones del proveedor.

¿Por qué «lo detectó un cliente» es la parte incómoda?

Porque la detección funcionó por suerte, no por diseño. La release maliciosa estuvo circulando hasta que un usuario externo notó un autor de commits desconocido (una cuenta que no era miembro público de la organización ni aparecía entre los colaboradores del repositorio) junto con una compilación «sucia», y decidió señalarlo en lugar de dar por hecho que era legítimo. Un pipeline maduro lo habría detectado internamente: las releases saldrían solo de una compilación con aprobación obligatoria, los artefactos serían inmutables y estarían firmados, y la monitorización alertaría ante un autor inesperado o un binario fuera de banda. Depender de que un cliente detecte tu compromiso no es un control.

¿Qué debería sacar de esto un responsable de seguridad?

Que debe tratar su pipeline de releases y las cuentas de sus desarrolladores como infraestructura de producción. Cinco comprobaciones: (1) las releases se publican SOLO desde un pipeline de CI blindado que requiere aprobación, nunca desde la máquina local de un desarrollador ni con un push directo; (2) los artefactos publicados son inmutables (sin recompilar en silencio una etiqueta existente) y están firmados, con procedencia o atestación; (3) toda cuenta con acceso de escritura o de release usa MFA resistente al phishing (passkeys / FIDO2), mínimo privilegio y baja inmediata; (4) como consumidor, compila desde un proxy de módulos verificado o un checksum fijado y verifica las firmas antes de instalar, en lugar de fiarte de una etiqueta mutable; (5) puedes detectar tú mismo un autor de commits inesperado, una compilación sucia o un binario nuevo en una release, y ofreces un canal privado de notificación de vulnerabilidades para que quien encuentre algo no tenga que abrir una incidencia pública. Nuestro Release Pipeline Integrity Scorecard recorre estos controles.

🖤 Black Friday: new customers get 3 months of Pro for $5, then $5/month. Ends 30 Nov. Claim 3 months for $5 →