this post was submitted on 01 Aug 2024
4 points (100.0% liked)
Technology
59424 readers
2838 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I honestly don't know how to think about this. On one hand, it's pretty cool that more and more users are giving the finger to Microsoft and switch to Linux.
On the other hand, Linux systems are gonna become a bigger target for cyberattacks or malware. I realise that I, as a regular person who isn't on dodgy porn sites all day, probably have nothing to fear but still, I like my Linux lightweight and if they have to slap some antivirus on there.... eh idk
Don't fret! 95+% all servers on the internet run Linux so the attack vector has been there for ages. Follow best practices and your risk will remain low!
Unfortunately there's a lot more to it than that.
You're right that the "back end" of Linux systems tend to be quite hardened.
It's the desktop environments that are a concern when it comes to security hardening, IMO. Almost all servers have no DE installed so it's not something enterprise has cared about.
How much effort has been put into security on DEs? I honestly have no idea, but so far there hasn't been an enormous pressure to security harden them.
Shit, look at:
X11. It's insecure by design, yet most distros still ship with it (understandably, since Wayland isn't 100% yet).
packaged software runs as root during the whole installation period - this means that anything slipped into the install script will have full root privileges to do anything to your system. Flatpak does fix this, but normally-packaged software is still abundant.
any non-root program can change aliases in your bashrc or bash_aliases file. I.e. they can change "apt install" to some other nefarious command, or to point to a dodgy software repository, so that next time the user types "sudo apt install [XYZ]", it downloads malware or does other nasty things.
I'm absolutely clueless about this stuff and I can come up with those potential attack vectors in seconds. Imagine what a proficient hacker could do, or a hostile nation-state.
I definitely think improvements will have to be made in terms of security, and we're no doubt going to hear more about malware in the coming years. But it's not an insurmountable problem, IMO. Distros and DEs will just take time to adapt.
This is a bit overhyped.
WTF? Things that run as root, do. Things that don't, don't. Obviously most things don't.
For your own user, so what?
EDIT:
Actually it is. One can make levels over levels of isolation, sandboxes and more sandboxes, but in the end conscious hygiene matters most.
No, it isn't. If anything it's the opposite.
Under X11, any program of any kind can see the contents of another program.
Under X11, any program of any kind can see all your keypresses, whether the app is focussed, unfocused, minimised, on another virtual desktop. Anything.
Under X11, any program can inject keypresses into any other program.
Under X11, any program of any kind can access your clipboard.
And it doesn't even take root privileges. That's just the default.
The X11 system itself runs as root, though. And this opens the door for privilege escalation exploits.
That's before we even consider the devs themselves saying that the complexity, decades of spaghetti code, and unfixable bugs make it virtually impossible to patch.
X11 is a security nightmare of epic proportions. An absolutely cataclysmically insecure system. And it's one of the main reasons that X11 devs abandoned it for Wayland.
I never said that things that don't run as root run as root. That doesn't make sense, it's self contradictory.
What I said was that install scripts for repo packages always run as root. And therefore anything that makes its way into the script will be executed with root privileges. That is a risk.
What do you mean, "so what"?! A non-root program being able to highjack system commands and even gain root access isn't "so what", it's a glaring security hole.
You're right, but you're taking my words there a little too literally there.
When I say the problems aren't insurmountable I mean "with effort, a lot of these will be fixed and your system will be pretty secure", not "one day Linux systems will literally be unhackable, and no exploit or security issue will ever be found again. Security problems will be a thing of the past."
This would be the same as under Windows, no?
It usually does, but it doesn't have to.
And the new thing to replace that is still not good enough after 10 years or so.
Let's please not extrapolate the problems of your distribution to all of them.
Your user may set aliases for the shell of your user, and the program\script ran by your user can do that.
It's not a security hole at all. It's something you should be able to do for any normal use.
In short, no not really for modern windows versions, in almost all cases.
Although I don't find "well Windows does it so it must be alright" to be a great argument anyway. When someone says "top notch security", Windows isn't the first thing that springs to my mind.
Hypothetically yes, but in every single distro out there that I've seen no. And most people don't build their own from scratch.
Not in all cases, no. There are fringe usecases still being worked on. I've been using it since 2016 just fine, but my sister, who is reliant on screen readers, hasn't been able to.
Like I said, things are being worked on. This is kind of derailing the conversation away from security, though. I was talking about security.
No. It is all of them. It's a problem with all Debian-based distros, Fedora, SUSE, Arch, you name it. Installer scripts run with root privileges.
Yes... then when you run sudo thinking you're using whatever command, it can run something entirely different. How don't you see that as a problem?
WHAT?! Any program, without root privileges, being able to tamper with what commands do, and gain full root access to your system, "is not a security hole at all"??
So you download, say, a text editor. Except it's been compromised (although you don't know it). That program alters the sudo command by aliasing it to execute a curl command that encrypts your drive and shows a message that if you send ABC amount of bitcoin to XYZ wallet, then you get the decryption key.
You run sudo for any reason, e.g. to edit your fstab file, do a system update, install a package, anything, and you type your password at the prompt as usual. Unbeknownst to you, you didn't actually just run sudo plus your intended command, you just ran that aforementioned curl script, and you handed it sudo privileges. Your SSD is encrypted, your data is gone.
In your mind, that's not a security hole? That's intended behaviour? Any program should be able to do that?
I don't really know what to say to that, other than I disagree wholeheartedly.
We-ell, this thread kinda started with saying that we'll see glaring security holes with the same desktop popularity as that of Windows.
Well, then it doesn't require flatpaks and snaps to solve this huge problem, right?
You might have a path where only a certain user has 'w' rights, that's readable by everyone, and software is installed there.
You might use Nix or Guix, which are, while not traditional, still pretty normal package managers without things like bundling dependencies.
So NixOS and GuixSD would be such distributions. Admittedly I've never used them, only Guix in another distribution.
Well, since you've mentioned accessibility, some of us have AuDHD, and while each person is different, for me specifically this means that I can set up CWM or FVWM for X11, but I just can't set up Hikari for Wayland. That is, I had it kinda working, but the anxiety from setting up that and some terminal emulator with hipster XML config and DPI being wrong just made me say "fsck that" and go back. I could have tried Gnome with Wayland, but my X11 setup is more subjectively usable.
OK, I'm not sure, but I think OpenBSD and NetBSD don't run any scripts contained inside packages. They are not Linux ofc.
Yes, you can do that. You can set aliases which will look like whatever at all. How do you solve that "problem"?
OK, I'll make a shortcut here and say that if you think this is a problem, the only real fundamentally sane way to solve it is to disallow privilege elevation, say, after single mode, and boot to that in case you need to do some maintenance.
Any program that you run. Well, or one can forbid aliasing 'sudo' in the shell, of course. But you won't run out of things which can be aliased to something nasty. It will be the same as
rm -rf /
advice evolving torm -rf /*
Yeah, like windows did, for a long time, and from time to time still does.
It pretty much does, yes.
Ok. Not to do with security. Let's not get sidetracked.
I'm not sure about the BSDs, but I'm talking about Linux. And as it stands, the package installation step is a risky process in any distro I've ever seen. You just have to rely that no mistake will ever be made by packagers, nothing will slip past them, and that they manually and thoroughly look through every installation process of every package (which they don't).
It's an unnecessary risk that gets solved by Flatpak (plus a bunch of other security advantages)
I don't know, I'm not a security expert. But it is a problem, and a massive one.
... Or Nix/Guix, or any per-user approach to package installation, or AppImages.
Anyway, I'm not against them completely. For distributing some user applications, and maybe proprietary stuff, they are fine.
We-ell, in basic Unix-like terms you can just do a chroot while unpacking, check that no nasty places are being touched, and then rsync to root. I think some PMs already do just that.
This problem seems inherent to anything Turing-complete.
Nix is not simple, and it always seems to fuck up. AppImages have zero security advantages, they're awful. It doesn't even have sandboxing.
Lmao. Not only would that not even be effective, but that's also a ludicrous suggestion for the average user to do for every app they install. What an absurd suggestion.
Why are you so against having a secure system?
I dunno what you're on, I'm talking about the PM doing this.
I'm against believing in the concept of actually having a secure system.
100% there will be more malware and scams as Linux grows. In fact, it's happening already.
Just look at there being multiple instances of cryptowallet theft on Ubuntu's app store by devs uploading fake copies of crypto wallet managers.
And that's before we even get onto DEs â and much of the desktop Linux stack in general â generally not being designed with security in mind, as it's not been something they've had to worry about.
We will see more malware, more scams. We will see glaring security problems that were allowed to stay in place for years be exploited. We will see infighting in the Linux community over all of this stuff.
It is the price we must pay for being an increasingly relevant platform.
With any luck, more users will mean more contributors, more financial support for devs, and of course better security as a result of that - you only need to look at how much KDE Plasma has improved with support from Valve, and how much work Gnome has been getting done after Germany's "Sovereign Tech Fund" contribution to see that even a little bit of support can go a long way.
I'm not sure this is entirely correct. But there's truth here in the sense that things have been becoming more complex over time, so now an average desktop system has much more packages than 10 years ago, and supply chain vulnerabilities are a thing.
Now, using snap store, flathub and all that is just unhygienic.
I'm certain most of the failures will be in the new shiny stuff, and thus most of the losses in that infighting too.
Why is that?
What is this based on? What do you mean by "unhygienic" anyway?
Flatpaks are more secure than system packages. They're not installed with installation scripts that run as root (and can therefore do anything to your system if malicious code is slipped in.
Flatpaks also have sandboxing. It's not a perfect implementation mind you, but it's better than zero sandboxing.
Snaps is a bit more complicated, but sandboxing works if you have a fistro that uses AppArmour, so basically Ubuntu and some derivatives. Although who else would use snaps anyway lol. Flatpak won that fight.
I don't know why you'd be certain of that. New stuff is generally designed from the ground up to be more secure.
Look at Flatpaks Vs repo packages.
Look at xdg-portals Vs 500 different implementations to do the same thing.
Look at the absolutely cataclysmic security catastrophe that is X11 compared to Wayland.
Because a vulnerability in one DE's file manager, for example, will have smaller impact because many people don't use that DE.
Same with other things.
Also because that's something we still had to worry about.
Not all package managers even run install scripts (from packages) at all.
Flatpaks may contain vulnerable versions of libraries bundles, IIRC. While the one from the normal package manager has been updated.
I just don't like the general direction of this. Running more and more complex and untrusted crap and solving that with more complexity.
More complexity - bigger probability of mistakes. Sometimes fundamental laws are enough.
I'm afraid of the day that may come where people will say that Emacs is a security catastrophe due to lack of isolation.
This essentially all boils down to "I don't like new things, and despite it being made more secure, I don't trust it"
How are sandboxes "untrusted crap"?
You talk about complexity being bad, yet you seem to prefer X11 over Wayland, and 500 different implementations of the same thing, implemented separately by every app developer, rather than using a standardised xdg-portal. Surely you see the contradiction there?
No, quite the opposite, I like new things, just in my own direction. Which would be simplification. We've had this exponential growth of computing power and complexity and expectations in the last 30 years, which can't go on.
Again, where you'd use a screwdriver 100 years ago, you'll still generally use a screwdriver, possibly one as simple as 200 years ago, but with computers we for some reason have to hammer nails with a microscope today.
A personal computer should be as complex as Amiga 500 tops.
Wasting 1000 times the energy to try and make it easier to use than that still hasn't yielded satisfactory results, for a sane person this means stop.
The rest is just gaslighting.
What you run in them is untrusted crap.
Yes, what's standard in X11 has N different variants with Wayland. Correct.
I don't use it at all.
If you meant that Wayland is simpler than X11, let's compare them when Wayland reaches feature parity. Also X11 as a standard is simple enough.
I also consider Nix and Guix to be better solutions to some of the problems Flatpak and Snap solve, and Flatpak and Snap to fall short of solving others.
Like I said, much of the new things you're complaining about is simplification. Flatpak, Wayland, xdg-portals.
Lol. Why stop there? Why not say they should be no more complex than an abacus?
How?
And assuming it is... running it without a sandbox is somehow better??
Can you please answer. X11 is far more complex than Wayland. Why do you prefer it if you like simplicity?
You don't use programs that... do things? Things like follow system theming, give notifications, open/save files, record your screen, open a file picker, etc? I don't think you're grasping what portals are.
Wayland is simpler than X11, by a long shot.
It won't ever, by choice. It's not meant to. X11 is filled with many mistakes that it should never have had.
The X11 developers say otherwise, and have embraced Wayland.
Christ. I don't. At all. You want simplicity and are now advocating for Nix and Guix, no Flatpaks, sticking with X11, no xdg-portals?
Do you have the definitions of "simple" and "complicated" mixed up in your mind?
No. AppImage is relatively simple. Flatpak is not. There's a clear difference between "new shiny" and "new".
Amiga 500 is quite functional as compared to abacus. Modern PCs not so much as compared to Amiga 500.
It's not far more complex as a protocol.
I don't, quick googling says this is something connected to giving permissions to Flatpaks or something, which I don't use.
ColibriOS is simpler than Genera.
As in?
So what? It's not a religion to embrace.
In what world is Guix more complex than Flatpaks?
See, you are trying to do these emotional hints at me saying something stupid, but this is really too much.
You keep saying that far more complex things are actually simpler. Where are you getting it from? AppImages are more complex than Flatpaks, X11 is otherworldly more complex than Wayland, xdg-portals are far simpler than the cluster fuck that is every Dev just creating their own solution, etc.
What the actual fuck? This https://www.x.org/releases/X11R7.7/doc/xproto/x11protocol.html is "otherworldly more complex" than this https://wayland.freedesktop.org/docs/html/ ? It's more complex exactly in the amount needed to make it more specific and with the client-server model.
This is bullshit. Something like AppImages can be done with bloody shell scripts.
Solution for what? Let's please verify that you even know what xdg-portals are used for, that is, that you know what you are talking about.
You keep ignoring actual questions as if you were above them, you are not.
From knowing what those things are. I just don't immediately remember any of the details, because there's too much information in our lives and Wayland, Flatpaks etc are far from the top of the list, and more than that because I expect you to argue in good faith which won't require putting facts under your nose.
Also you keep behaving as if someone owed you something in general or if they lost an argument. They don't.