I didn't know that, great that you're correcting me. It's sad that such simple methods works on these private servers. Most servers sadly don't understand that it's not worth wasting time and money protecting the client.Quote:
If an anticheat calls ExitProcess directly, which many shitty ones do, detouring it properly will keep the application from exiting. There are a lot of other functions that can be used to close a process, the standard "exit" and "terminate" functions comes to mind.
An anticheat can also crash the client to close the client and bypass detours. It's still not a very good solution, as the malicious user could simply remove the crash procedure.
The best solution is to send information about the user to the server, then have the server determine whether or not the user is cheating. If so, the server would disconnect or ban the player server-sided.
Some servers probably even bought [Only registered and activated users can see links. Click Here To Register...] for 350€. Would not surprise me one bit.
Using other exit functions is a waste of time but crashing the client will be harder to find and identify to be able to patch it. There's even a couple of methods which make it a lot harder using that crashing method that I'm not going to mentiont though.