Bl0ckch41nnewsLa puerta trasera XZ: lo que se sabe


POR DAN GOODIN, ARS TECHNICA –
WIRED

El flagelo de los ataques a la cadena de suministro de software es
una técnica de ataque informático cada vez más común que oculta código
malicioso en un programa legítimo ampliamente utilizado y puede adoptar muchas
formas.

Los delincuentes informáticos pueden penetrar un servidor de actualización
para dejar su malware, o incluso ingresar a la red donde se desarrolló el
software para corromperlo desde el código fuente. O, en el caso de un atacante
de la cadena de suministro de software como el reciente backdoor en XY Utils, donde los atacante pasaron dos años «ofreciendo ayuda cortésmente».

La puerta trasera en XZ Utils

Durante el fin de semana pasado, la comunidad de ciberseguridad y software de
código abierto quedó impactada por la
noticia de que una versión experimental relativamente nueva de XZ Utils
(una utilidad de compresión integrada en muchas distribuciones populares de
Linux) contenía una puerta trasera que habría permitido a los delincuentes
informáticos, en posesión de un clave privada específica, conectarse al
sistema de puerta trasera y ejecutar sus propios comandos como administrador.

Sólo un trabajo de detective casual llevado a cabo por un solitario ingeniero
de Microsoft, Andrés Freund, que había detectado un extraño retraso en la
ejecución del protocolo de conexión remota SSH en una versión de la variante
de Linux Debian, captó el truco de espionaje antes de que terminara en muchos
millones de sistemas en todo el mundo.

Esa puerta trasera de XZ Utils, ahora está claro, fue insertada nada menos que
por el principal mantenedor del código de XZ Utils, un desarrollador que se
hacía llamar «Jia Tan». A raíz del descubrimiento de la puerta trasera, un
misterio se filtra en el mundo de la tecnología: ¿quién es Jia Tan y para
quién trabajó realmente él o ella (o muy probablemente ellos)?

Jia Tan aprovechó el enfoque de codificación colaborativo del software de
código abierto mediante el cual cualquiera puede sugerir cambios a un programa
en repositorios de código como GitHub, donde otros programadores revisan los
cambios antes de integrarlos en el software. Un vistazo a la
historia documentada de Jia Tan
en el mundo de la programación de código abierto revela que aparecieron por
primera vez en
noviembre de 2021 con el nombre de usuario de GitHub JiaT75, luego hicieron contribuciones a otros proyectos de código abierto usando el
nombre Jia Tan, o a veces Jia Cheong Tan, durante más de un año antes de
comenzar a enviar cambios a XZ Utils.

En enero de 2023, el código de Jia Tan se estaba integrando en XZ Utils.
Durante el próximo año, tomarían en gran medida el control del proyecto de
manos de su mantenedor original, Lasse Collin, un cambio impulsado en parte
por correos electrónicos molestos enviados a Collin por un puñado de usuarios
quejándose de actualizaciones lentas. No está claro si esos usuarios fueron
cómplices involuntarios o si realmente trabajaron con Jia Tan para persuadir a
Collin de que renunciara al control. Finalmente, Jia Tan agregó su puerta
trasera sigilosa a una versión de XZ Utils en febrero de este año.

Ese enfoque inhumanamente paciente, junto con las características técnicas y
la sofisticación de la propia puerta trasera, ha llevado a muchos en el mundo
de la ciberseguridad a creer que Jia Tan debe, de hecho, ser un identificador
operado por atacantes informáticos patrocinados por el Estado (y muy buenos).

«Esta operación de varios años fue muy astuta y la puerta trasera
implantada es increíblemente engañosa»
, dice Costin Raiu, quien hasta el año pasado se desempeñó como investigador
principal y jefe del equipo de investigación y análisis global de la firma
rusa de ciberseguridad Kaspersky.
«Yo diría que se trata de un grupo respaldado por un Estado-nación, uno con
objetivos a largo plazo en mente y que permite invertir en la infiltración
de varios años en proyectos de código abierto»
.

