Andrés Freund, el ingeniero que creó un posible ciberataque global

Andrés Freund, el ingeniero que creó un posible ciberataque global

Cualquier cosa que estés investigando en las trincheras de Internet te dirá que no es una mecánica bienvenida que funcione sin el más mínimo problema.

Mejor aún, es una colección de piezas desorganizadas que se han ensamblado durante décadas y solo se mantienen junto con el equivalente digital de un cinturón adhesivo y un chicle de rímel. Gran parte de la red depende de software de código abierto que mantiene el trabajo de un pequeño esfuerzo de programadores voluntarios a los que nadie les da las gracias por arreglar los errores, corregir los errores y asegurarse de que el artículo haya sido frustrado, lo que maneja billones de Dólares en producto. interno bruto global pueda, a Duras Penas, seguir adelante.

Es muy posible que uno de estos programadores haya salvado a Internet de un gran problema la semana pasada.

Su nombre es Andrés Freund. Es un ingeniero de software de 38 años que vive en San Francisco y trabaja para Microsoft. Parte de su trabajo es desarrollar un código de software abierto para administrar bases de datos conocido como PostgreSQL. Si pudieras explicar adecuadamente por qué existe este software (algo que finalmente no puedes hacer), el cuestionario solo funcionará con los molinos de burrimiento.

Poco después, mientras realizaba algunas rutinas de mantenimiento, Freund descubrió sin querer un puerto oculto en un software que forma parte del sistema operativo Linux. Es posible que esa puerta que hay tras ella sea la antesala de un gran ciberataque que, según la opinión de los expertos, podría haber causado terribles daños al hormigón armado.

Ahora, en un giro digno de Hollywood, varios líderes de la industria tecnológica e investigadores de seguridad vial se están calificando a sí mismos como Amigos del Héroe. Satya Nadella, director ejecutivo de Microsoft, elogio sobre “curiosidad y destrucción”. un admirador lo describo como “el gorila líder de los nerdos”. Ha podido circular entre los ingenieros una antigua historieta web, famosa entre los programadores, cuya premisa es que toda infraestructura digital moderna depende de un proyecto mantenido por un tipo en Nebraska (según ellos, Freund es este tipo).

En una entrevista realizada esta semana, Freund (que en realidad es un programador alemán reflexivo y de voz suave que no pidió tomar una fotografía para este artículo) comentó que convertirse en un héroe popular de Internet ha causado mucha confusión.

“Se me hace muy extraño”, dice. “Soy una persona lo suficientemente reservada como para sentarme frente a la computadora y producir código”.

La saga comenzó ese mismo año, durante un viaje a casa de su amigo tras visitar a sus padres en Alemania. Al revisar un registro de prueba automatizado, quedó claro que había algunos mensajes de error que no fueron reconocidos. En ese momento los efectos del retraso y los mensajes no parecían urgentes, ya que el expediente estaba en la memoria.

Pero unas semanas más tarde, mientras realizaba más pruebas en casa, observé que una aplicación llamada SSH, utilizada para iniciar sesión remotamente en las computadoras, consumía más potencia de procesamiento de lo habitual. Después de buscar la fuente del problema, reunió un conjunto de herramientas de compresión de datos xz Utils y se preguntó si estaba relacionado con los errores que había visto antes.

(No te preocupes si estos nombres suenan como si se hablaran en China; en realidad, sólo necesitas saber que hay pequeños fragmentos del sistema operativo Linux, el cual será el software de código abierto más importante del mundo. La gran mayoría de servidores en el mundo (incluidos los que utilizan escuelas, hospitales, gobiernos y empresas Fortune 500) funcionan con Linux, porque su seguridad es de importancia global).

Al igual que otros programas populares de código abierto, Linux se actualiza con frecuencia y la mayoría de los errores se deben a malentendidos inocentes. Sin embargo, cuando Freund examinó más de cerca el código fuente de xz Utils, encontró rastros que indicaban que alguien lo había alterado intencionalmente.

En particular, descubrí que algunos parecían ser códigos maliciosos en versiones más recientes de xz Utils. El código, conocido como puerta de casa, permitiría a su creador asegurar la conexión SSH de un usuario y ocultar su código en la máquina de ese usuario.

Al principio, Freund dudó de sus hallazgos. ¿De verdad has descubierto una puerta trasera en uno de los programas de código abierto más analizados del mundo?

«Fue surrealista», dijo. “Pensó varias veces que había dormido mal y que deliraba”.

Pero después del análisis, identifiqué nuevas pruebas, por lo que la semana pasada, como amigo, compartí tus sugerencias con un grupo de desarrolladores de software de código abierto. La noticia no tardó mucho en causar alarma en el mundo tecnológico. Solo una vez creó una reparación, y algunos investigadores le dieron crédito a Freund por evitar un ciberataque que podría haber sido histórico.

Nadie sabía quién parecía la puerta pero, al parecer, el plan era tan elaborado que algunos investigadores estaban convencidos de que sólo él podría haberse dedicado a una nación con enormes capacidades para concebir ciberataques, como Rusia o China.

Según algunos investigadores que examinaron las pruebas, todo parece indicar que el atacante utilizó un seudónimo, «Jia Tan», para sugerir cambios en xz Utils a partir de 2022 (muchos proyectos de software de codificación abierta se generan mediante un sistema de jeroglíficos; los desarrolladores proponen cambios al código de un programa, y ​​luego los programadores más experimentados aceptan revisar y aprobar los cambios).

Si creía que el atacante, usando el nombre Jia Tan, había trabajado varios años para ganarse algo de confianza de los otros desarrolladores de xz Utils y obtener más control sobre el proyecto, eventualmente entrando a la ventana interna y finalmente insertando el código con la puerta trasera. oculto este año (aunque ya se conocía la nueva versión manipulada del código, hoy no era de uso generalizado).

Freund informó que, después de que el público matara a sus culpables, se dedicó a ayudar a los equipos que intentaban reproducir el ataque con ingeniería inversa para identificar al culpable. Así que ha estado muy ocupado para dormirse en los laureles. La próxima versión de PostgreSQL, el software de gestión de datos en funcionamiento, será más fiel a este mismo año y mi amigo está intentando aceptar algunos cambios de última hora antes de que acabe el día.

«En realidad, no tengo tiempo para ir a ninguno de los lugares a celebrar», dice.

Kevin Roose es columnista de tecnología del Times y presentador de podcasts. bifurcación dura. Más de Kevin Roose