Compromiso en GitHub: Los Commits ‘Verificados’ Pueden Ser Reescritos Sin Romper las Firmas

Introducción

Recientemente, se ha publicado una investigación que ha puesto en tela de juicio la suposición sobre la seguridad de los commits verificados en GitHub. A pesar de que muchos en el mundo del software asumen que los hashes de los commits firmados son únicos e inalterables, los nuevos hallazgos sugieren lo contrario. Este artículo explorará las implicaciones de esta investigación y cómo podría afectar la confianza en los commits verificados.

Detalles de la noticia

La investigación ha demostrado que es posible crear un segundo commit que tenga los mismos archivos, autor y fecha que un commit original firmado, pero con un hash diferente. Esto se logra sin la necesidad de la clave de firma, lo que significa que cualquier persona que tenga acceso al commit original puede generar un nuevo commit que GitHub aún marcará como «Verificado». Este nuevo commit tendría una firma válida, lo que podría engañar a los revisores que confían en la verificación de GitHub.

La importancia de esta vulnerabilidad radica en que, aunque todos los elementos que un revisor podría verificar coincidan, el hash del commit no lo haría. Esto abre una serie de preguntas sobre la integridad y la autenticidad de los commits en plataformas de desarrollo colaborativo.

Implicaciones de la investigación

  • Confianza en el sistema: La capacidad de alterar el hash de un commit sin invalidar su firma podría erosionar la confianza en los sistemas de control de versiones, especialmente en proyectos de código abierto donde la transparencia es crucial.
  • Seguridad de la cadena de suministro: Esta vulnerabilidad podría ser explotada para inyectar código malicioso en proyectos que dependen de commits verificados, lo que representa un grave riesgo para la seguridad de la cadena de suministro de software.
  • Revisión de prácticas: Los desarrolladores y administradores de proyectos deberán reconsiderar sus prácticas de revisión y verificación de commits para mitigar el riesgo de esta vulnerabilidad.

Recomendaciones prácticas

Ante esta situación, es crucial que los desarrolladores y equipos de software tomen medidas proactivas para proteger la integridad de sus proyectos. Aquí algunas recomendaciones:

  • Auditoría de commits: Realizar auditorías periódicas de los commits para garantizar que no se hayan realizado modificaciones no autorizadas.
  • Uso de herramientas de seguridad: Implementar herramientas de seguridad que permitan detectar cambios en los commits y verificar la autenticidad de los mismos.
  • Educación y concientización: Capacitar a los equipos sobre los riesgos asociados con los commits verificados y la importancia de la seguridad en el manejo de claves de firma.

Enlaces relacionados

Conclusión

La investigación sobre la reescritura de commits verificados en GitHub destaca una vulnerabilidad significativa que podría tener implicaciones graves para la seguridad en el desarrollo de software. Es esencial que los equipos de desarrollo estén al tanto de estos hallazgos y adopten medidas adecuadas para proteger la integridad de sus proyectos. La confianza en la verificación de commits no solo afecta a los desarrolladores, sino también a los usuarios finales que dependen de la seguridad de las aplicaciones que utilizan.

Preguntas frecuentes (FAQ)

  • ¿Qué significa que un commit esté verificado en GitHub?

    Un commit verificado significa que ha sido firmado con una clave GPG asociada a la cuenta de GitHub del autor, lo que indica que el autor del commit es quien dice ser.

  • ¿Cómo puedo proteger mis commits en GitHub?

    Para proteger tus commits, es recomendable realizar auditorías regulares, usar herramientas de seguridad y educar a tu equipo sobre los riesgos asociados con la firma de commits.

  • ¿Esta vulnerabilidad afecta a todos los repositorios en GitHub?

    No necesariamente. La vulnerabilidad se presenta en el contexto de los commits verificados y puede variar dependiendo de cómo se manejen las claves de firma en cada proyecto.


Adaptado con Inteligencia Artificial – © Canal Ayuda

Fuente Original: Leer artículo completo