Need your opinion on proposed anti-cheat proxy program
Posted: Sun Apr 22, 2012 8:33 am
Hi,
I am seeking the opinion of the Q3A community about a proposed project.
I have been approached by a server admin who asked me if it were possible to develop an anti-cheat program for his servers running Noghost 1.16 (it seems that Punkbuster is not a viable option for him). I have a couple of ideas about how it could be done, but I am not sure if what I plan to implement would be acceptable to the admins and players.
After considering the problem I have come to the conclusion that the only reliable way of implementing anti-cheat measures is the use of a closed source proxy sitting between the server and the client. The client side proxy would have complete control of starting the game program and establishing connection to the server side proxy. That is, the player would not start the game directly but would start the proxy with the path to the game and the address of the server as arguments. In order to be tamper resistant the proxy by default must be closed source, i.e. only binary versions would be distributed.
I believe that by using this approach all cheats based on game hacking could be eliminated, and the proxy could even provide reliable info to the admins for the detection of GL wall hacks as well. In addition, the proxy would not be specific to Noghost: with proper configuration it could be used by any game using the Q3A engine.
However, I realize that this approach may not be acceptable to admins and players for several reasons:
1. the restrictions imposed may not be acceptable to the players
2. players may be too lazy to download and install the proxy: they will simply use other servers
3. admins and players may be afraid to run the closed source proxy because of the possibility of virus or trojan infection (after all, they cannot know what the proxy is really doing and there is always the possibility of hackers distributing fake versions)
There is not much I could do about (1) and (2), but these problems could be overcome if server admins adopted the proxy and forced their players to use them. IMHO the benefits would be considerable.
Problem (3) is more serious and there is no simple solution: you either trust the developer or not. A possible solution based on control by the community could be the following:
1. There would be a few reputable WEB sites (e.g. quake3world, Lvl) for downloading authentic proxy binaries.
2. The binaries would be created by independent and trusted persons (e.g. prominent Q3A programmers active on different forums) from source code provided by the developer(s).
I would greatly appreciate getting your opinion on this subject.
Thanks!
[ Note: posted to the quake3world, ioquake3 and Rainbow Network forums. ]
I am seeking the opinion of the Q3A community about a proposed project.
I have been approached by a server admin who asked me if it were possible to develop an anti-cheat program for his servers running Noghost 1.16 (it seems that Punkbuster is not a viable option for him). I have a couple of ideas about how it could be done, but I am not sure if what I plan to implement would be acceptable to the admins and players.
After considering the problem I have come to the conclusion that the only reliable way of implementing anti-cheat measures is the use of a closed source proxy sitting between the server and the client. The client side proxy would have complete control of starting the game program and establishing connection to the server side proxy. That is, the player would not start the game directly but would start the proxy with the path to the game and the address of the server as arguments. In order to be tamper resistant the proxy by default must be closed source, i.e. only binary versions would be distributed.
I believe that by using this approach all cheats based on game hacking could be eliminated, and the proxy could even provide reliable info to the admins for the detection of GL wall hacks as well. In addition, the proxy would not be specific to Noghost: with proper configuration it could be used by any game using the Q3A engine.
However, I realize that this approach may not be acceptable to admins and players for several reasons:
1. the restrictions imposed may not be acceptable to the players
2. players may be too lazy to download and install the proxy: they will simply use other servers
3. admins and players may be afraid to run the closed source proxy because of the possibility of virus or trojan infection (after all, they cannot know what the proxy is really doing and there is always the possibility of hackers distributing fake versions)
There is not much I could do about (1) and (2), but these problems could be overcome if server admins adopted the proxy and forced their players to use them. IMHO the benefits would be considerable.
Problem (3) is more serious and there is no simple solution: you either trust the developer or not. A possible solution based on control by the community could be the following:
1. There would be a few reputable WEB sites (e.g. quake3world, Lvl) for downloading authentic proxy binaries.
2. The binaries would be created by independent and trusted persons (e.g. prominent Q3A programmers active on different forums) from source code provided by the developer(s).
I would greatly appreciate getting your opinion on this subject.
Thanks!
[ Note: posted to the quake3world, ioquake3 and Rainbow Network forums. ]