this post was submitted on 26 Jul 2024
335 points (98.8% liked)

Linux Gaming

15493 readers
27 users here now

Gaming on the GNU/Linux operating system.

Recommended news sources:

Related chat:

Related Communities:

Please be nice to other members. Anyone not being nice will be banned. Keep it fun, respectful and just be awesome to each other.

founded 4 years ago
MODERATORS
 

CrowdStrike’s Falcon software uses a special driver that allows it to run at a lower level than most apps so it can detect threats across a Windows system. Microsoft tried to restrict third parties from accessing the kernel in Windows Vista in 2006 but was met with pushback from cybersecurity vendors and EU regulators. However, Apple was able to lock down its macOS operating system in 2020 so that developers could no longer get access to the kernel.

Now, it looks like Microsoft wants to reopen the conversations around restricting kernel-level access inside Windows.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 3 points 1 month ago

Funny how you can create a microkernel only to then fuck up privileges so bad that software (e.g. graphics drivers, anything running with real-time prio) can easily crash your system without recovery.

The architecture of Windows is both, remarkably good and weirdly underutilized.

[–] [email protected] 3 points 1 month ago

Double win for linux

[–] [email protected] 12 points 1 month ago

I have no problem with this.

Norton AV causes SO many issues with the software our clients use for home automation.. And not even issues which make sense. And so many AV apps cause nothing but problems

If they need low level access, they can request a userspace API from Microsoft and wait for it.

[–] [email protected] 22 points 1 month ago

Probably a good move for them to make tbh. I like how CrowdStrike's name already sounds like it should be the name of a big malware/virus/zeroday. So we should have seen it coming.

[–] [email protected] 42 points 1 month ago (1 children)

They're going to implement something like eBPF for the Windows kernel. This will allow kernel-level modules to run with zero risk of crashing the kernel. If the module fails, it fails without taking down the kernel with it.

Linux already has this. It works great. If Windows gets this, all antivirus and anti-cheat software is going to have to transition.

Once that happens, it will be way easier to add anti-cheat software to Linux that operates the same as on Windows. It may be possible to load and unload it only when playing and actually having competition-grade gaming on Linux.

Of course, this is a security disaster that I wouldn't allow on any of my daily drivers, but I would enjoy playing Destiny on my Steamdeck if there's a legit way for me to do it.

[–] [email protected] 6 points 1 month ago* (last edited 1 month ago)

According to wikipedia, both Windows and linux have it, and both are open source.

Believe it or not, a lot of companies, no matter how cool and secure their marketing sounds, are just seriously incompetent.

[–] [email protected] 5 points 1 month ago (1 children)

Microsoft is the Windows ME of corporations

[–] [email protected] 2 points 1 month ago (1 children)

At least windows ME was green.

[–] [email protected] 2 points 1 month ago

I remember the screen always being blue on ME.

[–] [email protected] 46 points 1 month ago* (last edited 1 month ago) (4 children)

Imo, third party companies just shouldn't have access to the kernel level. Someone is always getting hacked, and having this level of access to potentially hundreds of millions of computers is a huge risk. Especially if it's for something trivial, like anticheat in Helldivers 2.

[–] [email protected] 1 points 1 month ago

Enterprise level AVs are going to sit in the kernel so they can watch for anomalies in the OS. There are better EDRs out there than Crowdstrike, and virus definitions are an outdated way of detecting anamalous behavior anyway.

[–] [email protected] 4 points 1 month ago

Yeah, those security agents can become attack vectors themselves, so running them kernel level is nuts.

[–] [email protected] 6 points 1 month ago (1 children)

@Wahots @mudle , I hold that same relative feeling, but people do own their computers and if they want to play League of Legends and let someone into the kernel, who am I to tell them no? I ran league in Lutris, so no chance of making that decision even if I wanted to.

[–] [email protected] 7 points 1 month ago* (last edited 1 month ago) (1 children)

and let someone into the kernel,

Problem is, that similarly to invasion of privacy, this is not visible, and so they don't understand what's happening. It's just one more program, what could happen? It's not like somebody coming and inspecting your house, in that it is not noticeable in practice.

