Vulnerabilidades críticas sin parches fueron reveladas en el popular servicio Git de código abierto de Gogs

Se han revelado cuatro fallos de seguridad no parcheados, incluidos tres críticos, en el servicio Git autoalojado y de código abierto Gogs. Estos fallos podrían permitir a un atacante autenticado comprometer instancias vulnerables, robar o borrar código fuente, e incluso insertar puertas traseras.

Las vulnerabilidades, según los investigadores de SonarSource Thomas Chauchefoin y Paul Gerste, son las siguientes:

  • CVE-2024-39930 (puntuación CVSS: 9.9) – Inyección de argumentos en el servidor SSH integrado.
  • CVE-2024-39931 (puntuación CVSS: 9.9) – Eliminación de archivos internos.
  • CVE-2024-39932 (puntuación CVSS: 9.9) – Inyección de argumentos durante la vista previa de cambios.
  • CVE-2024-39933 (puntuación CVSS: 7.7) – Inyección de argumentos al etiquetar nuevas versiones.

La explotación exitosa de las tres primeras vulnerabilidades podría permitir a un atacante ejecutar comandos arbitrarios en el servidor Gogs, mientras que la cuarta vulnerabilidad permite a los atacantes leer archivos arbitrarios como código fuente y secretos de configuración.

En otras palabras, al aprovechar estos problemas, un atacante podría leer el código fuente en la instancia, modificar cualquier código, eliminar todo el código, atacar hosts internos accesibles desde el servidor Gogs e impersonar a otros usuarios para obtener más privilegios.

Sin embargo, las cuatro vulnerabilidades requieren que el atacante esté autenticado. Además, desencadenar la CVE-2024-39930 requiere que el servidor SSH integrado esté habilitado, la versión del binario utilizada, y que el atacante posea una clave privada SSH válida.

«Si la instancia de Gogs tiene habilitado el registro, el atacante puede simplemente crear una cuenta y registrar su clave SSH. De lo contrario, tendrían que comprometer otra cuenta o robar la clave privada SSH de un usuario», explicaron los investigadores.

Las instancias de Gogs que se ejecutan en Windows no son vulnerables, al igual que la imagen de Docker. Sin embargo, las que se ejecutan en Debian y Ubuntu son susceptibles debido a que el binario env soporta la opción --split-string.

Según datos de Shodan, alrededor de 7,300 instancias de Gogs son accesibles públicamente en Internet, con casi el 60% ubicadas en China, seguidas por EE. UU., Alemania, Rusia y Hong Kong.

Actualmente, no está claro cuántos de estos servidores expuestos son vulnerables a los fallos mencionados. SonarSource dijo que no tiene visibilidad sobre si estos problemas están siendo explotados activamente.

La firma suiza de ciberseguridad también señaló que los mantenedores del proyecto «no implementaron correcciones y dejaron de comunicarse» después de aceptar su informe inicial el 28 de abril de 2023.

En ausencia de una actualización, se recomienda a los usuarios desactivar el servidor SSH integrado, desactivar el registro de usuarios para prevenir la explotación masiva y considerar cambiarse a Gitea. SonarSource también ha lanzado un parche que los usuarios pueden aplicar, aunque señalaron que no ha sido probado exhaustivamente.

Esta revelación coincide con el descubrimiento de la empresa de seguridad en la nube Aqua de que información sensible, como tokens de acceso y contraseñas, una vez codificados, pueden permanecer expuestos de forma permanente incluso después de ser eliminados de los sistemas de gestión de código fuente basados en Git (SCM).

Llamados secretos fantasma, el problema surge porque no pueden ser descubiertos por los métodos de escaneo convencionales –la mayoría de los cuales buscan secretos usando el comando git clone– y porque ciertos secretos son accesibles solo a través de git clone --mirror o vistas en caché de las plataformas SCM, destacando los puntos ciegos que dichas herramientas de escaneo pueden pasar por alto.

«Los commits permanecen accesibles a través de ‘vistas en caché’ en el SCM. Esencialmente, el SCM guarda el contenido del commit para siempre», explicaron los investigadores de seguridad Yakir Kadkoda e Ilay Goldman.

«Esto significa que incluso si un commit que contiene un secreto es eliminado de ambas versiones clonadas y reflejadas de su repositorio, aún puede ser accesible si alguien conoce el hash del commit. Pueden recuperar el contenido del commit a través de la GUI de la plataforma SCM y acceder al secreto filtrado».

Gracias por apoyar el libre conocimiento con tu donación!
Bitcoin: bc1q4sw9260twfcxatj8mjp7358cyvrf8whzlelyhj
Ethereum: 0xFb93D2a3c9d1A0b83EE629c2dE1725BCa192e581
Litecoin: LbFduJmHvQXcpCnwfUT7aJ4DYoWSL3iQw8
Dogecoin: D7QQVqNR5rk215A4zd2gyzV9P2bLQtZHFV
Transferencia bancaria en México:
Cuenta CLABE: 646180224401848086 Nombre: Masterhacks LATAM Banco: STP

Unete a nuestros grupos:
WhatsApp: https://chat.whatsapp.com/HcazyklpyeU4X3BF657KFQ
Telegram: https://t.me/masterhacks_net
Canal de WhatsApp https://whatsapp.com/channel/0029VaBBLCn5vKAH9NOWCl3K

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *