-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Detect cheaters #73
Comments
After thinking about it:
Users could use a shared VPN to have the same IP address. Should we set up a "weak anti multiple IP" and a "hard anti multiple IP? One that just detects different IPs for the same account, while the latter warns for different IPs + if the IP comes from a server or something similar? |
Also, to avoid risking users creating a 2nd account to get a hint for "free"; should we also do detection via IP addresses? |
On the same note, to detect user cheating through solution sharing (not flag sharing or 2nd account) we could warn admins in case the user flag a challenge without even downloading the necessary files (if it's a reverse engineering challenge, it's purely impossible). Also, we could (again) do some behavioral analysis: if the author estimates that a good player would take 1h to flag, and it's flagged in 5mins that is most likely a cheater. |
What about adding a "cheating score". This way while admins are warned everytime a player is acting suspiciously a "point" is added to their cheating score; it would be an easy way for admin to quickly see who really cheated against who might have just been unlucky once and triggered the anti-cheat. If user-1 has 7 points and user-2 has 1 point in the "cheating score" at the end of the CTF, the user-1 surely cheated, while user-2 is suspicious but not necessarily a cheater. That would also make it easier for admins who only wants to check prizes winner. They can easily see on the web page and don't have to back-log the warning page. |
What about team helping each other ? We could use the KNN algorithm to group together the teams. For each team we create a vector with the norm as the time taken to solve a challenge. With the KNN algorithm we could create groups and see who solved around the same time. This is far from a good way to detect them, but that could prove to be useful sometimes. If we decide to make it very strict that could also be useful. We could decide to be ok with a high detection level knowing that it'll have a somewhat high false-positive. |
Also, what about creating an average time the players took to flag and the ones that are far lower from the average (took 10 mins when average was 25mins) get added a cheating point? |
we could even have a cheater scoreboard on the admin page xD |
Add a feature to detect flag sharing.
All of these would create a warning (?) to the admin panel and/or through the bot in a specified channel
The text was updated successfully, but these errors were encountered: