Published on April 2, 2024Documentation Index
Fetch the complete documentation index at: https://help.onetsolutions.net/llms.txt
Use this file to discover all available pages before exploring further.
What happened
Over the course of two years, a contributor under the pseudonym Jia Tan earned the trust of thexz-utils community, eventually becoming co-maintainer. With that role, they progressively injected, across several scattered commits, an obfuscated payload into the liblzma library.
At build time, the payload:
- Detects that it is being compiled in a context that will later be loaded by
sshdviasystemd(distributions that patchsshdto depend onlibsystemd, which itself depends onliblzma). - Hooks specific internal
sshdfunctions at startup. - Lets anyone in possession of a specific key bypass SSH authentication as any user, with no log trace.
Why this did not become a global disaster
Andres Freund, a Postgres maintainer at Microsoft, was debugging suspicious 500ms SSH connection times. Following the trail, he eventually surfaced the payload — and reported tooss-security on March 29, 2024.
At that point, versions 5.6.0 and 5.6.1 only shipped in:
- Fedora 41 and Rawhide
- Debian testing/unstable/experimental
- openSUSE Tumbleweed, openSUSE MicroOS
- Arch Linux
- A few bleeding edge macOS channels via Homebrew
Are you affected?
Check your installedxz version:
What to do
If you are on a 5.6.x version
Downgrade to 5.4.x (the last clean release) immediately. Every affected distribution has shipped fixed packages by now. On Arch:If you are on a stable distribution
You are not affected. 5.6.0/5.6.1 never reached Debian stable, Ubuntu LTS, RHEL stable, etc.Either way
Use the episode to ask the broader question: which packages do you build from source or install from unofficial repos? The xz-utils attack exposed how fragile a model can be where a single maintainer of a critical library can compromise the planet. That calls for:- Strict reduction of internally-built dependencies.
- Use of signed, auditable mirrors.
- Tighter review of critical transitive dependencies (crypto libs, compression libs, drivers, etc.).