En cuanto a qué nación, Raiu nombra a los sospechosos habituales: China, Rusia
y Corea del Norte. Dice que todavía es demasiado pronto para conocer al
verdadero culpable.
«Una cosa está clara. Esto fue más astuto que todos los ataques anteriores
a la cadena de suministro de software que he visto».

Un programador muy privado y muy ocupado

A medida que ha aumentado el escrutinio en torno a Jia Tan desde la revelación
de la puerta trasera de XZ Utils el viernes pasado, los investigadores han
notado que la persona tiene una seguridad operativa notablemente buena. El
reportero de seguridad independiente
Brian Krebs escribe
que no pudo encontrar ningún rastro cero de la dirección de correo electrónico
de Jia Tan fuera de los mensajes que enviaron a otros contribuyentes de código
abierto, incluso después de rastrear las bases de datos violadas. Jia Tan
también parece haber enrutado todas sus comunicaciones a través de una
VPN con una dirección IP de Singapur.

La falta de cualquier otra presencia en línea vinculada a Jia Tan apunta a que
la cuenta es una «persona inventada con un solo propósito» e indica cuánta
sofisticación, paciencia y pensamiento se puso en el desarrollo de la puerta
trasera, dice Will Thomas, instructor de SANS Institute, una empresa de
formación en ciberseguridad. La personalidad de Jia Tan ha desaparecido desde
que se descubrió la puerta trasera. La cuenta de GitHub de Jia Tan ha sido
suspendida, según le dice a WIRED un portavoz de la compañía.

De hecho, las únicas huellas reales que Jia Tan parece haber dejado atrás
fueron sus contribuciones a la comunidad de desarrollo de código abierto,
donde fueron un colaborador prolífico: de manera inquietante, el primer cambio
de código de Jia Tan fue a la biblioteca de compresión «libarchive»,
otro componente muy ampliamente utilizado. Ese primer cambio intercambió una
función con una alternativa menos segura, potencialmente intentando otro
cambio de código malicioso, señala el desarrollador Evan Boehs en su detallada cronología de Jia Tan, aunque el problema ya se solucionó.

En total, Jia Tan realizó 6.000 cambios de código en al menos siete proyectos
entre 2021 y febrero de 2024, según Michael Scott, cofundador de la empresa de
ciberseguridad NetRise, que anteriormente trabajó en el grupo de guerra
cibernética del Cuerpo de Marines bajo el Comando Cibernético de EE.UU.

Determinar todos los efectos ramificados de esos cambios es casi imposible,
afirma Scott. Debido a que esos cambios, conocidos como «confirmaciones», a
menudo se agrupan en colecciones en un proceso conocido como «aplastamiento de
confirmaciones», no siempre es evidente qué cambios exactos realizó Jia Tan. Y
la dificultad de rastrear cuál de las muchas versiones de una biblioteca como
libarchive terminó en qué software agrega otra capa de ofuscación.
«Va a ser un poco complicado tirar de este hilo y tratar de descubrir dónde
terminaron todas estas cosas»
, dice Scott.

Scott señala que, durante todo este tiempo, Jia Tan también estuvo enviando
correos electrónicos a otros contribuyentes, escribiendo en un tono «muy
conciso, muy seco», pero no hostil, que Scott compara con el resultado de
ChatGPT. Jordi Mas, un desarrollador que contribuyó a XZ Utils y había enviado
«comentarios» por correo electrónico de Jia Tan, dice en retrospectiva que la
cuenta fue a niveles adicionales para generar confianza en la persona.

En última instancia, Scott sostiene que esos tres años de cambios de código y
correos electrónicos corteses probablemente no se dedicaron a sabotear
múltiples proyectos de software, sino a construir una historia de credibilidad
en preparación para el sabotaje de XZ Utils específicamente, y potencialmente
de otros proyectos en el futuro.
«Simplemente nunca llegó a ese paso porque tuvimos suerte y encontramos sus
cosas. Así que eso ya está quemado y tendrá que volver al punto de
partida»
.

Tics técnicos y zonas horarias

