Hacker News new | ask | show | jobs
by pilgrimfff 1420 days ago
No matter how low-level they get in the OS, this is ultimately a losing battle.

Aimbots have gone analog (src: https://hackaday.com/2022/04/30/aimbot-does-it-in-hardware/)

What can they do next? Demand webcam access with your mouse visible, I guess?

4 comments

The difference in effort, for a cheater, between installing a cheat as a user process and a kernel driver is about one button click.

I can decide to cheat, stick my CC info into a website and download a program in less than 5 minutes. To get hardware I need to provide my shipping info and wait a couple of days. If the hardware is banned, I need to wait a few days before my replacement hardware is there, or with software I just update and restart.

It's not an all or nothing thing, it's a game of cat and mouse. The aim isn't to completely stamp out cheaters at any cost, it's to raise the bar sufficiently high to make it so that enough games aren't destroyed by cheaters.

> If the hardware is banned, I need to wait a few days before my replacement hardware is there, or with software I just update and restart.

Except perhaps the first few iterations, the hardware won’t be banned. You’ll just have to load a software update for your DMA hardware.

Great, so for the first few iterations hardware bans are effevtive!
Those first few iterations are already happening.
How could the cheating hardware be banned? it is general-purpose, there is no change in the programming of the host computer that couldn't be combated by reprogramming the cheating device.

Security-by-obscurity is a game of cat-and-mouse where the cat is blind and the mouse is invulnerable.

The hardware isn't banned, the player is banned if the anticheat detects the hardware being used. The hardware might be reprogrammable and self modifying at some point in the future, but until it is and it's widely available a root level anticheat is adequate protection.
The player is not banned. The player's account is banned. It is a free game- they can make as many accounts as they like.

The hardware will become widely available once kernel-level anticheat becomes widely used.

>if the anticheat detects the hardware being used.

The only thing the anticheat will be able to detect is ordinary hardware. My cheating device will capture input from HDMI or PCI, the software sees it as a graphics card or a display. My cheating device lets me inspect memory directly, the motherboard just sees a normal stick of RAM. My cheating device lets me bhop and aimbot- the OS just sees an ordinary USB keyboard and mouse

Regarding the hardware detection - there's always way to up the game and make the system totally airgapped.

It is not impossible to have mechanical actuators pressing keys and moving a mouse, and a webcam watching a real monitor. While that's an awful lot of work compared to just reading data off a bus and simulating a HUD device, consider that some decades ago (when the fight was entirely about API hooking and ReadProcessMemory) DMA snooping was considered merely an unrealistic, theoretical possibility.

> The player is not banned. The player's account is banned. It is a free game- they can make as many accounts as they like.

You're right and my wording was sloppy. Often account bans come with "hardware" bans which are an attempt at stopping this from happening but like any other form of anticheat they're not 100% effective (and nor do they need to be to be worth having).

> The hardware will become widely available once kernel-level anticheat becomes widely used.

Sure, and then the barrier for entry has been raised to buying the correct hardware, having it and keeping it up to date.

> The only thing the anticheat will be able to detect is ordinary hardware.

That's a very bold claim. There's no reason to assume that the hardware will match exactly - I expect that as the cheaters pick devices to spoof the cheat detectors will look for (and find) discrepancies.

Games have been using fake memory addresses to catch cheats for decades, there’s no reason to assume games won’t try and find memory inspectors by having multiple stores of value and catching the one being processed or modified.
> The hardware isn't banned, the player is banned if the anticheat detects the hardware being used.

how? it can report itself as any pci device

The cheat software can report itself as any software, so that is the secret sauce. Can't say I'm privy to how exactly that is. The difference between "reports itself as X" and "reports itself as Y" are the same problem space.
the software actually has to interface with the operating system, which is how it's detected

the PCI card doesn't

it can be a regular perfectly functioning NIC with a different ROM chip

That's why I have to qualify it with ultimately

Right now, the analog option is out of reach except to those with the right skills. But the hardware isn't that expensive even now, and will only get cheaper. All it takes is someone to commodify it.

> Right now, the analog option is out of reach except to those with the right skills.

What skills? Buying something online, then plugging it in once it shows up on your doorstep?

I don't think there are any commercial-grade hardware gaming aids on the market right now. If we don't count gaming keyboards and mouses with macro functionality (some folks consider those "cheats")

All the devices I've seen were hobbyist DIY proof-of-concept hardware. And if we're talking about real hardware assist (a machine that sees a screen and helps human operator with their inputs), it needs a machine vision trained for a specific game/setup and that's also quite an effort.

If there are out-of-the-box options now, then yeah, it could be as you describe.

If you're assuming everyone knows how to wire up motors to a microcontroller and get the software set up and calibrated, that's not accurate. If you want to minimize that to a term besides "skills," that's your prerogative.

One dream is that I'll live long enough to see humans actually getting cybernetic enhancements and how much of a fuss that's gonna make on the gaming industry.

In the same tune, I genuinely do want to see what Olympic Games could become if anything they consider "cheating" would be allowed - I honestly want to see what humans are actually capable of (though, of course, I won't be happy if people would ruin themselves over merely a silly goal of "winning"). I believe that - unlike most arms races in history (except the Space Race, I guess) - this kind of stuff is going to be actually beneficial for humanity.

I'm not a smart guy, and probably there are some issues that I entirely miss (or maybe even not register as they don't match my beliefs), but that's a honest opinion. And yeah, I'm a sucker for science fiction.

No, but the higher the moat the less cheaters you have. No anti-cheat is perfect or even blocks all cheaters, hell even console has aimbots thanks to console modding. It’s about reducing the amount, making it harder and preemptively banning people who go at it wrong, i.e.: using a known cheat.

Better to have few cheaters than a million of them running baby’s-first-Python-script that just sends plain old WM_MOUSE.

I could see a webcam pointed at your hand/keyboard to verify input being something legit players would happily opt into.
This is already the standard for speedruns and high-score records for certain games. Partly just because it makes the recording more interesting to watch, but increasingly it's for evidence of not-cheating.
Okay, but you couldn't just have a linux computer procedurally generating that video, then exposing itself to the host computer as a webcam over usb gadget driver?

Not to mention that you would have to comb through all this footage to detect cheaters... It is honestly a laughable solution.

Yes, but writing a program to synthetically generate correct images will take a while to come out in which players can play without cheaters ruining games.
Creating a system to automatically verify correct videos will take a while to come out, not to mention that it is extremely invasive for the end user and requires that they own all this extra equipment and bandwidth.

The cheater does not even really need to generate fake video like I've described. Aimbots can be as subtle as the cheater wants them to be, offering <5% precision adjustments which won't be visible on a webcam. Not to mention that half of cheating is just information assistance like wallhacks which this doesn't even cover.

What do you think is a better way to validate the input is legitimate?
The point is that the cheating problem is unsolvable at scale against sufficiently motivated attackers.

It would be possible to solve if the incentives are not that strong to cheat, but the status game associated with multiplayer games takes care of the "sufficiently motivated part".

It would be possible to solve at a small scale (e.g. at a tournament) by manually vetting hardware and manually reviewing footage.

But preventing cheating at scale against motivated attackers is so expensive as to be uneconomical. The devs will probably try to install whatever malware they can get away with in order to demonstrate to their shareholders that they care about it, but I'm guessing even the devs will be relieved when Microsoft just blocks their kernel-level malware because they know the risks it entails.

So many problems with this idea..

Can you imagine your child saying “Mom / Dad I need to buy a webcam to play this game”. Alarm bells will be going off immediately.

Financially speaking, every player needs to buy a webcam to play even a free to play game ?

Do you need a camera of a specific quality ? What if the light in your room is off and the object detection can’t work out where your hand is ?

Do you get kicked from the game because the sun went down and you didn’t turn on the light ?

Can’t imagine the compute resources required to pull this off. The skins in the game will probably have to cost 10x more.

This is just what comes to mind after thinking about this for 2 mins.

I imagine it would start with competitive leagues first and then slowly expand into mainstream if the technology proved itself.
Can’t imagine a significant number of users ever accepting this solution, there’s too much hassle involved.

Users who are not attempting world record attempts or playing tournaments where money or fame is on the line.. in other words.. 99.99% of the user base will have no incentive to bother with webcam hand recording anti-cheat systems.

They will just move onto another less bothersome game that doesn’t require it, and that game will eat the webcam-required always recording game's market share.

There will always be servers for the players that don’t care about hackers to play on.

For the ones that are sick of having their games ruined by hackers they’ll angle their webcam down at their hands (or use the app on their smartphone) and join the server that supports it.