I’m still in the research phase of switching to Linux and don’t know if this concern is reasonable. I’m not tech savvy. I’m comfortable in the windows ecosystem and could use the dos prompt fine when they used it. I played with QBasic and C++ when I was younger and have built a few computers but that was a couple decades+ ago.
My concern is dealing with malware. I know that Linux has less issues with malware than Windows but, as I understand it, that’s primarily because it has a comparatively small market share. I feel like I’m getting into Linux just as it’s getting more popular and that it will get worse if the EU moves away from Microsoft because they will most likely adopt some form of Linux as their new standard. More less tech savvy people like me moving to Linux makes it a juicier target for people who create and use malicious software. It’s not a reason to stay with Windows but is it a reasonable concern? Are there sufficient tools for people who don’t really know what they’re doing to be reasonably secure on Linux and will they keep up if the threat profile expands as Linux picks up more users?
If you read up on why android phones don’t need a virus scanner then basically the same applies to Linux.
But you can always shoot yourself in the foot on any web connected device.
Why?
I’ll take it you mean why can you shoot your foot on any web enabled device. As the other is longer tp explain (hence read up or watch a video).
So a few easy ways to fuck up your device.
- Username admin. Password 1234.
- or not setting up any security
- Install this free version of <popular game> from scam.com
- use free shitty VPN
- don’t ever update security
- setup folder share on network with all or more of the above issues
Pretty much applies to phones, PC, (and OS), consoles and other devices.
Sorry I meant why don’t youneed a virus scanner on Android? Because it is immutable?
One thing to think about with Linux—where I think you’re getting the wrong impression—there’s something like fifteen billion Linux installations globally. Compare that to Windows where there’s about 1.9 billion.
Yet for some painfully obvious reason, Windows has about an order of magnitude more serious, actively exploited vulnerabilities than Linux. For every serious, actively exploited Linux vulnerability (which includes basically anything in the tens of thousands of packages + kernel that are available and ready to install in any Linux install), Windows has vastly more. And that’s just the stuff branded by Microsoft!
There’s a whole lot of reasons why you’re much more secure in just about every way on a Linux install, but believe it or not, you know what the single most important factor is, that prevents malware from being much of a problem? Default permissions!
It sounds silly, but whenever you download something on a Linux desktop you can’t just execute it. You have to take an extra step and mark that thing/malware as executable before you can run it. It’s a step where everyone stops to think, “hmm… Maybe I should double check this.” 😁
This doesn’t stop the truly careless, of course. But it’s easily the biggest factor in preventing the sorts of “drive by malware” that people often get suckered into running.
Contrast this with Windows where literally everything is executable by default. You can change a .txt to an .exe and BAM! Windows will now attempt to execute it when you double click on that file (that would throw an error, but you get the idea).
There are eight billion human beings in the world. I think you should break down that 15 billion number a bit.
TVs, thermostats, “smart” anything, android phones, 3D printers, industrial equipment, routers, sensors (e.g. soil monitoring where there’s millions), and zillions more categories.
Remember: Just about every “smart” device that’s connected to the Internet is running Linux and isn’t getting compromised anywhere near as often as embedded windows devices did (which is a big reason why companies stopped using embedded windows!). There’s vulnerabilities that crop up from time to time (e.g. cheap routers) but that problem can often be attributed to shitty practices on the part of the device manufacturer. Example: Using the same default credentials on every device, expecting the end user to change them.
Android, cars, toasters, etc.
Don’t forget TVs, thermostats, “smart” anything, etc.
I don’t think it even needs to be smart in the sense of being networked (although all network equipment uses it too). Probably any type of fancy interface will just run Linux.
Malware is the least of your worries with Linux. The real reason malware has historically been more prevalent on Windows isn’t necessarily because of market share, it’s in the way software is distributed. In the Windows world, you go to random websites and install proprietary software; you have know idea if it’s trustworthy, even when you’ve found the official site. On Linux, you get your software from repositories (like the app store on your phone) where the software is open source and has been reviewed. All this software comes from trusted sources, you’re never accidentally going to get malware from your OS.
On Linux, you get your software from repositories
Unfortunately I have seen many software projects where the linux install instructions are to run a command that involves curl and a .sh file
Pretty much any GitHub project right?
That does happen, and those are bad. These people are bucking the trend and bringing the Windows mentality to Linux and I hate it.
One of the main reasons why Linux can be more secure is that, being open-source, anybody is able to review the code and submit changes, meaning vulnerabilities and exploits are usually patched very quickly. This is one of the reasons why Linux has a larger market share when it comes to servers, since data security is pretty important for those!
It is reasonable to be concerned, and you absolutely should be. Just because it’s a smaller target (at the moment), it doesn’t mean you’re completely safe. Having said that, if you apply general common sense to your habits, you will mostly be ok. You don’t have to be tech savvy to know that you shouldn’t be blindly installing software or running scripts you downloaded from the internet. You also don’t need to be tech savvy to be a safe internet user and have good security hygiene (i.e. avoid dubious websites, verify that sites are legit, only download from official sources, use an adblocker, responsible with passwords, etc.).
Basic security measures like installing UFW on your computer and blocking incoming connections already help a ton. Then you can install clamAV if you still deal with Windows files and extensions.
Yes, security concerns are always reasonable, specially when you’re switching to different software.
Generally speaking most Gnu/Linux distributions are safer than your average windows install, mostly because on windows you download .exe files from developer’s website. Which exposes you to a higher probability of a man in the middle attack between your computer and the website or simply you clicking a fake clone of the website on the search engine.
Installing software on windows is scary, I tend to double check the link from on the search engine, and then on wikipedia and check the wikipedia change history too to make sure the link on wikipedia wasn’t edited.
Even if the link is legit it’s possible that the developer simply forgot to pay for the domain, someone snatched it and is now serving a malicious version. Or simply the server may be compromised.
On Gnu/Linux on the other hand, usually software is installed via the repositories which are signed by the mantainer’s pgp key. That means that even if your server is compromised the package manager wont install the software if the signatures don’t match, if they do match, it’s still possible but very unlikely that the software was compromised somewhere in the supply chain, from the original developer to the maintainer, but as soon as detected the software is quickly removed and it’s usually on your distro’s security notices.
Gnu/Linux is also generally more secure because when you update the system (and you should do it frequently), it updates also all installed applications (assuming you installed them via the repo). So while on windows you still have that same old version of a PDF reader or a video player since you first installed it that may have a known exploit (yes, I know chocolatey exists, but I’m talking about a standard install), on Gnu/Linux the applications are usually up-to-date.
Of course a system is only as secure as the weakest link, if one application is insecure that may compromise the whole system, that’s where you should read hardening guides, you can sandbox applications with bubblewrap or firejail, for sandoxing applications, you can install linux-hardened if you have an arch-based distro, between other things that I never got my head around like SELinux or apparmor.
There’s a lot of misinformation in this thread. Linux malware targeted at desktop users has actually become more apparent in recent years due to the growing number of users.
That didn’t use to be the case because Linux was almost exclusively used for everything except end user desktops.
What you need to understand is Linux is fundamentally more secure from the OS perspective. A good example is how there are no network listening services running like how Windows has SMB/NetBIOS which had the infamous eternal blue vulnerabilities.
That means it is highly unlikely you will be targeted by system/service level malware that exploits known vulnerabilities, so long as you stay reasonably up to date with your package manager. Add on to the fact you probably won’t be running such software like Apache or NGINX anyways.
but is it a reasonable concern?
Yes, you should still stay vigilant as a user as current malware, even for windows, typically invovles some level of social engineering.
The bonus for linux is that you should optimally never have to download executables from the browser. Anytime you do, make sure to pay close attention to what you are downloading and where from.
Some key stuff for linux:
-
Never do a
curl | bash. Always download the script and peruse it to see what it actually does. -
Always prefer packages from package manager, and be careful if using 3rd party repos such as AUR or COPR
-
Don’t download binaries from untrusted sources, and never run as sudo without knowing what it does.
Are there sufficient tools for people who don’t really know what they’re doing to be reasonably secure on Linux and will they keep up if the threat profile expands as Linux picks up more users?
Yes, I suggest you become a little bit familiar with a distro that has SELinux (ex: Fedora). It’s just a MAC security control scheme, but it adds a lot of benefit if you aren’t familiar with Linux in general.
Aside from that, you can use ClamAV for virus scanning. AV and consumer EDR on Linux isn’t that widely available due to the low amount of malware at this time, but I do expect that to slowly change as the userbase grows.
As malware detection gets better, I’m sure ClamAV will add features and functionality to keep up.
Distros that don’t have SELinux generally have AppArmor, which is similar, and has the advantage that it doesn’t have quite such a boneheaded design getting in the way all the time. :3 So I wouldn’t pick a distro just to get SELinux, personally!
(I don’t like how SELinux sticks labels on individual files, except those labels are apparently pointless, because there’s a tool specifically to go through your whole filesystem and reset all the labels if they get screwed up. Which can happen (e.g. if you mount a home directory that doesn’t have the labels of every single file in it set to “this is a home file”, because you moved it from a Debian install where that isn’t a thing).)
– Frost
I can’t find it now, but there was some talk about AppArmor being dropped due to its limiations, but I guess that’s no longer the case?
But yeah the selinux “just relabel all” is an annoying duct tape solution to anyone who has issues. Optimally you should only need to relabel a dir/file once or set the appropriate selinux policy flag if you do run into a problem.
The user friendly solution is supposed to be the troubleshooter, which actually works pretty well most of the time, but it still requires the user to know how SElinux works to use correctly.
-
I think it’s reasonable to be concerend about Linux security. I do acknowledge that Windows just had more time to be tried and tested with malware and user error to have more safeguards, but I’m hopeful that Linux will get more secure while enduring less struggles than Windows as it gets popular.
My general recommendation if you do decide to go with Linux is to keep your OS up to date, verify the apps you use (do you trust the devs, the distribution method, etc.) and use common sense (not every command you copy from the internet needs sudo, etc.).
If you’re really curious on how you can make Linux more secure, check out the security-oriented distributions section at privacyguides.org.
I’ve recently started using secureblue myself and it’s been a bit of an eye-opener on how secure you can make Linux and how much is still needed to be done.
Yes it is. You need Malware protection and you need to harden your computer. Do some research on that.
Do you have any suggestions for where he might get started on the topic? I think that’s what he’s looking for.
Linux has a long history of being significantly more secure than Windows as well as being a much smaller target. Linux malware might exist these days, but it’s rare at most.
Reading something like this, it is apparent that this kind of thing happens infrequently. https://arstechnica.com/security/2024/10/persistent-stealthy-linux-malware-has-infected-thousands-since-2021/
However, while system updates keep your system immune from known exploits, what do you do if youre already infected? Would ClamAV remove
procctl?
Linux already runs a huge portion of the world’s servers, which are a more lucrative target for bad actors than an individual machine, so it’s solidly battle tested.
They also have reasonably tech savvy admins.
The attack I see as a risk for someone with someone with “some skill” is copy pasting a command as root because someone on a forum said it would diagnose an issue they were having and installing a bitcoin miner on their computer.
Unfortunately I could see myself doing something like that in a moment of frustration
Running curl piped to bash with sudo has become pretty common. Just run this one line to install software or repos+keys that are later used to install software. That along with most older articles starting with turning off SELinux make me sad.
I think the most important part is to take your time and understand what you’re doing before you do it. Tech savvy admins can also be caught if they’re in a rush or just blindly trust AI without confirming the command is safe.
SELinux is also just a pain in the tail. We’re on Debian which has got AppArmor instead and while it has caused problems, it’s caused problems a heck of a lot less often than SELinux did when we tried Fedora.
– Frost
Its definitely something to keep in your mind with any computer. What I will say to assure you, is that the tools you are used to using on Windows for protection have equivalents for Linux. ClamAV for antivirus, firewalls, and anti malware software are available in most distros repos.
If you want to be more confident in your security knowledge on Linux, I recommend reading up on the basic permission systems for Linux. Make an isolated folder to explore
chmod,chown, and Linux groups and see how accessing files with different permissions works. You can even look at SELinux (Security Enhanced Linux) for more of an idea of how kernel security can work.Permissions: check out the Concessio app (available from Flathub). Permissions are confusing for new Linux users and the app explains how they work and can generate them in numeric and symbolic formats for command line use.
Most Linux malware comes from community repos and fake GitHub style projects.
The default package repositories in all the major distributions are safe. Some examples to be worried about are pip packages and the AUR if you’re using Arch.
My first programming language was qbasic as well. Fond memories of that.
Vet third party sources, just like you would have on windows.
Usually they’re safe. Safe enough that the average user doesn’t need to worry about it at least. Occasionally someone will take over as the maintainer of the package and add in malware. It’s pretty rare though and not a concern to the average user.
Your concerns are valid.
In my opinion the easiest solution, if you don’t know what youre doing (or dont wanna care) would be to use exclusively an immutable distro. That would lock you out of tweaking the system, but also heavily limit any potential malware. This should be sufficient imo:
- keep system up to date
- dont run programs or commands from unofficial channels
- have firewall enabled and running
- make offline backups of user files
- use immutable distro
What distros are like that? I know nothing.
Fedora Silverblue/Kinonite and Bazzite are the common ones I have heard about most as immutable options.
I previously set up Kinonite on my wife’s laptop for her, as she doesn’t want to deal with any of the tech support stuff. By design, Kinonite is limited to installing programs as flatpaks without further tinkering/effort. It ultimately was a little too restrictive for what she wanted and had odd Bluetooth issues I was unable to sort out. I ended up putting the standard Fedora KDE spin on her laptop instead.
This needs to be higher. It’s the first comment I came to that:
- recognized that security issues are always a concern and don’t just disappear with Linux
- recognized that low tech savvy was part of the question and
- gave a very practical and on-target suggestion for how to proceed (not just Team Linux rah-rah).
The way you present “immutable distros” make them look like state-of-the-art stateless systems (a la NixOS with the impermanence module).
As much as I’d wish (so-called) immutable distros were like that, almost none of them actually are[1].
Fedora Atomic, which may or may not have surpassed NixOS in popularity by now, practically just locks down
/usr. That’s cute, but it means that the immutability doesn’t prevent persistence of hardware in most of the filesystem.Similarly, I could go over the other popular immutables to point out how their immutability doesn’t do much to combat persistence. But I digress…
It’s basically the aforementioned NixOS. And, even then, only if you’ve set it up like that. Guix System might offer it as well, but I couldn’t verify it the last time I looked into it. ↩︎
Great question and I think it is.
Regarding tools, there is for example the ClamAV toolkit, which is easy to setup for the average Linux user, but probably not for the most vulnerable users that need these tools the most.
But in general the biggest problem might be how we treat the biggest vulnerability - the user. With more freedom and control in Linux, we also have more responsibility. And I’d argue that welcoming new users with bad practices is getting overly normalized, e.g. executing commands/scripts that you don’t understand or depending too much on something like the Arch-user repository.












