Vulnerabilidad crítica de GitHub expone más de 4,000 repositorios a un ataque de repojacking


Una nueva vulnerabilidad revelada en GitHub podría haber expuesto miles de repositorios al riesgo de ataques de repojacking, muestran nuevos hallazgos.

La falla "podría permitir que un atacante explote una condición de carrera dentro de las operaciones de creación de repositorios y cambio de nombre de usuario de GitHub", dijo Elad Rapoport, investigador de seguridad de Checkmarx, en un informe técnico compartido con The Hacker News.

"La explotación exitosa de esta vulnerabilidad afecta a la comunidad de código abierto al permitir la apropiación de más de 4,000 paquetes de código en lenguajes como Go, PHP y Swift, así como las acciones de GitHub".

Tras la divulgación responsable el 1 de marzo de 2023, la plataforma de alojamiento de código propiedad de Microsoft ha abordado el problema a partir del 1 de septiembre de 2023.

El repojacking, abreviatura de apropiación de repositorio, es una técnica en la que un actor de amenazas puede eludir un mecanismo de seguridad llamado jubilación del espacio de nombres del repositorio popular y, en última instancia, controlar un repositorio.

Lo que hace la medida de protección es evitar que otros usuarios creen un repositorio con el mismo nombre que un repositorio con más de 100 clones en el momento en que se cambia el nombre de su cuenta de usuario. En otras palabras, la combinación del nombre de usuario y el nombre del repositorio se considera "retirada".

Si esta salvaguardia se eludiera de manera trivial, podría permitir a los actores de amenazas crear nuevas cuentas con el mismo nombre de usuario y cargar repositorios maliciosos, lo que podría llevar a ataques a la cadena de suministro de software.


El nuevo método delineado por Checkmarx aprovecha una posible condición de carrera entre la creación de un repositorio y el cambio de nombre de un usuario para lograr el repojacking. Específicamente, implica los siguientes pasos:

  1. La víctima posee el espacio de nombres "usuario_victima/repo".
  2. La víctima cambia el nombre de "usuario_victima" a "usuario_renombrado".
  3. El repositorio "usuario_victima/repo" se retira.
  4. Un actor de amenazas con el nombre de usuario "usuario_atacante" crea simultáneamente un repositorio llamado "repo" y cambia el nombre de usuario "usuario_atacante" a "usuario_victima".

El último paso se logra utilizando una solicitud API para la creación del repositorio y una solicitud interceptada para el cambio de nombre de usuario. Este desarrollo se produce casi nueve meses después de que GitHub parcheara una falla similar de bypass que podría abrir la puerta a ataques de repojacking.

"El descubrimiento de esta nueva vulnerabilidad en las operaciones de creación de repositorios y cambio de nombre de usuario de GitHub subraya los riesgos persistentes asociados con el mecanismo de 'jubilación del espacio de nombres del repositorio popular'", dijo Rapoport. 



Contenido traducido al español con fines informativos, cualquier cambio en la publicación original no será reflejada en esta entrada, favor referirse a la fuente para obtener el acceso a cualquier actualización del contenido. Para la traducción se utilizó ChatGPT, al ser una traducción automática puede contener errores gramaticales o de otro tipo, favor enviar comentarios al moderador para corregir.

Comentarios

Entradas más populares de este blog

DeepSeek: Ciberataque expone vulnerabilidades críticas en su modelo de IA R1 y reaviva debates sobre seguridad global

Resumen de los Principales Acontecimientos en Ciberseguridad de 2024

Microsoft Reemplaza Aplicación de Escritorio Remoto por Windows App: Implicaciones en Ciberseguridad