I got a notification about a package that changed the maintainer that looks rather suspicious to me… So i would still be careful…
https://aur.archlinux.org/account/svantehedlund
That user doesn’t seem to be blocked… So there might still be more going on.


A couple of weeks ago, some dingbat of an AUR admin orphaned a package of mine, ignoring the comment I left on it and my post to the mailing list.
Even though this package, to my knowledge, didn’t end up being attacked, I wonder if this was a potential precursor to the recent attack…
To answer your question, generally yes the package maintainer is the one who maintains the package for the current version of the distro, even if upstream is unchanged. If a package is no longer compatible and no one is making it compatible, then yes it’s unmaintained and should be removed.
It wasn’t removed, it was marked as orphaned, which means anyone can take over and mess with it, lowering the bar for supply chain attacks.
If another user had said “I can take care of this long-term, gimme”, I’d had handed it over. Instead, some self-important dingbat with too many privileges decided to mass-mark all packages with an “outdated” flag beyond a certain age as orphaned, then ignored my mailing list post.
For what it’s worth, a distro package maintainer’s inability to update a package to a newer upstream version does not necessarily lead to a package being removed. Debian and Ubuntu kept shipping an ancient version of
freetdssometime in the mid-2010s and the package maintainer was incommunicado.
I’ve seen AUR warned against often, also by Arch team members.
I never thought it was a huge deal, but apparently anything that can be attacked will be attacked nowadays.I start to wonder if we need something sitting between extra and aur, few more trusted maintainers and well secured update process that’s more than the aur Wild West
Also, some sort of yay hook to do some scanning for suspicious diffs and warning or skipping those packages…
I don’t want / need a system where I can blindly update everything, but something to help me avoid having to visually check every package diff would be nice
I feel like this could be a use for LLMs that isn’t slop. It’s not going to catch everything of course but I imagine it would be a whole lot better than nothing
Yes that would be nice, but I’m not sure that is possible.
https://aur.archlinux.org/ warns you about it
This is what happens when a shit load of packages that just sit around basically unmaintained are allowed to sit around.
Maybe injecting the infections made it look like they were maintained? 😋
Yeah if your machine can be added to a botnet then it will be. Resistance is futile, we are Borg style.
Does anyone know if the NixOS packages are safer from these types of attacks? As far as I know many packages are missing maintainers.
We’re currently at 1621.
I’m still missing any sort of in-depth info about all this.
Start here. https://bbs.archlinux.org/viewtopic.php?id=313892
AUR, the Arch User Repository is under an attack. The attack vector is any orphaned package that doesn’t have a current maintainer. Those packages are being taken over by a malicious group. https://redlib.catsarch.com/r/archlinux/comments/1u3tn4e/tons_of_new_infected_aur_packages_were_just/ If a package maintainer quits/leaves/abandons a project, anybody can take control of the package if there’s been no maintainer for a certain period of time. What we’re learning now is that this process could be automated and done en masse. They’re modifying PKGBUILD files to use a java script installer like npm, bun, yarn, nodejs to shove malware onto a system. So if you have a package that’s marked as infected and you’ve updated your PC using an AUR helper like yay or paru during this time without checking the PKGBUILD you could be in trouble.
What users are advised to do is not update any AUR packages until otherwise noted. Scan your systems for any packages where the PKGBUILD reports installing an atomic-lockfile, js-digest file through npm, bun, nodejs, yarn and the like. Delete those packages.
The number of infected packages has gone from 400 to 600 to 1500 in a matter of hours last night. The AUR team has been on top of it almost the moment it got recognized. The AUR has well over 100,000 packages. Last night another user ran some numbers and at the time 718 infected packages had no users at all. The most popular package is an old Gnome dependency libgdata that was dropped years ago but could still be on systems. There’s a lot of old packages using ancient python2 deps that look to be infected as well. https://redlib.catsarch.com/r/archlinux/comments/1u4fzea/according_to_pkgstats_these_are_the_most_popular/ list of infected packages https://md.archlinux.org/s/SxbqukK6IA Seems like this was caught because old maintainers started getting emails about package updates to old projects they were on. Those OGs sprung into action.
Thanks. The forum thread’s beginning suggests a concerted effort around adding the line
npm install atomic-lockfileto repos.Searching for that I quickly found this: https://www.sonatype.com/blog/atomic-arch-npm-campaign-adds-malicious-dependency and related articles.
Then it seems to change to ‘bun’ and ‘js-digest’:
bun add figures debug js-digestApparently both atomic-lockfile and js-digest are upstream npm/javascript packages that have been infected with datamining malware.
BTW, admins reported as of 12h ago it’s all cleaned up.
Wouldn’t even suprise me if they just did it fo the lulz.
They got hacked.
Use Debian. /s
I meant something I can read.
They got hacked.
I don’t think so.
I mean
Like…
Yes?
Yes, that’s what happened. That is the correct word for it.
Attackers exploited vulnerabilities in a system in order to run code on other people’s machines
same
What to do if I found a package I installed to be in that list? libgdata to be specific?
Probably reinstall (all is supposed to be fixed as of over 12h ago). This time check the PKGBUILD and also whichever (git) repo the software is pulled from.
See if infected versions of npm packages atomic-lockfile and js-digest are installed.Have a check if you updated it recently (PKGBUILD history, about June 10-12). If not you’re fine.
If:
- Rotate all credentials — browser passwords, SSH keys, API tokens, and cloud access keys
- Scan for suspicious processes masquerading as kernel threads using tools like rkhunter or chkrootkit (E: It’s supposed to be an eBPF rootkit)
Personally I would reset everything if I got anything, to kill both any infection and my paranoia. Then reset credentials.
Was it installed from the aur? If not, you’re fine
libgdata here is specifically very messy. It was an official package since it was a required dependency for older versions of GNOME, then in GNOME 50 they dropped the dependency and so did Arch from their repos. But because pacman doesn’t remove dangling dependencies, you end up with libgdata still installed, until Arch Linux moves dropped packages into the AUR as an orphan, which happened in this case 5/31. This allowed it to be perfectly timed for the attackers to pick it up on 6/11. Now, you’d inadvertently update libgdata from an AUR source if you’re using an AUR helper.
Yesterday that was 400 packages, now it’s 1500.
Tomorrow 3000 ?
“I use arch btw” lmao
Arch and AUR are not really the same. To be fair AUR is the fanfiction version that fits inside the story. But you have to purposely work to use it. So it’s not Arch that was compromised.
Haven’t seen an arch fuckup like this since they switched to signed packages.
This is not ArchLinux’ fuckup. The AUR’s popularity exploded after certain Arch-based distros (and software) decided to treat the AUR as an additional software repository, even part of package management, and automate the process of installation. Which also slows the process of discovering the malware. And makes panicky users wave their arms.
May I remind everyone of Arch core principles and statements wrt AUR - several quotes from their wiki:
Whereas many GNU/Linux distributions attempt to be more user-friendly, Arch Linux has always been, and shall always remain user-centric:
- The distribution is intended to fill the needs of those contributing to it, rather than trying to appeal to as many users as possible.
- It is targeted at the proficient GNU/Linux user, or anyone with a do-it-yourself attitude who is willing to read the documentation, and solve their own problems.
The Arch User Repository (AUR) is a community-driven repository for Arch Linux users. It contains package descriptions (PKGBUILDs) that allow you to compile a package from source with makepkg and then install it via pacman.
Note how the crucial PKGBUILD is mentioned in the first sentence, and dozens of times in the article that follows.
Warning
AUR helpers are not supported by Arch Linux. You should become familiar with the manual build process in order to be prepared to troubleshoot problems.The AUR even includes PGP signing; not perfect, but a useful additional step. But, alas, many AUR helpers include “skip PGP check”.
Archlinux devs, maintainers and users have been saying this for over a decade, and warning against using the AUR in such ways. But short of shutting the whole thing down, what can they do? The few things that can reasonably be done I’m sure are being implemented right now.
I wouldn’t really categorise it as a fuckup. These are unofficial packages from the AUR. You should trust them as much as random install scripts from a no-name website or git repo.
It’s no arch fuckup. The AUR is not an arch linux redponsibility and has always been “untrusted” - you should always verify what you’re downloading and building.
Problem is that bazzite and cachy are arch-based, but targeted at a group of people that arch doesn’t target. So you have users that just blindly download scripts from the AUR without doing proper verification.
This is more the fault of those distros and AUR helpers than arch.
I thought bazzite was based on an atomic version of fedora?
it is
Yep. There’s no AUR for bazzite since it’s based on fedora immutable, unless I’m mistaken and there’s a way to do so anyway somehow. Still, bazzite and AUR do not go hand in hand AFAIK as it’s meant to be an immutable system.









