proomt

Search

Search posts, papers, and topics

All posts

arXiv cs.SE (Software Engineering)Julien Malka, Aman Sharma, Martin Monperrus, Stefano Zacchiroli, Théo Zimmermann1 min readpaperadvanced

Trusting-Trust Attack against an Entire Linux Distribution through Binary Manipulation

Summary

The authors show that the classic trusting‑trust attack is not limited to compilers: by tampering with GNU strip they can inject a payload that propagates through NixOS's bootstrap and ends up in almost every binary of the final system. The attack succeeds on a real nixpkgs revision, building a full graphical installer while backdooring the majority of its binaries.

  • A single compromised binary tool (strip) can seed a supply‑chain attack that survives multiple generations of rebuilds.
  • The attack works on NixOS's reproducible build pipeline, demonstrating that reproducibility alone does not guarantee trust.
  • Backdoored binaries can be injected without source‑level changes, making detection via code review ineffective.
  • Mitigations must include verification of binary utilities and tighter closure checks in bootstrapping processes.

Distribution maintainers and supply‑chain security engineers need to consider binary‑level trust, not just source‑level, when hardening build pipelines.

8/10

Related reading

  1. App Hardening: One Obfuscation Pipeline Across Every Port

    Codename One adds a cloud‑side hardening step that runs on the merged JAR before it is split into Android, iOS, JavaScript, and desktop binaries. It can rename symbols, encrypt string literals, and insert opaque‑predicate control‑flow guards at configurable levels (off → standard → aggressive → paranoid). The transforms are selective per platform to avoid breaking optimizers, and a mapping is kep…

    CodeName Onecodenameone.com6 min
  2. Why Does an NPM Math Library Need an Encrypted Loader?

    SafeDep discovered that several npm packages masquerading as mathjs contain an encrypted loader that only activates when a caller passes a particular matrix to the LU solver, using the matrix’s lower‑triangular factor as the decryption password. The loader decrypts and executes a multi‑stage remote‑access implant that talks to Slack, Telegram and a blockchain contract, and the same technique is r…

    Hacker News front pagesafedep.io10 minHN9627