Un error de GitHub mostraba una aparente puerta trasera en el Kernel de Linux

GitHub

Recientemente algunas personas notaron un cambio extraño en el codigo fuente del Kernel de Linux, pues al revisar el código del Kernel en GitHub notaron que los cambios realizados por terceros (aquellos que clonaban o hacían una bifurcación de este) aparecían extrañamente en el repositorio principal.

Esto llamo la atención de algunos en la interfaz de GitHub pues se reveló una característica interesante que le permite presentar cualquier cambio de terceros como un cambio ya incluido en el proyecto principal.

Por ejemplo, hoy en día en las redes sociales comenzó a extenderse una referencia a un cambio en el espejo oficial del repositorio principal núcleo de Linux, lo que indica la sustitución de una puerta trasera en el controlador HID-Samsung.

Una peculiaridad de GitHub alarmo a los desarrolladores del Kernel

Ante este conflicto algunos comenzaron a revisar el código del Kernel en especial en el controlador de Samsung además de tratar de verificar si se había comprometido la seguridad del Kernel.

Un análisis de la situación mostró que GitHub, para optimizar el almacenamiento y minimizar la duplicación de datos en sus servidores, almacena todos los objetos del repositorio principal y las bifurcaciones asociadas con él, compartiendo lógicamente la propiedad de los commits.

Con lo cual dicho almacenamiento le permite ver a cualquiera que este navegando dentro del código cualquier confirmación desde cualquier bifurcación en cualquier repositorio asociado, indicando explícitamente su hash en la URL.

Por ejemplo, en el caso de una demostración de una puerta trasera, uno de los usuarios creó una bifurcación del repositorio principal del Kernel de Linux en la interfaz de GitHub, luego agregó una confirmación con código similar a una puerta trasera a su bifurcación.

Después de eso, formó un enlace en el que el identificador SHA1 del cambio externo fue sustituido en la URL del repositorio principal.

Cuando se abre un enlace similar, se muestra un commit externo en la interfaz de GitHub en el contexto del repositorio principal, a pesar de que se realizó en la bifurcación y no tiene nada que ver con el repositorio principal y no hay tal compromiso en él.

error github

Además, en la interfaz de GitHub, al ver la lista de cambios para archivos individuales, el repositorio principal también muestra confirmaciones de terceros, lo que crea mucha confusión.

Esto alarmo a algunos pues pensaban que se trataba de un hackeo y que habían introducido código malicioso al código fuente del Kernel de Linux.

Pues como podemos ver en la imagen a simple vista parecería que el código insertado es parte de lo que se encuentra almacenado en el repositorio principal de Kernel de Linux.

Y que en un principio no hace referencias a los repositorios externos en donde se realizaron las modificaciones.

Todo fue una falsa alarma

Este “error” (por así llamarlo) preocupo a muchos, pues de momento no sabían si corrían ya algún riesgo o se había comprometido la integridad del Kernel.

Paso poco tiempo para que se dieran cuenta que al extraer datos o clonar un repositorio mediante comandos git, los cambios de terceros en el repositorio resultante no estaban.

Simplemente GitHub presentaba los cambios a simple vista cuando en realidad no es así.

De momento no se sabe más al respecto y si la gente de Github (Microsoft) tiene en mente dar una solución a esto, que en medida no afecta directamente al desarrollo ni mucho menos al obtener el código fuente del Kernel.

Pero que si puede confundir a muchos que optan por revisar algunas partes de los proyectos que se almacenan en Github.

Pues no es algo que se muestre directamente en el código del Kernel de Linux, sino que también se estará mostrando en las bifurcaciones o forks de otros proyectos.

Por lo que es posible que muchos desarrolladores o usuarios de esta plataforma ya hubieran mandado algunos correos a la gente de GitHub.

Si quiere conocer un poco más al respecto de este tema, puedes visitar el siguiente enlace en donde se muestra aun el código que formo esta situación y además los comentarios al respeto de ello aquí.

Sé el primero en comentar

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.