- cross-posted to:
- linux@programming.dev
- archlinux@lemmy.ml
- linux@programming.dev
- cross-posted to:
- linux@programming.dev
- archlinux@lemmy.ml
- linux@programming.dev
On the 16th of July, at around 8pm UTC+2, a malicious AUR package was uploaded to the AUR. Two other malicious packages were uploaded by the same user a few hours later. These packages were installing a script coming from the same GitHub repository that was identified as a Remote Access Trojan (RAT).
The affected malicious packages are:
- librewolf-fix-bin
- firefox-patch-bin
- zen-browser-patched-bin
The Arch Linux team addressed the issue as soon as they became aware of the situation. As of today, 18th of July, at around 6pm UTC+2, the offending packages have been deleted from the AUR.
We strongly encourage users that may have installed one of these packages to remove them from their system and to take the necessary measures in order to ensure they were not compromised.
Follow up
There are more packages with this malware found.
minecraft-cracked
ttf-ms-fonts-all
vesktop-bin-patched
ttf-all-ms-fonts
What to do
If you installed any of these packages, check your running processes for one named systemd-initd
(this is the RAT).
The suspicious packages have a patch from this now-inaccessible Codeberg repo: https://codeberg.org/arch_lover3/browser-patch
The Arch maintainers have been informed of all this already and are investigating.
We are getting to the point where inviting more people in means we will need an automated babysitter to watch for this shit and to pull it once it’s discovered. Apple has a walled garden approach that’s certainly taken a big chunk of malware threats out of their devices but their walled garden approach is ridiculous and impractical for Linux. The Microsoft method of monitoring and second guessing everything with antimalware programs is also suspect because it is super easy to abuse and resource intensive. We have clamAV but clam kinda sucks.
Linux is at the point where we need something that audits what’s going in and automatically yanks it back out remotely if it’s found to be a problem. Things can only be added by the user, but the bot can remove them without interaction of the user.
I don’t see this happening though. Instead, I see this as more of a rust vs C thing all over again, where valid critiques are drowned out by “improve your skills bro.”
minecraft-cracked
Gotta assume that if any Arch users actually fell for that one, that they either let their kids use their device or they’re generally not smart ( which absolutely goes against my stereotypical view of an arch user ).
The stereotype of arch uses generally being smart is no longer. The “I use arch btw” meme brought a whole new user base to arch. You’ll find them on r/unixporn showing off their hyperland rice that they copied from some other user…
I had no idea that existed but I’ve just returned from r/unixporn. There are some sick setups. Also we all copy. My entire neovim config is copied and modified from a couple dozen setups I admired. Nothing wrong with copying things you like. Don’t gate keep Linux.
However… Minecraft cracked is pretty funny lol.
The affected malicious packages are:
- librewolf-fix-bin
- firefox-patch-bin
- zen-browser-patched-bin
What a nice attack on privacy-friendly infrastructure.
And then, Arch AUR has such suspicious things like the Brave browser which claims to reduce tracking… and works together with advertisers.
To be clear, AUR is fantastic if you develop some experimental package and you want to give it to your friends to try it out easily. But not as a general distribution mechanism.
To be fair the AUR is known to be very susceptible to that kind of thing due to the effective absence of entry requirements.
Absolutely.
The Arch User Repository is a way for anyone to easily distribite software.
Hence it has never been secure, and rather than claim it is, you mostly see people and documentation warn you about this, and to be careful if using it.
Any schmuck can make whatever they want available via the AUR. That’s how even the tiniest niche project can often be installed via the AUR. But you trade in some security for that convenience.
It shouldn’t be used as a marketplace, it should be used as a repository. You can probably find a lot of malware on GitHub, doesn’t mean you go there to choose your text editor.
I never search the AUR directly, I only use it if some README tells me I can install their software via an AUR package.
Yeah, I search the AUR not to discover packages, but to see if something I want to install is in there, if it is I check the PKGBUILD and make sure none of the sources/commands/patches are suspicious.
People need to remember it’s not some carefully vetted app store and that they need to be the ones vetting any packages they install and any changes when updating.
I already assumed aur was riddled with stuff like that.
Use a condom when fucking around in there.
Wait what happens once some government or state actor hacks rust’s install script rustup with its
curl | bash
install procedure and relying on TLS certificates which are e.g. issued by the Russian government. (No, the rust project won’t use a Russian/Chinese/US Gov certificate but your browser will trust near all of them…)You’re using that to download a program. If they can MitM the shell script, they can just as well MitM the program that you’ll run right after the download…
That is why Debian uses digital pgp signatures for all packages. And the GNU project uses strong cryptographic hashes for install packages.
Sure, I guess, if you’ve got a distro installed on your PC and use the distro-provided packages to install the Rust compiler, then you can’t be subject to such certificate MitM attacks.
Your comment sounded like you were primarily concerned about the shell script piping rather it just being a program which can be downloaded without going through distro packages.
As does Arch.
This is why we invented hash checking. Good thing they can’t MITM where that’s stored! /s
this is going to increase in frequency as linux gains popularity
I use Debian btw
This is why I felt uncomfortable when I first switched to Linux and kept reading that I didn’t need to worry about viruses as long as I didn’t click on dodgy links and only installed from trusted sources. I’m sure I’m betraying my lack of security knowledge here, but that always seemed a bit too easy.
@DirkMcCallahan @Tundra The AUR isn’t a trusted source, but most of the the Arch cult forget to mention that.
Half the posts on the Internet are people replying to requests for help with the message “read the wiki, the aur isn’t a trusted source, dummy”
Why do we have the AUR anyway?
Because it’s convenient and a good way to start to write PKGBUILDs quickly without becoming a proper package maintainer.
Isn’t that like how alpinelinux’s community repository works too?
most of the the Arch cult forget to mention that
The “Arch cult’s” holy book, the ArchWiki, states the following pretty clearly:
Warning: AUR packages are user-produced content. These
PKGBUILD
s are completely unofficial and have not been thoroughly vetted. Any use of the provided files is at your own risk.Mention of one’s use of the AUR for their needs doesn’t need to come with a disclaimer.
People who don’t read or don’t use their brain are going to keep not doing so, regardless.Arch is not responsible for idiots.
deleted by creator
At the very least aur must verify you are associated with the domain name of the project, same as flathub.
that would literally defeat the entire purpose of the AUR
flathub still allows unverified submissions which is what I proposed. So, no, it wouldn’t.
AUR is the place for unverified submissions. The verified stuff typically ends up in the main repos.
That’s not at all how it works.
The AUR, key words “user repository” is a specific weak point. It doesn’t have the same level of oversight that the main arch repo has. Stick to main repos and verified flatpaks and it’s very unlikely that you’d ever be compromised.
Linux isn’t perfect, but it’s certainly better than windows where you just download executables willy nilly to install your software.
BTW python’s package index has roughly the same problem - but a far less technical, experienced and critical user base. NPM has this problem since years.
Expect these problems to rise with every percent more of new Linux users which never learned the difference between opening / viewing untrusted data, and running untrusted code, because Windows basically ignores this essential concept and Android tries to solve that with sandboxing each app.
That is sound advice, the AUR is most definitely not a trusted source though. For the normal arch repos the people who put the stuff there are known, they work for the project, you’re as likely to get malware from one of those as you are to read an article bashing gamespot in gamespot, the people in charge of putting the packages there are the ones with more vested interest in things working so they won’t knowingly introduce malicious code (plus it’s a handful of people who know each other by first name).
The AUR is a different story, because anyone can put stuff there it’s very easy to have malicious code end up there. It doesn’t happen that often because most of the time it’s fairly obvious and it gets flagged straight away, plus if people start doing that people will migrate away from the AUR, so it’s a high risk low reward situation. But as more and more people start to use Arch derivatives that come with the AUR enabled without understanding any of this it becomes a more rewarding thing to exploit.
like git repositories, AUR in its name itself says what it is, a User repository. its trust like repositories is fully based on how much you trust the user who uploaded it
In fact, most PKGBUILDs just clone git repos and build them
Yeah i think the aur is pretty much completely source based, with the exception of bin packages where they pull down a precompiled binary.
Yeah. The I’m A Mac crowd had the same problem… god damn it, two or three decades ago.
As market share increases, platforms become a much bigger target for malware. And a lot of the “I don’t need to run virus scans” crowds learn the hard way.
Its the same with open source. Obviously NOBODY around here would parrot this bullshit, but there is the idea that because something is FOSS it is safe. Code is only as safe as code review and there have been a few high profile cases of social engineering to get malicious code past even fairly rigorous review. Let alone “Well, that script is FOSS so somebody probably reviewed it” that we see so often.
Only for distributions which don’t do reproducible builds and require full and complete corresponding source code under an FSF approved license.
If you choose to download binary blobs, good fucking luck.
As if everyone were to read every single line of source code, though. This just increases the chances of it being discovered.
you don’t need to read every line if you trust your package maintainers
True, but AUR isn’t official but provided by other users
Or if a handful of paranoid people read the code for a distribution and publicly discuss everything that they find (it only would take 12 crazies in the whole world)
True
i don’t use arch (btw).
This is technically not Arch’s fault btw. I use Arch but don’t use AUR for this reason
it was a joke. perhaps a /s was warranted. it could happen in any package manager/repo and I’d be surprised if it hasn’t yet.
Also same problem adding random PPA’s on Debian and Ubuntu.
Agreed. Or piping random
curl
things intosh
. Or downloading randomexe
s on Windows etc
The affected malicious packages are:
librewolf-fix-bin firefox-patch-bin zen-browser-patched-bin
So…did someone just like create a new package cloning these or did they somehow get into the “official” repository? Is there no attestation process?
Aur is completely user controlled, it is not official and not trusted. Someone just decided to use those names and upload something.
To be clear, when projects distribute their software via the aur, someone else can’t just issue an update using their package name.
This person appended “fix” and “patched” to appear in searches next to legitimate packages, and seem worth installing instead.
Oof. Does this happen often?
To be clear, they created new packages with these names. Anyone can make anything available on the AUR, but you cannot issue updates under someone elses existing package name.
It’s a known risk.
Not what I asked.
The frequency of this happening does not inform you of the risk. Because there is no attestation it could happen rarely for some time and then suddenly a lot. Or the inverse. No way to tell.
It’s surprisingly rare imo
I kinda watch the Arch devs packaged more stuff rather then relying on thr aur,Chaotic-aur (third party repo) solves mostly.
The arch maintainers package more software than most other distributions. Some items they leave in the AUR by choice, if the Dev prefers it there. The key is to use the AUR sparingly and only if you trust the packager.
Ok thanks, I never knew they package more stuff on the stock repos.
The arch maintainers package more software than most other distributions.
Sorry, but I fail to see this.
I suppose if you’re accounting literally all independent distros, then you’re probably right. However, if we’d be more realistic and compare it to other well-established independent distros[1], then we notice that the vastness of the packages found in Arch’s repository is rather lackluster at the very least. Heck, by virtually all metrics, Arch together with its derivatives undoubtedly belong in the upper echelons of usage stats; only being second to the Debian-family of distros. IMO, however, the size of its repository absolutely doesn’t reflect this; as it’s only bigger than Slackware, Solus and Void. The inclusion of these smaller projects is arguably charitable on my side*. But to drive the point home very clearly: Arch’s repository is smaller than Alpine’s, Debian’s, Fedora’s, openSUSE’s and Gentoo’s with a ratio of (about) two to one (except for openSUSE).
I’m basically counting Alpine, Debian, Fedora, Gentoo, openSUSE, Slackware, Solus and Void. I didn’t count Guix System and NixOS for how their ‘repositories’ are built different and therefore not easily comparable to the others. ↩︎
I don’t know if raw package counts is the best comparison. Unlike say Fedora, Arch bundles everything related to a project in the same file. If you want Qt6-base on Arch, that is one package. If you want it on Fedora, it is going to have a lib, header, docs, and maybe a few other packages.
Just from personal experience, I do not have issues with finding packages in the main repos, with only a handful of my packages coming from the AUR. This is not the case with others, like Fedora where extra repos need to be added, like EPEL and RPM Fusion.
Thank you for the quick response!
I don’t know if raw package counts is the best comparison.
You’re probably right. Do you think we got anything better to go by?
Unlike say Fedora, Arch bundles everything related to a project in the same file. If you want Qt6-base on Arch, that is one package. If you want it on Fedora, it is going to have a lib, header, docs, and maybe a few other packages.
Can’t comment on this. Though, the list of packages with qt6 in their name is considerably longer in Fedora. However, I wonder if this simply reflects that Fedora, by virtue of having a larger repository, also has more stuff related to qt6. Or, as you posited it, chooses to package the same content over multiple packages instead of bundling them like it’s supposedly happening on Arch.
Just from personal experience, I do not have issues with finding packages in the main repos, with only a handful of my packages coming from the AUR. This is not the case with others, like Fedora where extra repos need to be added, like EPEL and RPM Fusion.
Hmm…, I feel you might be conflating stuff. Please allow me to elaborate on what I mean.
Fedora is not able to include some packages in its own repository due to legal reasons. As such, these are relayed to RPM Fusion instead. Which means that a well-functioning Fedora installation (almost necessarily) desires to install some packages from RPM Fusion. So, RPM Fusion exists as a ‘hack’ of sorts to protect Fedora from legal charges and NOT because they’re too lazy (or something) to ship those packages themselves. To be clear, RPM Fusion is accepted as a trusted third-party repository.
Arch, on the other hand, is rather lenient on what they can include in their repositories. Basically enabling them to package within their repositories all codecs and whatnot without them being visibly worried about the legal consequences of this ordeal.
To be honest, I don’t know exactly where this discrepancy comes from. But I wouldn’t be surprised if it’s related to how Arch is basically a genuine community distro while Fedora has official ties to Red Hat.
Btw, small correction, AFAIK you’re not supposed to install packages from the EPEL on Fedora. Perhaps you meant COPR (basically Fedora’s AUR) or Terra instead?
I 100% agree. Everyone raves about the AUR but it really feels like more of a necessity than a value add because so little is actually packaged for arch. And the AUR is definitely more annoying and feels more jank than just having it in your default repo.