Un ataque trusting‑trust compromete toda la distribución NixOS mediante el programa strip
Investigadores demuestran que el utilitario GNU strip puede servir de vector para un ataque trusting‑trust que infecta prácticamente todos los binarios de NixOS.

Ken Thompson describió el ataque trusting‑trust como una vulnerabilidad de los compiladores: un compilador modificado inserta un backdoor en los programas que construye y, al recompilarse, vuelve a incluir el código malicioso. Un nuevo estudio muestra que esa amenaza no se limita a los compiladores.
Los autores construyen un ataque completo alrededor de GNU strip, una herramienta de post‑procesado que simplemente elimina símbolos de archivos ELF. No genera ni inspecciona código fuente, pero al manipular directamente los binarios puede introducir una carga útil que se propaga en cada generación de strip.
En el proceso de bootstrap de la distribución Linux NixOS, el seed binario contiene una versión alterada de strip. Esa versión implantada inserta código malicioso en los archivos ELF que procesa. Cuando el bootstrap avanza a la siguiente generación, el strip contaminado vuelve a ejecutarse, replicando el payload. El ciclo continúa hasta que la distribución llega al entorno estándar, ya sin rastro del seed original en la clausura de dependencias.
Para validar la teoría, los investigadores aplicaron el ataque a una revisión real de nixpkgs. El proceso de compilación construyó sin errores el instalador gráfico completo y, al final, casi todos los binarios resultantes estaban comprometidos. Cada paquete subvertido puede ejecutar código arbitrario bajo los privilegios del usuario que lo instale, lo que abre la puerta a una amplia gama de comportamientos maliciosos.
Este hallazgo amplía el alcance del trusting‑trust más allá de los compiladores y muestra que cualquier herramienta que manipule binarios puede convertirse en un punto de inserción de backdoors persistentes. La comunidad de NixOS ya está revisando sus pipelines de bootstrap y considerando mecanismos de verificación de integridad más estrictos, como firmas criptográficas de cada herramienta del seed.
Implicaciones: los administradores de sistemas que dependen de procesos de bootstrap reproducibles deben revisar sus cadenas de suministro de software. La confianza ciega en utilidades de bajo nivel, aunque aparentemente inocuas, puede ser suficiente para comprometer una distribución completa. La solución pasa por firmar y validar cada binario del seed y por aislar la fase de bootstrap de la red externa.
Queda por ver si otras distribuciones que usan procesos de bootstrap similares son vulnerables. Mientras tanto, la recomendación es auditar los binarios de herramientas críticas y aplicar firmas verificables en todas las etapas de la cadena de construcción.

