How anti-cheats catch cheaters using memory heuristics(vmcall.blog)
vmcall.blog
How anti-cheats catch cheaters using memory heuristics
https://vmcall.blog/battleye-stack-walking/
11 comments
There are different kinds of cheaters.
Some like the rush of doing something "naughty".
Some want quick results.
Some want prestige.
Some want to explore and exploit the system itself rather than the game.
Some want to gold farm.
Some want to be like gods.
Some want to automate the tedious parts.
Some want to take down big mobs that can't be taken down any other way.
I once wrote about 400k of Blech code for Macroquest to automate the most tedious parts of EQ grinding, and to automate support party members (running on separate accounts) when I couldn't find a group (before the mercenary system), powerlevel new accounts, or needed more precision to one-group multibox raid targets (for example, Overlord Mata Muram). In many ways it brought the game to a whole new level of challenges due to the difficulty of my targets, and the strategies I needed to employ.
It was actually quite cool, consisting of modules for healing, buffing, offtanking, main tanking, positioning, dd, dots, aggro management, clickies, AA abilities, timers... the works. I had a configuration language that assembled the necessary modules to produce the behavior I needed for a particular task.
All of the dev work involved, at my professional rate, would have come out to 5 or 6 figures, so there's that :P
Some like the rush of doing something "naughty".
Some want quick results.
Some want prestige.
Some want to explore and exploit the system itself rather than the game.
Some want to gold farm.
Some want to be like gods.
Some want to automate the tedious parts.
Some want to take down big mobs that can't be taken down any other way.
I once wrote about 400k of Blech code for Macroquest to automate the most tedious parts of EQ grinding, and to automate support party members (running on separate accounts) when I couldn't find a group (before the mercenary system), powerlevel new accounts, or needed more precision to one-group multibox raid targets (for example, Overlord Mata Muram). In many ways it brought the game to a whole new level of challenges due to the difficulty of my targets, and the strategies I needed to employ.
It was actually quite cool, consisting of modules for healing, buffing, offtanking, main tanking, positioning, dd, dots, aggro management, clickies, AA abilities, timers... the works. I had a configuration language that assembled the necessary modules to produce the behavior I needed for a particular task.
All of the dev work involved, at my professional rate, would have come out to 5 or 6 figures, so there's that :P
There's some overlap with your points but I think you missed 2 big ones.
Blatant cheating to troll is one (myg0t "clan" is the first notorious case I remember from back in the day).
Another is "cheating" to fix problems in the game. Some games are really good except for a couple of issues. An example from back in the day is Final Fantasy XI. They programmed it so ALT-TAB would crash the game. They thought this would stop cheaters (Japanese devs don't seem to really get the PC landscape sometimes) but it was just really inconvenient for the rest of us. I hit it by mistake/habit more than once in a tense moment. So a third party hack called Windower was invented to stop this.
Predictably, it was very popular but there were also players saying those who used it were dirty cheats who deserved a ban. Alsod predictably, because it already operated in a grey area, it received a number of QoL updates and features including add-on support and scripting where anyone could easily develop things that clearly crosses the line.
Blatant cheating to troll is one (myg0t "clan" is the first notorious case I remember from back in the day).
Another is "cheating" to fix problems in the game. Some games are really good except for a couple of issues. An example from back in the day is Final Fantasy XI. They programmed it so ALT-TAB would crash the game. They thought this would stop cheaters (Japanese devs don't seem to really get the PC landscape sometimes) but it was just really inconvenient for the rest of us. I hit it by mistake/habit more than once in a tense moment. So a third party hack called Windower was invented to stop this.
Predictably, it was very popular but there were also players saying those who used it were dirty cheats who deserved a ban. Alsod predictably, because it already operated in a grey area, it received a number of QoL updates and features including add-on support and scripting where anyone could easily develop things that clearly crosses the line.
I used Macroquest as well for leveling up tradeskills. I did a few skills manually. Blacksmithing was the worst, and there was no way I would do it manually. I also used ShowEQ for checking whether certain mobs were up in a zone.
Looking back there was a lot of tedium in Everquest. Tradeskills. Attunement. AA points. Traveling was a pain in the first few expansions. I don't deny that I was cheating, but certain types of cheating can reveal flaws in the fundamentals of the game.
Looking back there was a lot of tedium in Everquest. Tradeskills. Attunement. AA points. Traveling was a pain in the first few expansions. I don't deny that I was cheating, but certain types of cheating can reveal flaws in the fundamentals of the game.
>Looking back there was a lot of tedium in Everquest.
The original game designer Brad McQuaid (RIP) defended that tedium, particularly around things like travel, as necessary to give you a feeling of achievement. He was also worried about inflation in the economy. Although I have some warm memories of playing EQ I vehemently disagree with his views on game mechanics. In retrospect I realize I enjoyed his art style more than anything. I plan to give the follow on Pantheon a miss because it too plays to the poopsockers of the world.
The original game designer Brad McQuaid (RIP) defended that tedium, particularly around things like travel, as necessary to give you a feeling of achievement. He was also worried about inflation in the economy. Although I have some warm memories of playing EQ I vehemently disagree with his views on game mechanics. In retrospect I realize I enjoyed his art style more than anything. I plan to give the follow on Pantheon a miss because it too plays to the poopsockers of the world.
Some want to role play but the game didn't provide the sandbox for it.
Some just want to enjoy the story-telling and skip the bs.
There should be a distinction between single player and multiplayer games. I've absolutely used cheat-engine in single player games.
If it was up to me, entering the Konami code would unlock everything in every single player game. Everyone has the right to access content they've purchased in the way and order they see fit.
But when you're playing with other people there's really no excuse.
If it was up to me, entering the Konami code would unlock everything in every single player game. Everyone has the right to access content they've purchased in the way and order they see fit.
But when you're playing with other people there's really no excuse.
I think this shows a fundamental misunderstanding of multiplayer games, to be honest.
Consider games like WoW. Ask anyone what the game is like, and you'll find that the game "doesn't really begin" until you are already max level. That is, the "real" content of the game is all of the Guild-related activities. Everything up to that point is more or less an extended tutorial that lasts for dozens of hours.
Cheating because you want to skip the "tutorial" and quickly get to the point where you can play at the same level as your friends seems like a perfectly reasonable goal. In fact, now a days I believe WoW provides a free (high) level character for all new players, but for a long time, you needed to run through that grind yourself, or pay a microtransaction to skip up.
Consider games like WoW. Ask anyone what the game is like, and you'll find that the game "doesn't really begin" until you are already max level. That is, the "real" content of the game is all of the Guild-related activities. Everything up to that point is more or less an extended tutorial that lasts for dozens of hours.
Cheating because you want to skip the "tutorial" and quickly get to the point where you can play at the same level as your friends seems like a perfectly reasonable goal. In fact, now a days I believe WoW provides a free (high) level character for all new players, but for a long time, you needed to run through that grind yourself, or pay a microtransaction to skip up.
Sigh, you're right, I was thinking of FPS games and the like. Which still have stupid leveling systems, but they're less meaningful.
What I do in fact fundamentally not understand is why games are designed this way†. Good on WoW for apparently letting players skip it nowadays. I admit, I'd have trouble faulting someone who wanted to cheat their way through.
† Outside of games that explicitly want to sell micro-transactions. I understand that all to well.
What I do in fact fundamentally not understand is why games are designed this way†. Good on WoW for apparently letting players skip it nowadays. I admit, I'd have trouble faulting someone who wanted to cheat their way through.
† Outside of games that explicitly want to sell micro-transactions. I understand that all to well.
As an interesting counterpoint, consider the Masterpieces (game trials) included in Super Smash Bros. Brawl. Each of these trials contain the full game, but they are all time limited. Cheat codes can be used to disable these time limits. Is it reasonable to claim that owning Brawl gives you the right to access these games in full as well? The answer, at least to me, is not straightforward.
[deleted]
As someone who likes to cheat at single player video games, the cheating itself is a lot of fun (at least it was until I started doing reverse engineering professionally; now it just feels like work).
My sense of the multiplayer cheating scene (which I never looked at closely) is that most of the cheaters use tools developed by others. So, it seems possible that the people doing the bulk of the work are motivated in part by the technical challenge (including the cat and mouse aspect of it), and the social proof that comes along with sharing their cheats.
Once the cheats are out there, using them has a much lower barrier to entry.
My sense of the multiplayer cheating scene (which I never looked at closely) is that most of the cheaters use tools developed by others. So, it seems possible that the people doing the bulk of the work are motivated in part by the technical challenge (including the cat and mouse aspect of it), and the social proof that comes along with sharing their cheats.
Once the cheats are out there, using them has a much lower barrier to entry.
I would think money plays a big role too. Back when Apex Legends exploded into the scene with the initial user base, selling a hack for 10 a pop would make a lot of money.
I recently met someone who claimed he had a three person company making cheats. Maybe one of them was solely marketing? The memory blurs. They were selling cheats as a subscription service and with different tiers unlocking more cheats. Earned a decent salary doing it.
Is this legal? It's obviously against TOS, but I don't think breaking a TOS is illegal..
You could make a case that making a cheat is copyright infringement as Blizzard did [0] so yes, it can be illegal.
[0] https://torrentfreak.com/blizzard-sues-overwatch-cheat-maker...
[0] https://torrentfreak.com/blizzard-sues-overwatch-cheat-maker...
[deleted]
It seems like blizzard is really stretching and the cases that already went to court they lost.
Is making an overlay a derivative work?
Is making an overlay a derivative work?
I see a weird side of it since I'm a big fan of a hong kong pubg game called hopelessland oUT of hon kong. Great game, huge amount of hackers. I looked into it, and on the android side of things, it looks like their is one major community that opens up apks and gives them away for free. I'm sure their is a business model. But that game, is fun, runs on a low spec device and has a global base. But not as horribly hacked as it was. I would love to know if they even spun up the binary save file in unity or if their are millions of kids with the same laptop I have in 3rd world countries. A 64 core duo with 4 gigs of ram, or if they have my other laptop, which is 32 bit.
There's a monetary incentive as well. If you can reliably produce new cheats that aren't detectable, people will buy them. There's usually an incentive not to share private cheats because once it's public, it will still probably work but will definitely get you banned. Amateurs and professionals both pay for private cheats so besides the technical challenge, there is some money to be made.
You are making mistake by trying to explain somebody elses motives for cheating by using your value system.
First, these are not great lengths when all you need to do is download and install an application.
Second, some people don't get as much kick from playing a game as from dominating other players. They want to win the game in any way possible, but don't consider winning fairly to be any more satisfying than winning with cheating. They might be in denial over their abilities and use cheating to feel better. They don't feel any need to be courteous or fair. These are people who, when they loose a game against you, will say "fuck you" instead of congratulating you.
Don't try to find logic where there isn't any.
First, these are not great lengths when all you need to do is download and install an application.
Second, some people don't get as much kick from playing a game as from dominating other players. They want to win the game in any way possible, but don't consider winning fairly to be any more satisfying than winning with cheating. They might be in denial over their abilities and use cheating to feel better. They don't feel any need to be courteous or fair. These are people who, when they loose a game against you, will say "fuck you" instead of congratulating you.
Don't try to find logic where there isn't any.
I think that's only one subset of cheaters, many people use cheats in non-pvp games or use cheats in a specific server where everyone has the same cheats. It's often just a way to get more replayability out of a game someone really enjoys.
In monster hunter, the speedrunning community is migrating to PC because the ability to use cheats to negate the huge amount of RNG present in the game. Cheating is usually looked down on by speedrunners for obvious reasons but because of the difficulty of speedrunning a game with so much RNG(not rng that effects your gameplay, but that effects your ability to play at all), modders are basically making a new game with the rng removed and people are speedrunning that, and it's widely accepted as necessary by the community.
So cheating is often just a means of either getting something new out of a game or 'fixing' aspects of a game that the community takes issue with.
I agree that players like you describe, who's main goal is griefing other players, also make up a large portion of cheaters, just wanted to further elaborate on your response that not all cheaters are doing it to 'move up the leaderboard'
In monster hunter, the speedrunning community is migrating to PC because the ability to use cheats to negate the huge amount of RNG present in the game. Cheating is usually looked down on by speedrunners for obvious reasons but because of the difficulty of speedrunning a game with so much RNG(not rng that effects your gameplay, but that effects your ability to play at all), modders are basically making a new game with the rng removed and people are speedrunning that, and it's widely accepted as necessary by the community.
So cheating is often just a means of either getting something new out of a game or 'fixing' aspects of a game that the community takes issue with.
I agree that players like you describe, who's main goal is griefing other players, also make up a large portion of cheaters, just wanted to further elaborate on your response that not all cheaters are doing it to 'move up the leaderboard'
> use cheats in a specific server where everyone has the same cheats
I would call this a mod, not a cheat.
I would call this a mod, not a cheat.
I think the topic of the article is cheaters that compete with other players. Anti-cheats are not really necessary for games where the only person being cheated is the cheater.
I also excluded professional players because the original poster was basically trying to get an answer regarding what kind of person would cheat when there was no extra incentive. Obviously, professional players or players in any games that offer valuable prizes have a real incentive to cheat.
I also excluded professional players because the original poster was basically trying to get an answer regarding what kind of person would cheat when there was no extra incentive. Obviously, professional players or players in any games that offer valuable prizes have a real incentive to cheat.
Anti-cheat is still a major issue on multiplayer games that are not PVP-centric, like MMOs. In these cases, the negative externalities of cheating are more like a tragedy of commons than griefing. Cheaters and bots screw up the economy and increase competition for training / farming areas, but generally only in aggregate. Much easier to justify than directly ruining someones experience by killing them instantly every time they spawn.
This extends even as far as Chinese dress-up MMOs like Love Nikki where people will use bots to vote randomly in competitions because there are substantial rewards for mass voting. This means that people are directly injecting randomness into one of the core parts of the game, but the players who do it feel it's justified because it's a pain to get those rewards otherwise.
[deleted]
I did it to learn about computers and security. It's a form of sport too. Feels good to bend the rules and outsmart your opponent. (Opponent as in security controls, not in-game players). You get a rush when your hack works, and using it in a highly interactive environment makes it all the more fun.
From a high level view, you learn:
* Fundamentals of computer security
* Fundamentals of computers, operating systems, and number systems.
* Debugging skills!!! (Can't stress enough)
* Perseverance
* Note taking
From a technical view, you learn:
* Memory Forensics
* Reverse Engineering
* Patching executables (in memory and on disk)
* Anti-Debugging and Anti-Anti debugging tricks
* Packet sniffing and modifying
* Crypto
* 3D Modeling
* Simple algorithms for writing bots
* Memory corruption vulnerabilities
* Programming
That said, I'm HIGHLY against the use of cheats. If you want to show your friends and get a laugh out of it, that's fine! Just don't ruin the gaming experience for others. And don't do anything illegal of course.
From a high level view, you learn:
* Fundamentals of computer security
* Fundamentals of computers, operating systems, and number systems.
* Debugging skills!!! (Can't stress enough)
* Perseverance
* Note taking
From a technical view, you learn:
* Memory Forensics
* Reverse Engineering
* Patching executables (in memory and on disk)
* Anti-Debugging and Anti-Anti debugging tricks
* Packet sniffing and modifying
* Crypto
* 3D Modeling
* Simple algorithms for writing bots
* Memory corruption vulnerabilities
* Programming
That said, I'm HIGHLY against the use of cheats. If you want to show your friends and get a laugh out of it, that's fine! Just don't ruin the gaming experience for others. And don't do anything illegal of course.
In the case of many games (mostly shallow MMOs), it is so much more fun to reverse engineer and break the game than it is to actually play the game.
There are really 2 kinds of cheating in competitive games (counter-strike etc).
The first are cheats like an overt aimbot, which are blatant and where basically everyone gets shot in the head from a mile away whenever the cheater has line-of-sight. These I imagine are only fun for trolling.
The second are cheats that are more subtle, showing you the location of hidden enemies etc. Since these aren't just a "win button", the cheater still gets some satisfaction from winning. After all, they still had to shoot and kill the other players, and they're not guaranteed to win. In their mind they still won, they just had a little help. This kind of cheating is akin to cheating in sports by using steroids. You still have to do a lot of the same work, but it's easier to win.
The first are cheats like an overt aimbot, which are blatant and where basically everyone gets shot in the head from a mile away whenever the cheater has line-of-sight. These I imagine are only fun for trolling.
The second are cheats that are more subtle, showing you the location of hidden enemies etc. Since these aren't just a "win button", the cheater still gets some satisfaction from winning. After all, they still had to shoot and kill the other players, and they're not guaranteed to win. In their mind they still won, they just had a little help. This kind of cheating is akin to cheating in sports by using steroids. You still have to do a lot of the same work, but it's easier to win.
I used to develop multiplayer cheats and bots because I enjoyed overcoming the technical challenge. Reverse engineering software, creating and injecting your own shell code in a game and see it working is extremely satisfying.
It seems very selfish in retrospective and I'm sorry for all the gamer experiences I ruined.
It seems very selfish in retrospective and I'm sorry for all the gamer experiences I ruined.
Or maybe you saved someone from gaming addiction by breaking these games and making it harder to win.
Or the inverse: because someone had to work harder, the experience of finally winning only made the feeling so much better, and released a ton more endorphins.
Or maybe .. neither really contributes or detracts from “gamer addiction”.
Or maybe .. neither really contributes or detracts from “gamer addiction”.
A lot of games are just grinding, and cheating reduces the grinding. Usually it makes them more fun but sometimes it doesn't, in cases where the game is terrible to begin with. After a while cheating is more fun than the game. One could also look at Twitch streamers and ask why the people watching don't just play the game; the answer for a lot of games is that the games are incredibly difficult and the streamer can get through a level in a few hours while it might take the viewer months.
I don't think money enters into it. People just do weird things, like painting miniatures or climbing Mt. Everest, and hacking is another of those hobbies.
I don't think money enters into it. People just do weird things, like painting miniatures or climbing Mt. Everest, and hacking is another of those hobbies.
Playing by the rules favors those who the rules were set up to benefit. Are you poor, "ugly", unlucky, "stupid", uncoordinated? Cheating is your chance to win when our "just" society tells you you must lose. The transgression itself feels right and good.
No one forces, or even pressures, anyone to play multiplayer video games.
Right but if you spend your day resenting the rules you're expected to obey, you might spend your leisure time disobeying rules that have lesser consequences.
> No _one_ forces
This assumes a subject is required for coercion. It might be that multiplayer games are the only way for someone to escape.
This assumes a subject is required for coercion. It might be that multiplayer games are the only way for someone to escape.
You’ll need to make a hell of an argument to make that sound reasonable.
> You’ll need to make a hell of an argument to make that sound reasonable.
I don't think this is really as difficult as you imagine. People in poverty have the decision to work or die. Poverty is a form of objective violence. Therefore, people are coerced by objective violence that doesn't depend on any sort of task master whipping them into action.
I don't think this is really as difficult as you imagine. People in poverty have the decision to work or die. Poverty is a form of objective violence. Therefore, people are coerced by objective violence that doesn't depend on any sort of task master whipping them into action.
It’s the last sentence that is in need of a strong argument. Contemporary society hasn’t morphed in the past 30 years to make the only apparent reasonable escape be multiplayer video games. In fact, there have never been more options than ever for escape. And if they all seem too much and it’s the options that weigh on you, making a habit of going on walks outside has not gone anywhere.
> Contemporary society hasn’t morphed in the past 30 years to make the only apparent reasonable escape be multiplayer video games.
I don't think that video games need to be the only form of escapism for my argument to hold true. It's a form of escapism that people are taking a part in to avoid the whatever boogeymen exist in the day-to-day. So, while individuals could find themselves in different forms of escapism--drugs, cults, &c.--they may still be finding themselves there after not having been coerced by any other person.
I'm responding to specifically you saying "No >one< forces," someone to play video games, but the "video games" isn't the important part. The important part, to me, is you saying that there needs to be some subject coercing another subject.
Why is this an important distinction? The same or similar forces are likely causing the individual to cheat, so there has to be some serious consideration into how culpable the cheater actually is.
I don't think that video games need to be the only form of escapism for my argument to hold true. It's a form of escapism that people are taking a part in to avoid the whatever boogeymen exist in the day-to-day. So, while individuals could find themselves in different forms of escapism--drugs, cults, &c.--they may still be finding themselves there after not having been coerced by any other person.
I'm responding to specifically you saying "No >one< forces," someone to play video games, but the "video games" isn't the important part. The important part, to me, is you saying that there needs to be some subject coercing another subject.
Why is this an important distinction? The same or similar forces are likely causing the individual to cheat, so there has to be some serious consideration into how culpable the cheater actually is.
The more you say it's wrong, the more right it feels.
It’s petty justification for violation of the golden rule. Nothing deeper.
The golden rule doesn't apply, because none of the cheaters would complain that there are also other cheaters cheating.
The golden rule always applies. There are not exceptions in criminal law for people who want specific crimes committed against them (ie sexual assault).
To further argue the point: if all players were cheating then there would be no competitive advantage to cheating, which eliminates the only reason a subset of players cheat in the first place. Even by skewed standards it violates the golden rule.
To further argue the point: if all players were cheating then there would be no competitive advantage to cheating, which eliminates the only reason a subset of players cheat in the first place. Even by skewed standards it violates the golden rule.
Do you know what "the golden rule" says? Literally, "as you would have them do". The cheaters really don't care that other people also cheat. That is, they cheat and they would have others cheat too. That is a totally logical position. You'll need to expectorate some other hoary old maxim to support your cantankerous old argument.
> There are not exceptions in criminal law for people who want specific crimes committed against them (ie sexual assault).
Uh, what?
Uh, what?
[deleted]
I cheated on the original Halo (PC, online capture-the-flag) because I really sucked at it compared to everyone else, which made it unbalanced and therefore not fun to plan (not saying it was right, just filling in the understanding you were asking for).
I didn't look into aiming bots, but I did figure out how to edit the resource files to make the walls transparent so I could camp the flag and see players coming for it long before I was supposed to.
I didn't look into aiming bots, but I did figure out how to edit the resource files to make the walls transparent so I could camp the flag and see players coming for it long before I was supposed to.
With the rise of esports there is a lot of money to be made with no real consequences. It isn't illegal to essentially steal prize money by cheating at a video game.
Also game streaming is big now and being "good" attracts more viewers so there is also a lot of money to be made by cheating.
I have completely stopped taking video games seriously in any capacity as I am pretty confident the entire culture of competitive gaming is completely infested with cheating.
Also game streaming is big now and being "good" attracts more viewers so there is also a lot of money to be made by cheating.
I have completely stopped taking video games seriously in any capacity as I am pretty confident the entire culture of competitive gaming is completely infested with cheating.
I've run into people with this attitude before - they are quick to accuse good players of cheating who seem (to them,) to have inhuman accuracy.
I've been accused of cheating many many times, despite never cheating. I was blacklisted from a community counterstrike server back in 2002 or so for "cheating" after a lucky couple games where I got a LOT of headshots with guns that aren't very good accuracy wise. I was playing with very good players, and even some of them thought I was running cheats.
My experience says people vastly underestimate how far a good lucky streak and adequate reaction time + aim can take someone. Plenty of friends have similar experiences of being accused of cheating when they play well.
It probably doesn't help that the asynchronous client-server model of fast paced FPS games introduces weird effects with respect to latency. (I.e. rewriting history to show some high-latency player killed you after you've already observed visual/audio effects for their own death.)
I've been accused of cheating many many times, despite never cheating. I was blacklisted from a community counterstrike server back in 2002 or so for "cheating" after a lucky couple games where I got a LOT of headshots with guns that aren't very good accuracy wise. I was playing with very good players, and even some of them thought I was running cheats.
My experience says people vastly underestimate how far a good lucky streak and adequate reaction time + aim can take someone. Plenty of friends have similar experiences of being accused of cheating when they play well.
It probably doesn't help that the asynchronous client-server model of fast paced FPS games introduces weird effects with respect to latency. (I.e. rewriting history to show some high-latency player killed you after you've already observed visual/audio effects for their own death.)
DIOL (Do It On LAN) has been an acronym in online games for a couple of decades now, for good reason.
Though I've heard now it's possible to load your USB peripherals with cheating software.
https://hackaday.com/2017/07/29/injecting-code-into-mouse-fi...
Though I've heard now it's possible to load your USB peripherals with cheating software.
https://hackaday.com/2017/07/29/injecting-code-into-mouse-fi...
If there's money on the line, I'm surprised if it really isn't illegal? At a minimum, I would expect that to be easy lawsuit territory.
Are there online e-sports tournaments of any meaningful size? (E.g. $1000+ prizes) The only tournaments I've seen amount to essentially LAN parties where all the equipment and installations are provided by the tournament, such that players all compete on fair terms and unable to cheat (unless the opsec at the tournament is terrible, I guess.)
[deleted]
Any competitive game with big money on the line has the top players gather in the same room (on a stage most likely), and play using computers controlled by the event organizers. The players winning these big tournaments do not cheat.
You aren't thinking outside the box enough. If you could commission cheating software for $10,000+ then there is plenty you could do to circumvent the PCs being provided. It should also be noted that they allow self provided peripherals in most cases.
An interesting idea. Now I'm curious. First, has there ever been an example of someone caught cheating this way?
Second, what kinds of cheats would you expect using peripherals? Any visual cheats would likely be detected, since player's screens are often viewed by referees and/or televised. I suppose an audio based cheat is conceivable. The screen and the audio are the only output from most computer games.
Second, what kinds of cheats would you expect using peripherals? Any visual cheats would likely be detected, since player's screens are often viewed by referees and/or televised. I suppose an audio based cheat is conceivable. The screen and the audio are the only output from most computer games.
https://hackaday.com/2017/07/29/injecting-code-into-mouse-fi...
Aimbots these days look almost indistinguishable from good playing. The point isn't to be perfect. It's to give some kind of competitive edge. If you can take even 15% of the effort away then you can focus on other things.
Aimbots these days look almost indistinguishable from good playing. The point isn't to be perfect. It's to give some kind of competitive edge. If you can take even 15% of the effort away then you can focus on other things.
Young men seem driven to compete for little reward. There's no need to try to intellectualize it.
Any kind of competition can have real rewards at the highest levels. Many people like shooting their friends in paintball on the weekend with rented gear but there is also a professional level where there is real money and sponsorships available. Many male animals will engage in some sort of competition, sometimes with rewards and risks (mates, food, death) and sometimes just for play. It's ridiculous to act like competitive online gaming is any different from puppies rough housing or from lions fighting over leadership of the pride. No one is going to die but gaming could just be something fun to do after being at work all day or it could be what puts food on the table.
After beating Diablo 2 on a few characters I started to always used maphack. It took the guess work out of some of the repetitive actions. I feel like most hardcore, not the mode that is, players used it since it could take minutes off a Cow/Baal/Pindel etc. run. It didn't feel like cheating, although it certainly was, and at a certain point I felt like the game was unplayable without it. My point with all this is, I think there are certain quality of life hacks/addons that make games more playable in a way and then there are the other group of cheats, that remove skill gaps, such as click macros in games where combos are needed, aim/wallhack and others.
People make cheats for money, for online infamy, and for the challenge of it
People use cheats because it makes the game more enjoyable. In FPS, someone can shoot you before you have time to react. In RTS, someone can step out of the darkness with an army that traps yours at just the right moment. Cheats replace those unpleasant experiences with pleasant ones where you ambush the enemy and fight them with an advantage
Unfortunately cheating is a negative sum game. When both players cheat, it doesn't just even the odds once again, it makes the game you're playing significantly less enjoyable
People use cheats because it makes the game more enjoyable. In FPS, someone can shoot you before you have time to react. In RTS, someone can step out of the darkness with an army that traps yours at just the right moment. Cheats replace those unpleasant experiences with pleasant ones where you ambush the enemy and fight them with an advantage
Unfortunately cheating is a negative sum game. When both players cheat, it doesn't just even the odds once again, it makes the game you're playing significantly less enjoyable
"People make cheats for money, for online infamy, and for the challenge of it"
In all seriousness, I think there's a non-trivial aspect to it where human psychology is misfiring in the modern era. Certain people, mostly younger, have a drive to show off to potential mates, some more so than others, and superficially, spending lots of time creating cheats like this looks like it's leading to social approval and standing. You get lots of "thanks" and "kudos". But in reality, you're getting nothing. It doesn't work. People are willing to use the output, but whether rational on some level or not, I don't think you are really getting social credit for it, and even to the extent you are, it's far too widely dispersed to be any good. (That is, it may not exactly be useless to convince a million people to think slightly good of you, but harvesting that for any benefit is really tricky, whereas conclusively convincing someone you are a good person can be beneficial in all sorts of ways and is the basis of any number of relationships.)
In grad school, I worked on an open source LCMS that spent a lot of time fighting people helping other students cheat on their homework. Instead of just solving their homework problem, the cheaters would solve the whole meta-problem (all the variants we might serve) and hand out the meta-solution. This requires a great deal more effort than just solving the individual problem alone. What was funny to me is... I don't think it actually got them anything. Nobody cares. They'll use your solution, but for all that work you get very little real social currency. The majority of your "customer base" is getting it from their friend, who got it from their friend, and the origin of the cheat isn't even known by probably the majority using it. Same sort of thing.
Unfortunately, this is effectively unsolvable. By the time you hypothetically educate one group that this isn't useful, next year's group is already here.
(Also, to be clear, I'm not saying this is all the reason, merely a less-explored one, and a sufficient one on its own to be a source of significant cheating.)
In all seriousness, I think there's a non-trivial aspect to it where human psychology is misfiring in the modern era. Certain people, mostly younger, have a drive to show off to potential mates, some more so than others, and superficially, spending lots of time creating cheats like this looks like it's leading to social approval and standing. You get lots of "thanks" and "kudos". But in reality, you're getting nothing. It doesn't work. People are willing to use the output, but whether rational on some level or not, I don't think you are really getting social credit for it, and even to the extent you are, it's far too widely dispersed to be any good. (That is, it may not exactly be useless to convince a million people to think slightly good of you, but harvesting that for any benefit is really tricky, whereas conclusively convincing someone you are a good person can be beneficial in all sorts of ways and is the basis of any number of relationships.)
In grad school, I worked on an open source LCMS that spent a lot of time fighting people helping other students cheat on their homework. Instead of just solving their homework problem, the cheaters would solve the whole meta-problem (all the variants we might serve) and hand out the meta-solution. This requires a great deal more effort than just solving the individual problem alone. What was funny to me is... I don't think it actually got them anything. Nobody cares. They'll use your solution, but for all that work you get very little real social currency. The majority of your "customer base" is getting it from their friend, who got it from their friend, and the origin of the cheat isn't even known by probably the majority using it. Same sort of thing.
Unfortunately, this is effectively unsolvable. By the time you hypothetically educate one group that this isn't useful, next year's group is already here.
(Also, to be clear, I'm not saying this is all the reason, merely a less-explored one, and a sufficient one on its own to be a source of significant cheating.)
> Certain people, mostly younger, have a drive to show off to potential mates, some more so than others, and superficially, spending lots of time creating cheats like this looks like it's leading to social approval and standing.
I feel like sitting inside at your computer working on cheats isn't the best way to "show off to potential mates".
I feel like sitting inside at your computer working on cheats isn't the best way to "show off to potential mates".
I think it's more about the validation received from other peoples giving the cheat-maker an ego boost, which is real to them regardless of whether the people using their cheats are truly giving them any meaningful credit.
That aside, I'm not sure exactly what you mean by social credit, but in some communities the creators of hacks and cheats(at least the people making fun, constructive cheats - not aimbots and the like) are highly esteemed. They are regarded somewhere alongside competitive players/speedrunners but in a more shadowy background roll(which many people may find cooler/more valuable). They also tend to have universal support among the community rather than being on one team or the other like, for example, tournament players.
This is all true in the communities I've witnessed at least, I don't play many esport type games though.
That aside, I'm not sure exactly what you mean by social credit, but in some communities the creators of hacks and cheats(at least the people making fun, constructive cheats - not aimbots and the like) are highly esteemed. They are regarded somewhere alongside competitive players/speedrunners but in a more shadowy background roll(which many people may find cooler/more valuable). They also tend to have universal support among the community rather than being on one team or the other like, for example, tournament players.
This is all true in the communities I've witnessed at least, I don't play many esport type games though.
I think that you're underestimating what online fame, for being best, can bring to people.
High profile Fortnite/Apex Legends/CS:GO etc gamer could make significant money on streaming, and there were quite a high profile gamers caught using aimbots/wallhacks etc.
High profile Fortnite/Apex Legends/CS:GO etc gamer could make significant money on streaming, and there were quite a high profile gamers caught using aimbots/wallhacks etc.
>reality, you're getting nothing. It doesn't work
Some people do it just to challenge themselves or to learn
Free software wouldnt exist if everybody used your approach.
You sounds as if you tried to say that putting effort into something without $$ as result is bad?
Some people do it just to challenge themselves or to learn
Free software wouldnt exist if everybody used your approach.
You sounds as if you tried to say that putting effort into something without $$ as result is bad?
The fact that I think people are doing something for a given reason does not imply that reason is the only reason that thing is done, that other reasons to do that thing are invalid, or that other things done for the same reason are invalid.
Dollars didn't even come up in my post. I think you read what you were expecting to read rather than what I wrote.
Dollars didn't even come up in my post. I think you read what you were expecting to read rather than what I wrote.
I'm speaking from the point of view of an offline gamer (I never play online).
Some games make you take repetitive actions in order to advance in the game (perhaps to lengthen the life of the game, otherwise you'd finish it too soon). An example of this is repeating the same races over and over in order to win more cash so you can advance. This gets boring pretty quickly, so I cheat by adding me more cash without having to race the same event infinitely many times.
Online play could have more incentives (prizes) for people higher on the leaderboard.
I got into coding by writing hacks, cheats, and bots. It's one of the few ways to directly translate code into something that feels like a super power.
Sometimes "cheating" is just fixing broken things the devs make really dumb decisions about. In RA2, online matchmaking required you to use the smallest resolution possible, which is dumb when you just beat the full game at a normal resolution. In DotA2, you can't zoom out. I just played LoL instead of "cheating" though (a.k.a. making the game playable). In Dawn of War I used a zoom out mod once but honestly the game already let you zoom out reasonably enough anyways. But these weren't for getting an unfair advantage, this was for solving claustrophobia and not-having-the-camera-right-in-the-dirt.
Sometimes the game's just too boring and making a bot for it is actually much more fun. I had this experience with some mobile games and their little daily tasks. I realized they were trying to instill a daily login habit in me so I wrote a small client that'd log in and do the tasks. I turned their predatory design into a fun little project. Ironically, due to the way the game was designed the behavior of the bot is indistinguishable from that of a sufficiently addicted player.
I feel like there's an important message somewhere in this post
Two.
1. Hacking the game can be more interesting than playing the game.
2. There's absolutely nothing wrong with hacking games with immoral game design.
1. Hacking the game can be more interesting than playing the game.
2. There's absolutely nothing wrong with hacking games with immoral game design.
Sense of social status, cheating artificially increases your rank. No one knows your cheating, so you get all the respect.
Leaderboards are dopamine clickbait for trying to improve.
Why do billionaires want to richer?
Leaderboards are dopamine clickbait for trying to improve.
Why do billionaires want to richer?
I've done it in some MMOs so they can shove their grindfest casinos up their asses.
I don't know how it got so bad, MMOs used to be focused on group content, socialization, meaningful progression. Nowadays it's solo grinding bs with constant reminders to "buy this shit, it helps you/makes you look fab". Just sad money squeezing activities that waste your time.
I don't know how it got so bad, MMOs used to be focused on group content, socialization, meaningful progression. Nowadays it's solo grinding bs with constant reminders to "buy this shit, it helps you/makes you look fab". Just sad money squeezing activities that waste your time.
As someone that's written a game "cheating" tool there's good technical / reverse engineering value from modding or cheating games. Plus it's fun to just be able to change a game (I fondly remember the days playing with Game Genie).
It is indeed a bit immoral when one tries to cheat in a way that unfairly puts themselves ahead of other humans.
It is indeed a bit immoral when one tries to cheat in a way that unfairly puts themselves ahead of other humans.
> Why would a person go to such great lengths
Probably because adversarial coding is fun, and cheating at videogames is one of the best free ways to really get going doing that against a party that is really invested in stopping you. There's other options, but those are much more likely to lead to arrests.
Probably because adversarial coding is fun, and cheating at videogames is one of the best free ways to really get going doing that against a party that is really invested in stopping you. There's other options, but those are much more likely to lead to arrests.
Cheating for gamers is like hacking for programmers, except you get points and there's a leaderboard.
There is also the market for selling digital goods. People wanting to make real money outside of the game will automate farming gold, items, sell an account with a great character or one that unlocked a lot of perks from wins
> Why would a person go to such great lengths to cheat at a video game?
1. Technical challenge
2. Trolling "try hards"
3. Dopamine from winning
I'm sure there's a bunch of other reasons, but cheating is still like a game, just expanding the rules.
1. Technical challenge
2. Trolling "try hards"
3. Dopamine from winning
I'm sure there's a bunch of other reasons, but cheating is still like a game, just expanding the rules.
>is there monetary incentive?
esports? not sure how common it is these days to have someone cheating in a competition but I can tell you it happened quite a lot of times in the past, especially with FPS games.
esports? not sure how common it is these days to have someone cheating in a competition but I can tell you it happened quite a lot of times in the past, especially with FPS games.
Yes, especially in multiplayer focused games, if there's a way to cheat there will be cheaters.
Also people who profit from the situations and sell cheating tools to other players.
On top the reasons mentioned in the sibling comments, there is also a huge market for in game currencies, which bots make is infinitely easier to farm those currencies.
there's decent money on it.
also skills, resume?
also skills, resume?
Griefers.
How long until you can point another computer at your game pc or console, to play for you?
That’s game over for anti-cheat IMO.
That’s game over for anti-cheat IMO.
For informational cheats I think we already have proxies that we can tunnel the packets through and get all the details up on a second screen (if you really want to keep your game PC pristine).
For many games packet inspection and injection work just fine to automate actions and provide access to hidden information.
For many games packet inspection and injection work just fine to automate actions and provide access to hidden information.
You can already do that. Rooted phone with auto tapping/actions connected as a normal keyboard/mouse. Nothing to be detected on the host, works for dumb grinding which is prevalent in many ~~virtual casinos~~ games
Or you just write your own game client like china has been doing for WoW for ages.
It doesn't sound so good
Client v1 sends packet A for command Attack
So does China Client v1
Developer updates client to v2 and now packet A is non-existent, so no legit user is going to send it
so after patch everyone who sends packet A can be banned
Client v1 sends packet A for command Attack
So does China Client v1
Developer updates client to v2 and now packet A is non-existent, so no legit user is going to send it
so after patch everyone who sends packet A can be banned
This is currently already the case for cheats. When the game updates then the cheat needs to be updated as well. And you can definitely catch cheaters with the method you mentioned, so many cheats check the game version before doing anything.
This means immediately after an update many cheats stop working until they’re updated (or their creator flags the new game version as compatiable)
This means immediately after an update many cheats stop working until they’re updated (or their creator flags the new game version as compatiable)
I wonder how much success there's been in hiding the version information from visibility by any software... Obviously the cheat developer could just hash the game files directly and halt if there's a discrepancy between the known-vulnerable versions, but it'd be interesting to see whether that was tried with any highly-cheated-in games.
What I don't understand is why the cheats can't just prevent the shellcode from running, or preempting the exception handler from being called by installing their own. Is spoofing the return of NtQueryVirtualMemory not possible, either?
There's an emulator: https://github.com/vmcall/battleye_emulation/blob/master/bat...
Apparently it sends 2 packets over the pipe and disables the anti-cheat completely. That's been patched but presumably it wouldn't be too hard to expand the emulator to handle the patch.
Apparently it sends 2 packets over the pipe and disables the anti-cheat completely. That's been patched but presumably it wouldn't be too hard to expand the emulator to handle the patch.
[deleted]
If the shellcode doesn't run, then it can't respond to the server's challenge-response query.
And the server knows the user is cheating.
And the server knows the user is cheating.
I didn't see a challenge-response in the code presented. If there is one then I guess that would help in this scenario.
It doesn’t really even have to be a real challenge-response since the server controls the shellcode. Just have the shellcode unconditionally submit something (maybe a value that requires a minimum amount of computation or WinAPI sanity checks). If you don’t run that bit of code, down comes the ban hammer.
Speaking in terms of fps games I believe it to be very easy for any human to detect aimbots when reviewing gameplay footage. Wallhacks are a bit trickier to detect, and probably requires longer reviews, but I'd estimate that above average players could quite accurately detect this hack as well. This leads me to believe this should be quite a good fit for machine learning, no? It just seems like a problem that lives in that space of "It's hard to define but I sure can tell when I see it" - which ML seems to excel in?
Steam has done this.
http://www.kitguru.net/gaming/matthew-wilson/valve-to-use-ma...
By installing spyware.
I wouldn't call this spyware; it doesn't seem to reach outside of its own process (though I guess it does report back what you could call analytics).
BattlEye apparently comes with a kernel component called BEDaisy which preemptively tries to block attempts to patch Windows API functions. That has some people calling it a root kit or spyware.
Many long running undetected game hacks use kernel hooks. If the hack runs before the anti cheat or with higher privileges then the anti cheat is just a resource hog.
Having a game that fumbles with kernel internals is insane. That should simply be not possible privilege wise.
I'm sure some of it does extend beyond the relevant processes.
Back in 2005/2006 Sony where installing rootkits on PCs: https://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootk... - this is why to this day I try make sure very little with "Sony" printed upon it touches my network. IIRC the best we got by way of an apology was "we are sorry Sony BMG embarrassed the group by getting caught" and "we promise not to do exactly the same thing again in the near future" (weasel words that meant they could do other equally crappy things immediately and as now is not the near future from then that could do the same thing now without breaking their word).
That was to try to protect content in audio CD tracks by breaking things that might allow copying, I'm sure similar methods can be (and probably have been) used to try block game cheats too.
Back in 2005/2006 Sony where installing rootkits on PCs: https://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootk... - this is why to this day I try make sure very little with "Sony" printed upon it touches my network. IIRC the best we got by way of an apology was "we are sorry Sony BMG embarrassed the group by getting caught" and "we promise not to do exactly the same thing again in the near future" (weasel words that meant they could do other equally crappy things immediately and as now is not the near future from then that could do the same thing now without breaking their word).
That was to try to protect content in audio CD tracks by breaking things that might allow copying, I'm sure similar methods can be (and probably have been) used to try block game cheats too.
Oh sure, in general these kinds of things tend to be bordering on malware. But this specifically doesn't seem to be too horrible.
well this sent me down a rabbit hole that is utterly fascinating.
with regards to cheating, I understand the need to present a fair playing experience to all customers but as with anything else, people are the one variable we have the least control over and with the numbers games as with any service have to deal with you are guaranteed to get bad actors.
the simple avoidance to those who see this is spyware/etc is not you play. I do not see this choice as a bad one. for some it is abhorrent but for others playing where cheaters have free reign is just as abhorrent. so unless you can fix people you choose what you are willing to accept
with regards to cheating, I understand the need to present a fair playing experience to all customers but as with anything else, people are the one variable we have the least control over and with the numbers games as with any service have to deal with you are guaranteed to get bad actors.
the simple avoidance to those who see this is spyware/etc is not you play. I do not see this choice as a bad one. for some it is abhorrent but for others playing where cheaters have free reign is just as abhorrent. so unless you can fix people you choose what you are willing to accept
> the simple avoidance to those who see this is spyware/etc is not you play. I do not see this choice as a bad one. for some it is abhorrent but for others playing where cheaters have free reign is just as abhorrent.
Problem is, it's all-or-nothing. I'd be better if games could be sandboxed, so that its cheat-prevention spyware doesn't leak to the rest of the system. But I suppose the practical answer to that would be, "buy a console".
Problem is, it's all-or-nothing. I'd be better if games could be sandboxed, so that its cheat-prevention spyware doesn't leak to the rest of the system. But I suppose the practical answer to that would be, "buy a console".
How hard would it be to just copy and modify the packets being sent to the anti-cheat servers? Are they sent directly to the anti-cheat server or do they go back to the game server first and then get forwarded from there?
That's the first thing hackers try. The packets are almost certainly encrypted and checksum'ed in a way where tampering is immediately obvious. You end up at the same place - having to modify/hook into the game internals to bypass the anti-cheat.
> and we refer to it as shellcode8kb
Who is "we" in this context? Is there a community of anti-cheat reverse engineers out there?
Who is "we" in this context? Is there a community of anti-cheat reverse engineers out there?
So those games put infrastructure in place for the server to execute arbitrary code on my machine?
No, thanks.
No, thanks.
You bought a game from them... you are already letting them run arbitrary code on your machine.
The original game code, as well as automatically installed updates can be vetted and compared to other installations. Any malware injected into either of them risks being exposed over time.
This allows the server to execute arbitrary, ephemeral code fragments on any client at any time, with no trace. If the server is ever compromised, so are all clients, instantly.
This is absolutely insane from a security POV. Just because I gave you a program once that you're using doesn't mean that you want to give me an SSH login to your machine.
This allows the server to execute arbitrary, ephemeral code fragments on any client at any time, with no trace. If the server is ever compromised, so are all clients, instantly.
This is absolutely insane from a security POV. Just because I gave you a program once that you're using doesn't mean that you want to give me an SSH login to your machine.
What is to stop them from sending an update only to you? Followed by an update that deletes that code? Or an update that allows them to run arbitrary code sent from a server?
I think you overestimate the ability for this to be detected. These aren't open source.
I think you overestimate the ability for this to be detected. These aren't open source.
Some games -- recently Overwatch -- send hotfixes as live hotpatches. Those couldn't be scrutinized by anyone except the developer until they're included in the next formal patch.
You say that like people aren't capable of converting the current memory space back into an executable.
Which also applies to the code the anti-cheat stuff is having you run. The point is they have a mechanism to download and run code without you explicitly validating the code.
That is happening with or without this anti-cheat stuff, so what is the difference?
That is happening with or without this anti-cheat stuff, so what is the difference?
Of course you can dump the current executable from memory (with varying effort depending on anti-tamper tech), but the point is that you can't examine them ahead of time. They're pulled & applied right before a match starts and the relevant code is used immediately.
Well sure, but the whole game itself is already executing whatever arbitrary code it wants.
The game is on disk, doesn't execute until I choose to, and only executes the code that is there, on disk, for me to see. Unless it has a front door like this built in, of course.
I get what you're driving at, but unfortunately with auto-updating game platform delivery systems like Steam, this is sort of the way the world works. I'm sure there are dozens of MMOs with the same arbitrary code execution.
Hell, if you're using any browser extensions in firefox/chrome, you're effectively open to the same vulnerabilities. (which did in fact happen, somebody's Chrome dev account was hacked and malicious code was injected into the extension which affected all end users).
Hell, if you're using any browser extensions in firefox/chrome, you're effectively open to the same vulnerabilities. (which did in fact happen, somebody's Chrome dev account was hacked and malicious code was injected into the extension which affected all end users).
The vast majority of gamers are running Windows, if you're running Windows you don't even own your OS. I think a game running some code on your machine is pretty low on the list of things you should worry about.
Except that an MMO with millions of players could become a good weapon in the case of a cyber-warfare. This has been done before with AVs.
I write bots for older MMOs so I can do group content to make a game playable when you can't get a group big enough to do the content you need. Sometimes taking a break from a game you want to do old content that needs a party and no one is interested or you can't play at consistent times to be able to get static groups.
Heavy duty sandboxing of game software can't come quickly enough. Game software reading arbitrary memory outside of its own on a machine is half step from outright malware and must stop.
That's not how computers work. If you own the OS, you can do whatever you want and the game software is subject to the whims of your universe. The closest you can come is with "consoles" where you just attempt to prevent everyone from running code other than yours.
Sandboxing prevents code from getting out of a sandbox.
It doesn't prevent outside code (i.e. your cheat software) getting in.
As long as you control the computer running the sandbox, you can have it do whatever you want.
It doesn't prevent outside code (i.e. your cheat software) getting in.
As long as you control the computer running the sandbox, you can have it do whatever you want.
Yeah, but I think his issue is with the anti-cheat software. If the anti-cheat is sandboxed, it can't see any other memory or processes that are running. It's a fair privacy concern.
This is what I mean - putting the game and all it's "anticheat" malware into a sandbox, so it has not chance to interact with the rest of the system for privacy and security reasons.
Why would a person go to such great lengths to cheat at a video game? Is there a monetary incentive? Otherwise, it seems like a lot of effort just to increase one's standing on a leader board.