Comment hacker un jeu flash

Voici une vidéo très intéressante qui va vous apprendre à tricher avec n’importe quel jeu en Flash. Le hack est basé sur la modification en mémoire vive des valeurs du processus dans lequel est exécuté le jeu.

Pour les moins techos, je vais tenter une explication. Pour shématiser, à chaque fois que vous jouer votre navigateur va créer un processus pour faire tourner votre jeu. Ce processus a besoin de 2 ressources: de la mémoire pour stocker ses données (le score, les maps…) et de temps de calcul. La première est fournie par la mémoire vive et la seconde par le processeur de votre machine.

Comme toutes les variables sont stockées en mémoire vive, vous pouvez logiquement retrouver votre score ou vos ressources dans cet espace et donc les modifier !

La vidéo

La vidéo est en anglais.

How To Hack Any Flash Game – video powered by Metacafe

Comment se prémunir contre ce genre d’attaque ?

Et bien le hacks se base sur la comparaison et l’évolution des valeurs en mémoire. Si vous chiffrez les valeurs celà va devenir bien plus compliqué. En effet le tricheur va devoir trouver quel est l’algorithme de chiffrage et donc décompiler et analyser votre code. Vous vous dites peine perdue ? Non, pas du tout à chaque attaque sa parade. Il existe des offuscateur de code qui rendent la lecture extrêmement pénible à un humain mais pour un ordinateur.

D’autres attaques plus classiques existent, comme par exemple l’analyse des échanges entre votre jeu et ses serveurs. Des extensions firefox, comme par exemple Tamper Data, vous permettent de savoir quelles URL ont été appellées et avec quels paramètres.

Lorsque vous enregistrez votre score dans les highscore: votre jeu va soumettre une requête à un serveur.  Et bien si l’application qui enregistre les scores n’est pas suffisament sécurisée, il suffit d’attaquer cette partie, pour se voir dans le tableau des high score sans avoir jouer une seule fois…

Celà peut sembler anodin comme attaque, après tout ce ne sont que des scores. Mais imaginez le cas d’un jeu concours avec des gains, dont le gagnant est celui qui fera le meilleur score ? Vous avez un sérieux  problème. La sécurité est un point important à ne pas négliger, même lorsqu’on évolue dans le domaine du divertissement 🙂