A pesar de la personalidad de Jia Tan como un solo individuo, su preparación
de años es un sello distintivo de un grupo de hackers bien organizado y
patrocinado por el estado, argumenta Raiu. También lo son las características
técnicas del código malicioso XZ Utils que agregó Jia Tan.

Raiu señala que, a primera vista, el código realmente parece una herramienta
de compresión. «Está escrito de una manera muy subversiva», dice.
También es una puerta trasera «pasiva», dice Raiu, por lo que no llegaría a un
servidor de comando y control que podría ayudar a identificar al operador de
la puerta trasera. En cambio, espera a que el operador se conecte a la máquina
de destino a través de SSH y se autentique con una clave privada, una generada
con una función criptográfica particularmente potente conocida como ED448.

El cuidadoso diseño de la puerta trasera podría ser obra de hackers
estadounidenses, señala Raiu, pero sugiere que eso es poco probable, ya que
Estados Unidos normalmente no sabotearía proyectos de código abierto y, si lo
hiciera, la Agencia de Seguridad Nacional probablemente usaría un sistema
criptográfico resistente a los cuánticos. La función ED448 no es. Eso deja a
los grupos no estadounidenses con un historial de ataques a la cadena de
suministro, sugiere Raiu, como el China’s APT41, North Korea’s Lazarus Group, y Russia’s APT29.

A primera vista, Jia Tan ciertamente parece del este de Asia, o debería
parecerlo. La zona horaria de los compromisos de Jia Tan es UTC+8: esa es la
zona horaria de China, y está a sólo una hora de la de Corea del Norte. Sin
embargo, un
análisis realizado por dos investigadores, Rhea Karty y Simon Henniger, sugiere que Jia Tan simplemente pudo haber
cambiado la zona horaria de su computadora a UTC+8 antes de cada confirmación.
De hecho, varias confirmaciones se realizaron con una computadora configurada
en una zona horaria de Europa del Este o del Medio Oriente, tal vez cuando Jia
Tan olvidó hacer el cambio.

«Otro indicio de que no son de China es el hecho de que trabajaron en días
festivos chinos importantes»
, dicen Karty y Henniger, estudiantes del
Dartmouth College y de la Universidad Técnica de Munich, respectivamente.
Señalan que Jia Tan tampoco envió un nuevo código en Navidad o Año Nuevo.
Boehs, el desarrollador, añade que gran parte del trabajo comienza a las 9am
y termina a las 5pm para las zonas horarias de Europa del Este o Medio
Oriente. «El rango de tiempo de los compromisos sugiere que este no fue un
proyecto que hicieron fuera del trabajo»
, dice Boehs.

Aunque eso deja a países como Irán e Israel como posibilidades, la mayoría de
las pistas conducen a Rusia, y específicamente al grupo de hackers APT29 de
Rusia, sostiene Dave Aitel, ex hacker de la NSA y fundador de la empresa de
ciberseguridad Immunity.

Aitel señala que APT29, que se cree que trabaja para
la agencia de inteligencia extranjera de Rusia, conocida como SVR, tiene una
reputación de atención técnica que pocos grupos de hackers tienen. APT29
también llevó a cabo el compromiso de Solar Winds, quizás el ataque a la
cadena de suministro de software más hábilmente coordinado y eficaz de la
historia. En comparación, esa operación coincide mucho más con el estilo de la
puerta trasera de XZ Utils que con los ataques más crudos a la cadena de
suministro de APT41 o Lazarus.


«Es muy posible que se trate de otra persona. Pero, si estás buscando los ataques a la cadena de suministro más
sofisticados del planeta, esos serán nuestros queridos amigos en el SVR».

Los investigadores de seguridad coinciden, al menos, en que es poco probable
que Jia Tan sea una persona real, o incluso una persona que trabaje sola. En
cambio, parece claro que la persona era la encarnación en línea de una nueva
táctica de una organización nueva y bien organizada, una táctica que casi
funcionó. Eso significa que deberíamos esperar ver a Jia Tan regresar con
otros nombres: contribuyentes aparentemente educados y entusiastas a proyectos
de código abierto, que ocultan las intenciones secretas de un gobierno en sus
compromisos de código.

Fuente: Wired



Source link