[–] [email protected] 1 points 1 month ago* (last edited 1 month ago)

@ReversalHatchery , I completely agree. My ring 0 is sacred and I can't prove there isn't anything in it already, but I wouldn't knowingly shove third party stuff into my kernel. I like to keep my apps restricted from anything they don't need on my system in userland. However, millions upon millions of people installed Tencent's Vanguard to play League of Legends like it wasn't any big deal (it is). If people want an inner ring security module, I suppose that's a bit their choice. 🤷🏽‍♂️

[–] [email protected] 7 points 1 month ago (2 children)

@mudle somehow, I don't think that's the way to resolve future problems, it just looks like Apple's way, which sometimes isn't great for customers

[–] [email protected] 4 points 1 month ago (1 children)

You have a point, but if Microsoft completely locks down the kernel, preventing any third party software/driver from running at the kernel-level, Anti-Cheat developers will have to find a new way to implement Anti-Cheat. This may open up the possibility of some newer form of Anti-Cheat being user-space; or at the very least NOT ring 0, which in-turn may open up the possibility of this new form of Anti-Cheat working underneath Linux.

Or maybe we're all still screwed because this new form of Anti-Cheat will perform on a basis that trusts that there is no third party access to the Windows kernel because of how restricted it is, therefore nullifying the need to be ring 0, but it still might not work under Linux due to the freedom/access users have to the kernel.

But then again, in order to implement any third party driver into the Windows kernel, it has to be signed and/or approved by Microsoft first (IIRC). But cheaters get around this through various means. So maybe nothing changes; but if Microsoft DOES restrict kerne-level access, this leads me to think that Anti-Cheat will have to change in some form or another, which may lead to it working on Linux.

TBH, The only way(s) I see Anti-Cheat moving forward at all, is:

  • Hardware level Anti-Cheat (similar to a DMA card. Maybe it requires a certain type firmware that is universally used across all/most major video game companies)

  • Some form of emulated environment. Maybe like a specific kernel that is used for each game.
[–] [email protected] 5 points 1 month ago (1 children)

@mudle btw afaik Valve's working on AI anticheat, which analyzes player's behaviour, I think nowadays that would be the most viable direction for non-kernel anticheats

[–] [email protected] 4 points 1 month ago (1 children)

I completely forgot about AI Anti-Cheat, lol. But yes, this is another form of Ant-Cheat that seems to be very effective. (Although I don't much like the idea)

[–] [email protected] 4 points 1 month ago

@mudle well, AIs are usually controversial because they are trained on scraped data, but I don't think that this may be an option for video games

[–] [email protected] 49 points 1 month ago* (last edited 1 month ago)

yes please. NO third party should have ring 0 access to your computer.

bonus: no kernel level anticheat to fuck with linux users

[–] [email protected] 4 points 1 month ago (1 children)

Why not have a structure in place that has Microsoft review/test code from third parties. At the end of the day it is Microsoft that took the public hit so they should be the last line of defence in this process.

Those that wish to have their code sit at the privileged/kernel level should either pay up or supply Microsoft with resources to do the tests Microsoft would require.

What shouldn't happen is third parties doing their work at a privileged level without the oversight.

[–] [email protected] 7 points 1 month ago (1 children)

@dueuwuje @mudle

If I understand it correctly, it already has been (at least formally) reviewed by microsoft before signing and allowing that signed code run kernel-mode. But the crowdstrike's driver module was not just running malware scanner on itself, it was interpreting what is basically unsigned code that was easier and faster to update. This unsigned files were the ones containing faulty update.

At least that what I understand from https://www.youtube.com/watch?v=wAzEJxOo1ts , it may not be entirely correct or I may have misunderstood.

But if it is true, it may be more sensible to make an API so software with specific permissions could access information needed to effectively function as antivirus, without being run in kernel mode.

[–] [email protected] 2 points 1 month ago

But if it is true, it may be more sensible to make an API so software with specific permissions could access information needed to effectively function as antivirus, without being run in kernel mode.

I've come to this conclusion as well. I believe Apple has similar functionality with their "kernel-extensions", I believe it's called.

load more comments
view more: next ›