Botverdomme

Door chaozz op donderdag 28 juni 2012 15:49 - Reacties (31)
Categorie: -, Views: 4.366

Ik ben de maker van een MMORPG waarin spelers zich voordoen als hackers in een uiteraard virtuele setting. Je kunt in deze text-based browser game verschillende hacks uitvoeren, zoals pc's aanvallen, servers hacken, gateways ddossen, FTP servers leegroven, etc, etc.

Een van de onderdelen die er ook in zit heet "Small Hacks". Het is bedoelt om snel even wat zakgeld bij elkaar te spelen om een tool te kunnen kopen, oid.

http://img560.imageshack.us/img560/796/smallhacks.png

Bij Small Hacks kies je in de lijst een hack en druk je op de knop onderaan om de hack te proberen. Tussen de Small Hacks zit een verplichte interval die voor de jobs met een lagere successrate (en hogere payout) hoger is dan bij jobs met een hogere successrate.

Naast een kleine beloning kun je er ook een klein beetje Experience Points mee verdienen. Experience Points zijn het belangrijkste in dit spel, omdat het je Level bepaalt, en hoe hoger je level hoe beter de tools, software, hardware, etc.

Maar zoals in iedere MMORPG wordt ook in mijn game valsgespeeld. Door gebruik te maken van zogenaamde Small Hack-bots kunnen mensen automatisch snel levelen zonder enige inspanning.

De meeste bots die we tegenkomen zijn gemaakt met iMacro. Een voorbeeld hiervan:
https://docs.google.com/d...lppLaqFtstM3wloD_S7o/edit

Om botters tegen te houden wordt een speler random tussen 20 en 30 minuten getrakteerd op een CAPTCHA van Peoplesign.com, waarin de speler 2 afbeeldingen moet matchen.

Daarnaast hebben we SHIT: Small Hack Interval Tool. (whats in a name)

Deze tool legt vast wat de interval is tussen de verschillende Small Hacks vast en registreerd daarnaast responstijden van de captcha.

Hier is een voorbeeld van een iemand die een bot gebruikt:
Today 11:11:05 dojob (6) 98
Today 11:12:34 dojob (6) 89
Today 11:14:03 dojob (6) 89
Today 11:15:32 dojob (6) 89
Today 11:17:10 dojob (6) 98
Today 11:18:48 dojob (6) 98
Today 11:20:21 dojob (6) 93
Today 11:21:58 dojob (6) 97
Today 11:23:31 dojob (6) 93
Today 11:25:11 dojob (6) 100
Today 11:26:52 captcha 101
Today 11:26:59 docaptcha 7
Today 11:27:02 dojob (6) 3
Today 11:28:31 dojob (6) 89
Today 11:30:10 dojob (6) 99
Today 11:31:39 dojob (6) 89
Today 11:33:07 dojob (6) 88
Today 11:34:43 dojob (6) 96
Today 11:36:18 dojob (6) 95
Today 11:37:50 dojob (6) 92
Today 11:39:22 dojob (6) 92
Today 11:40:56 dojob (6) 94
Today 11:42:32 dojob (6) 96
Today 11:44:08 dojob (6) 96
Today 11:45:40 dojob (6) 92
Today 11:47:13 dojob (6) 93
Today 11:48:51 dojob (6) 98
Today 11:50:24 dojob (6) 93
Today 11:51:56 dojob (6) 92
Today 11:53:28 dojob (6) 92
Today 12:14:46 captcha 1278
Today 12:14:53 docaptcha 7
Today 12:14:56 dojob (6) 3
Today 12:16:31 dojob (6) 95
Today 12:18:09 dojob (6) 98
Today 12:19:48 dojob (6) 99
Today 12:21:16 dojob (6) 88
Today 12:22:45 dojob (6) 89
Today 12:24:14 dojob (6) 89
Today 12:25:49 dojob (6) 95
Today 12:27:28 dojob (6) 99
Today 12:29:06 dojob (6) 98
Today 12:30:46 dojob (6) 100
Today 12:32:18 dojob (6) 92
Today 12:33:57 dojob (6) 99
Today 12:35:35 dojob (6) 98
Today 12:37:07 dojob (6) 92
(de laatste waarde is de interval)

Zoals je ziet klikt deze persoon een uur en een kwartier lang precies op de volgende smallhack tussen de 89 en 100 seconden. Veel te consequent voor een msen en een overduidelijke bot.

Naast SHIT heb ik ook een lijst van hackers die de meeste EP in 24 uur hebben vergaard, waarmee de potentiele botters sneller kunnen worden opgespoord.

De SHIT werkt prima dus, maar vergt een hoop handarbeid!!

Waarom vertel ik dit allemaal? Eigenlijk ben ik op zoek naar iemand die de kennis heeft om een soort script te ontwikkelen die zelfstandig bot-patronen kan herkennen. Het hoeft denk ik niet heel high-tech te zijn.

Wellicht is het al genoeg een soort gemiddelde uit te rekenen van de verschillen tussen de dojob-intervallen. Hoe lager dat gemiddelde, hoe meer waarschijnlijk dat het een bot is.

Al is deze methode wel te omzeilen door een dagje lang hele grote intervallen te forceren.

Wat ik niet wil is het aantal Small Hacks beperken of geen EP uitkeren. Wie heeft er een idee? Wie kan mij helpen?