• Preventing external cheats.
    57 replies, posted
As far as I know external cheats are undetected by any Anti Cheat software for the GMOD Servers like Cake, now my question is how do we as developers prevent External cheats from working. Most external cheats are only ESP so is there any way we can confuse the ESP's to give false detections or prevent detection all together?
[code]hook.Add("CheckPassword", "ban hackers", function() return false, "Get off my server you dirty hacker!" end)[/code] Kicks 100% of cheaters guaranteed.
[QUOTE=txike;52834368][code]hook.Add("CheckPassword", "ban hackers", function() return false, "Get off my server you dirty hacker!" end)[/code] Kicks 100% of cheaters guaranteed.[/QUOTE] lol but im being serious, these external cheats are a huge problem I see about 5 people with them every week.
[QUOTE=ActuallyFBI;52834383]lol but im being serious, these external cheats are a huge problem I see about 5 people with them every week.[/QUOTE] IP ban them and move on? unless you want to install a thousand different AC's or write one yourself your best bet is to just catch them cheating and ban their IP so they can't easily keep joining with different steam accounts. In it's current state Garry's Mod will always be a safe haven for cheaters seeing as VAC is effectively worthless and the painful, tedious way of catching cheaters is your only option.
"There are medicines, but people stills dies by other diseases, how can I heal all diseases" If theres no already an AC that covers those cheats, why would you ask us how to caught those
[QUOTE=gonzalolog;52834403]"There are medicines, but people stills dies by other diseases, how can I heal all diseases" If theres no already an AC that covers those cheats, why would you ask us how to caught those[/QUOTE] Im simply asking for ideas of how it would be done, theoretical or not.
[QUOTE=ActuallyFBI;52834383]lol but im being serious, these external cheats are a huge problem I see about 5 people with them every week.[/QUOTE] wow 5 whole cheaters a week? Sounds like a huge problem. Anyway there's nothing you can do about them. There's not really a proper way to detect C++ cheats from Lua, if there even is one to begin with. Chances are your cheaters are using something like bigpackets or friendlyhack, both of which are C++.
[QUOTE=txike;52834412]wow 5 whole cheaters a week? Sounds like a huge problem. Anyway there's nothing you can do about them. There's not really a proper way to detect C++ cheats from Lua, if there even is one to begin with. Chances are your cheaters are using something like bigpackets or friendlyhack, both of which are C++.[/QUOTE] The reason 5 is a big number is becasue we have Cake installed as well as our own custom stuff that helps detect unauthorized Console commands, and we spent alot of work on that only to keep getting cheaters because GMOD uses a 10 year old version of VAC if it even still uses vac anymore im unsure about that.
[QUOTE=ActuallyFBI;52834447]The reason 5 is a big number is becasue we have Cake installed as well as our own custom stuff that helps detect unauthorized Console commands, and we spent alot of work on that only to keep getting cheaters because GMOD uses a 10 year old version of VAC if it even still uses vac anymore im unsure about that.[/QUOTE] If you have !CAC then you don't need your own stuff to detect console commands considering !CAC does that (probably) a lot better than what you use.
[QUOTE=*Braindawg*;52834400]IP ban them and move on? unless you want to install a thousand different AC's or write one yourself your best bet is to just catch them cheating and ban their IP so they can't easily keep joining with different steam accounts. In it's current state Garry's Mod will always be a safe haven for cheaters seeing as VAC is effectively worthless and the painful, tedious way of catching cheaters is your only option.[/QUOTE] The issue is no AC can detect External Cheats yet, we should change that. We have a community of developers right here why not use that to our advantage.
[QUOTE=ActuallyFBI;52834490]The issue is no AC can detect External Cheats yet, we should change that. We have a community of developers right here why not use that to our advantage.[/QUOTE] I already explained that we can't do anything about it. The best thing that could happen is if VAC miraculously got updated to detect some of the more popular C++ cheats.
[QUOTE=txike;52834505]I already explained that we can't do anything about it. The best thing that could happen is if VAC miraculously got updated to detect some of the more popular C++ cheats.[/QUOTE] A server named SeriousTTT did it and they wont share.
The only anticheat that would probably detect external cheats would be LAC, or CAC If you don't know what you are doing then you will probably want to hire someone to detect the cheat you are worried about. Don't hire random people who say they know lua though, hire someone who has proven themselves in the community that they know what they are doing when it comes to cheating and anticheats.
[QUOTE=MeepDarknessM;52834948]The only anticheat that would probably detect external cheats would be LAC, or CAC If you don't know what you are doing then you will probably want to hire someone to detect the cheat you are worried about. Don't hire random people who say they know lua though, hire someone who has proven themselves in the community that they know what they are doing when it comes to cheating and anticheats.[/QUOTE] Cac cannot detect any External cheat
[QUOTE=ActuallyFBI;52835198]Cac cannot detect any External cheat[/QUOTE] Actually, it can. I'v written multiple external cheats and cac can still detect some things in them.
[QUOTE=0V3RR1D3;52835199]Actually, it can. I'v written multiple external cheats and cac can still detect some thing in external cheats.[/QUOTE] Reverse engineering CAC right now. Thnx i had no idea.
[QUOTE=ActuallyFBI;52834593]A server named SeriousTTT did it and they wont share.[/QUOTE] Lmao I've cheated on there with just a cvar forcer before. You can't detect external cheats, end of conversation. If you're that concerned about it just get better admins. [editline]30th October 2017[/editline] Cac can detect when some external programs load Lua but that's it.
Yeah, end of the line is that if cheaters want to cheat then they will. Stuff is getting hard to detect, like the aimhack that every bullet you shoot slowly gets your crosshair closer to the head, so it realistically looks like you have god like aim, there's no way to detect if it's coming from a program or a human, unless the guy doesn't event touch the mouse and let's the program do it all there's no way to know with the mixed in human interaction with aim assist. I hope your staff doesn't end up banning a good player that isn't using hacks because of it.
[QUOTE=ActuallyFBI;52835198]A server named SeriousTTT did it and they wont share.[/QUOTE] Last time I played on there they were using a renamed QAC so I doubt they can detect C++ cheats. [QUOTE=ActuallyFBI;52835198]Cac cannot detect any External cheat[/QUOTE] !CAC can actually detect shitty C++ cheats that hook createmove wrong.
Any kind of cheat that loads lua into the real client state will be detectable by some means. All of the bigger cheats load in their hack into an emulated client state basically which you cannot touch through lua, even though it is all lua. Can't do much about that unless you're writing your own binary module which you would have to get players to install. It's really not worth it too. Focus on making you server secure instead of protecting it from people with ESP. If you fix holes in your server like exploitable net messages then the WORST thing cheaters can do is aimbot and use ESP. It's not like there are hacks out there that give people full access to your server (unless you have unsecured stuff). If you're really on the edge about external cheats, think of a really crazy way to screen grab without making the cheat recognize it as a screengrab so you can check whats on their screen. That requires a lot of work and manual banning though.
Just see if the client uses SetEyeAngles and what not to see if they're cheating and report back based on that. [editline]31st October 2017[/editline] This is an example of what I do, there is more you can do to catch out other methods this is just one
[QUOTE=meharryp;52836200]Lmao I've cheated on there with just a cvar forcer before. You can't detect external cheats, end of conversation. If you're that concerned about it just get better admins. [editline]30th October 2017[/editline] Cac can detect when some external programs load Lua but that's it.[/QUOTE] No, it can detect other things than lua. [QUOTE=txike;52836790]Last time I played on there they were using a renamed QAC so I doubt they can detect C++ cheats. !CAC can actually detect shitty C++ cheats that hook createmove wrong.[/QUOTE] External cheats don't hook CreateMove. [QUOTE=MarZ333;52838876]Just see if the client uses SetEyeAngles and what not to see if they're cheating and report back based on that. [editline]31st October 2017[/editline] This is an example of what I do, there is more you can do to catch out other methods this is just one[/QUOTE] This is honestly the worst suggestion I've heard. The only real way to detect all external cheats is if VAC was tuned in Garry's Mod to detect specific ones. You aren't going to detect nearly anything external with just lua.
Could create some sort of glitches player entity outside the map so none can see it. But esp will and if it had no name and you could get the name func to error, then you could capture that error when it hits server side console. But creating a player ent without crashing the server I would not know how to do.
[QUOTE=MeepDarknessM;52839037]External cheats don't hook CreateMove.[/QUOTE] By the way OP is speaking I don't really think he knows the difference between external and internal cheats so I was just assuming he meant non-Lua cheats.
[QUOTE=txike;52840137]By the way OP is speaking I don't really think he knows the difference between external and internal cheats so I was just assuming he meant non-Lua cheats.[/QUOTE] Non-lua cheats don't hook into lua events, they tend to detour engine functions.
This might sound incredibly stupid and I know it wouldn't work since Awesomium doesn't allow/support java to be run. But if it did, I am pretty sure you could implement it into the Loading screen of the server to see for any tasks running like citizenhack.exe? Just an idea I had.
[QUOTE=wepnet;52840275]This might sound incredibly stupid and I know it wouldn't work since Awesomium doesn't allow/support java to be run. But if it did, I am pretty sure you could implement it into the Loading screen of the server to see for any tasks running like citizenhack.exe? Just an idea I had.[/QUOTE] You're on the right track. Just find a vulnerability that lets you execute arbitrary code and load your anti-cheat with it.
[QUOTE=txike;52840137]By the way OP is speaking I don't really think he knows the difference between external and internal cheats so I was just assuming he meant non-Lua cheats.[/QUOTE] I know the differnce i am talking about Non Lua cheats aka External, Internal cheats cannot be non lua unless injected i am purely talking External application cheats created in C++ the only thing most of these cheats can do is ESP tho. [editline]31st October 2017[/editline] [QUOTE=wepnet;52840275]This might sound incredibly stupid and I know it wouldn't work since Awesomium doesn't allow/support java to be run. But if it did, I am pretty sure you could implement it into the Loading screen of the server to see for any tasks running like citizenhack.exe? Just an idea I had.[/QUOTE] So, i dont know how exactly the loading screen works but if the user connects to the webserver I could probably do that in PHP or Javascript to check what applications they have open and if they have a common cheat, send a message to the server saying that x is cheating. [editline]31st October 2017[/editline] [QUOTE=MeepDarknessM;52839037]No, it can detect other things than lua. External cheats don't hook CreateMove. This is honestly the worst suggestion I've heard. The only real way to detect all external cheats is if VAC was tuned in Garry's Mod to detect specific ones. You aren't going to detect nearly anything external with just lua.[/QUOTE] Do you think that putting a pieace of Javascript or PHP code in the loading screen that checks a users Applications that are open, would work? or no.
[QUOTE=ActuallyFBI;52840635]I know the differnce i am talking about Non Lua cheats aka External, Internal cheats cannot be non lua unless injected i am purely talking External application cheats created in C++ the only thing most of these cheats can do is ESP tho. [editline]31st October 2017[/editline] So, i dont know how exactly the loading screen works but if the user connects to the webserver I could probably do that in PHP or Javascript to check what applications they have open and if they have a common cheat, send a message to the server saying that x is cheating. [editline]31st October 2017[/editline] Do you think that putting a pieace of Javascript or PHP code in the loading screen that checks a users Applications that are open, would work? or no.[/QUOTE] Php wouldn't work because its server side and is doesn't have any native support for process listing in a browser iirc
[QUOTE=rtm516;52840668]Php wouldn't work because its server side and is doesn't have any native support for process listing in a browser iirc[/QUOTE] Python might be able to tho, so i dunno ill have to figure this out but so far i know that the loading screen is the best way to to do it, given that it is more than likely easily stopped by just blocking the website before joining the server but still.
Sorry, you need to Log In to post a reply to this thread.