Live data from Hacker News

Steam games will need to disclose kernel-level anti-cheat on store pages

gamingonlinux.com

521–530 of 660 posts

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#521
post #502

Earlier quoted context omitted.

> This is what happens when a producer's/product manager's cherished KPIs come before UX. > In their mind, adding a toggle in the launcher would lead to lower engagement and player acquisition. Not "in their mind". It does and they have the data to show it. Very frustrating situation.

People cannot say no if you never ask for informed consent. If the PC is personal then a root kit is a violation.

read the TOS

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#522

Earlier quoted context omitted.

What an incredible testament to the lengths men can be driven by spite. I would like to try your game, sir. But my problem is the people trying to take over my computer. I am not going to solve that by letting you take over my computer. Let's talk system requirements- could I get away with running it on an old junker laptop?

possibly, depending on the gpu. wickedengine requires modernish gpu. spite was definitely a part of it. at a certain point while playing and watching fortnite solo build, i wondered why there are so many bugs and if i could fix them. i wanted to understand why ping advantage and storm surge have to exist. this game was my journey to find out. it has been a privilege and a joy every single day. as far as security, you…

While I appreciate the lack of self promotion, I don't see any name or link for your project in either comment. Can you share one? I'm sure I'm not the only curious person.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#523
post #491

First step. Second step? Ban games with kernel-level anti-cheat. It is not acceptable on Linux. Apple will also not accept that shit further, that said Apple lost relevance in gaming with Mantle and the M-Processors (both mean a lot of incompatibility). And Microsoft is regretting every choice in this regard: https://www.theverge.com/2024/9/12/24242947/microsoft-window... But that is a usual pattern. Microsoft makes…

That's an incredibly naive perspective. KLA represents a real risk to companies, as something going wrong can crash player computers instead of just game processes; this is a PR nightmare if/when it happens on a large scale. Not to mention the cost of hiring engineers capable of building kernel components in the first place, it's a niche skillset that's not cheap to hire for. Games companies don't turn to KLA out of…

I'd believe this if every multiplayer game that doesn't have KLA was just rife with cheaters. Also, why is EA adding KLA to Battlefield 1 almost a decade after release?

I refuse to believe there is only one simple honorable objective when it comes to KLA. I simply do not care if companies can't figure out how to stop cheaters without it. What about our experience? You might complain about cheaters, but what if I can't even play the game because of KLA?

Played plenty of recent MP games on Linux just fine and cheating was never experience breaking.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#524

The anti-cheat problem is long-running and complicated. If you choose not to run anti-cheat because you understand that these are opaque rootkits, good for you! That's a totally, 100% valid choice. But please keep in mind: - you are a tiny minority and not the target customer - online multiplayer games are an absurdly big business (i.e. there are huge incentives here) - no, you can't completely solve this server side…

>no, you can't completely solve this server side This is what every dev who can't be bothered to implement relevancy filters says when their server broadcasts the locations of every hidden player to every other player every tick and wallhacks drop a week later Exactly what can't be fixed server side? Are you just talking about aimbots and other situations where script kiddies can trivially author bots that generate o…

Server side can not do anything about ESP or aimbot as they rely only in information that the server must provide the to the client. ESP can be curbed somewhat by obfuscating objects not in their view, but how effective this is depends very much on map geometry as the server must send it at some point. It works okay in games like CS/Valorant (that already has it implemented for years) but does basically nothing in Battlefield/Apex/Escape from Tarkov as they have very open maps. Aimbot can be configured to be pretty much indistinguishable from the best players.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#525

Earlier quoted context omitted.

It's GTA, if they want to get to Mars... release six there. Just shoot the gold copy out there. People will show up.

Not sure if, at this point, it costs SpaceX more money to get to Mars, or Rockstar Games to develop GTA 6. AAA budgets are insane (with IMO meagre results - I don't like most of them).

A lot of time and money goes into AAA games and I think there’s an inverse relationship at play where the higher the budget is, the more risk averse the studio is. So you end up with a whole suite of AAA releases that all play it safe and just copy small innovations from each other, nobody really daring to push the envelope too far.

I don’t really enjoy those games either any more. Too big, too long, and the gameplay feels more like running errands and checking off a todo list than having fun.

Release cycles in the 90s and early 2000s were pretty tight, slowly getting longer as storage and graphical firepower increased. 3D was totally new and studios were trying out all kinds of crazy ideas for games. These days you can basically expect 90% of mainstream releases to follow the same playbook.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#526

Earlier quoted context omitted.

How do you stop anyone from modifying the image? Can you stop them from using DMA hacks? Can I boot the image in a VM?

not possible to stop modification, but i will be heavily surveilling the system, and i know exactly what it should look like. the process tree is known in advance. handcam anti-cheat and replays will handle provenance of inputs. non-human inputs are cheating. you could try to boot in vm, but performance will suffer. the server moved off vms for the same reason. the only thing i really care about is non-human inputs.…

Anti-cheat is always an arms race. A modified image can report anything it wants to your surveillance.

That said, you can win that arms race for a while by doing something sufficiently innovative, different and specialized and you may have that here. I doubt this approach offers a permanent solution though.

Edit: I do think there is a lot to the idea of not trying to put all players through the same level of anti-cheat security. The anti-cheat needs of competitive players is very different from casuals and offering different levels of anti-cheat based on those levels. How amazing would it be if other games did the same and let players choose the level of anti-cheat to use and to require.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#527
post #495

Earlier quoted context omitted.

Which is fine on a device that you only use for gaming, or am I missing something?

Not nearly every "gaming PC" is used for only that. When I grew up, I had one PC to do everything: Homework, gaming, learning to program, storing the single copy of treasured family photos, gaining painful experience in why to make backups before modifying the MBR to dual-boot Linux... Especially with iPads and Chromebooks becoming more prevalent in an education context, a "gaming PC" might well be the only computer…

Computers were much more expensive back in the days and would be obsolete much faster.

Nowadays for 50€ you can have a decent second hand computer with an older gen core i5 and 8 to 16GB of memory. That is plenty enough to run qubesOS.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#528
post #19

Earlier quoted context omitted.

Can't wait to find out what China hid in Riot's Vanguard rootkit for all their games. It's 100% a conspiracy theory, but nobody can convince me it's perfectly clean, or if it is, that there isn't an easy way to add some power to it quietly.

The vanguard drivers are signed by Microsoft, the procedure for which includes a safety audit by Microsoft. The driver is just what the developers say it is (as with all other anti-cheat). It provides an untempered interface for the userland anti-cheat to use to get info from the kernel. Because modern cheats tend to alter the output of kernel syscalls by running in the kernel themselves. I really don't see why anyon…

Drivers are generally not audited by Microsoft to be signed, you only need to register your EV cert to get it signed. Cheat developers have registered their own/gotten their hands on EV certificates to create a kernel driver cheats. Anti cheat like Battleeye also download anti cheat modules at runtime to obfuscate what they do.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#529
post #132

Earlier quoted context omitted.

The thing is the Kernel does not have that API. The real solution, and not the hack Riot uses, is for Kernel to provide an API for anticheats, like it does for everything useland.

That's not really possible as long as the kernel allows the loading of arbitrary user-provided modules. Because the cheater will certainly run the cheat that requires kernel mode. If it's run in kernel mode, the API call can be intercepted. How does the anticheat then work? Corewars. It's a cat and mouse game between the cheat provider and the game developer. One would need a secure base layer, where also the MS anti…

Windows only loads arbitrary modules if you enable some debug mode no? If not they need to be signed. But not a big hoop for cheat developers, they can get an EV cert to sign their own cheat kernel module or abuse a vulnerable kernel module.

Re: Steam games will need to disclose kernel-level anti-cheat on store pages

#530

First step. Second step? Ban games with kernel-level anti-cheat. It is not acceptable on Linux. Apple will also not accept that shit further, that said Apple lost relevance in gaming with Mantle and the M-Processors (both mean a lot of incompatibility). And Microsoft is regretting every choice in this regard: https://www.theverge.com/2024/9/12/24242947/microsoft-window... But that is a usual pattern. Microsoft makes…

The reason games companies reach for KLA is not because they're dumb and can't be bothered to secure their network protocols on the server side, it's because they don't want to have to hire an inordinate number of human reviewers to make unreliable decisions on whether someone is cheating or not in their game. While KLA is fundamentally flawed (DMA and even CV based cheats are becoming more popular as a result of KLA…

And fundamentally, the anti-cheat software is fighting a loosing game because of some quirks of x86:

- hardware breakpoints on memory latch to logical, not physical addresses - one can map the same area of physical memory to different logical addresses thus allowing arbitrary memory reads - simulating inputs through the PnP stack can be made indetectible with polymorphic code doing the injections - detecting the aimbot's core code can be prevented via at least two methods: triggering (and capturing) page faults on memory hosting the bot or, again, with polymorphic code generation

One could create a fully open source cheat engine relying on memory reads and input injection via the pnp stavk and it would be undetectable deterministically (with heuristics, sure).

Games - unless streamed - need to know a bit more about the world they display than the player is allowed to see. Some engines I analysed (years ago) tried to limit propagating data to the local client to only a portion of the map and close proximity (the more recent battlefield games, if memory serves), while lots still have all enemy coordinates at all times in memory, some even with debug symbols to help the poor aimbot community reverse memory structures that more easily.

Its hopeless. The only winning move is not to play :-)

Post reply on HN