[Cryptologie] Cracker un encryptage par handshake

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Status
Not open for further replies.

M1uu

Nouveau membre
Mar 14, 2013
3
0
201
Bonjour,

Comme certains l'auront deviné, je ne suis pas la pour trouver un cheat. Je suis développeur Java et nous commençons avec un ami un projet d'émulateur, nous avons décompilé l'exe du jeu en question et ainsi récupéré les enums dont nous avons besoin (opCodes entre autres). Il ne nous manque plus qu'un seul système : la crypto.

Je m'explique:

Les paquets échangés entre le client et le serveur sont cryptés, ce qui fait que nous n'avons aucune lisibilité sur le contenu de ceux-ci, même si une partie reste comprise.
Etant donné que nous avons tout le reste, et même les clefs de cryptage, nous sommes à deux doigts de pouvoir lancer notre projet. Seulement voila, aucun moyen de trouver la crypto utilisée, nous savons qu'un handshake est effectué à la connexion du client, mais pas plus, je recherche donc une personne capable de trouver la crypto utilisée à partir de l'assembleur de l'exe et des clefs de cryptage.

Si jamais vous connaissez/êtes cette personne, n'hésitez pas à la contacter, en récompense ben ce jeu sera amené en france en free to play d'ici deux ans maximum (on est que deux sur le projet...) : Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!

Bonne journée à tous et bon jeu !

EDIT : #Staff Je viens de voir que j'ai peut être posté dans la mauvaise section... désolé :/ possible de move svp?
 
Last edited:

Astropilot

The Lord
V.I.P
V
Jan 6, 2011
9,285
18
1,254
France
C'est un jeu codé en quel langage ?
Si c'est c++, il vous suffit de regarder la fonction send (ou recv) qui envois les packets avec CE par exemple et de breakpoint pour voir ce qui appelle cette fonction, vous remonter dans le code jusqu'a trouvé l'endroit ou l'encryption est faite.
Je peux essayer de vous aider, je travail sur un même projet mais sur un autre jeu :)
 

Evaelis

La Voix de la Sagesse
V
Ancien staff
Apr 28, 2010
22,949
468
1,699
Valhalla
Je move en section programmation.
Pour commencer je préfère prévenir que je n'ai pas les connaissances nécessaires pour la modification d’exécutables donc tout ce que je vais dire après n'est que de la théorie.
Pour commencer, je suppose que lorsque tu décompiles, tu n'obtiens que l'asm ou un pseudo-code, mais tu peux simplement l'utiliser en modifiant la valeur d'entrée de la fonction. Même si tu ne comprends pas son fonctionnement, elle s'occupera de te retourner la bonne valeur.
De même avec la fonction de décryptage. Cela va tout de même être un tout petit peu plus compliqué en java.

Tu peux aussi surement en fouillant résoudre la façon dont les packets sont traités lors du décryptage, généralement le RSA et l'AES sont pas mal utilisés pour ça. la plupart des exécutables que j'ai vu utilisent le RSA afin de vérifier l'authenticité et de garder un cryptage fiable.

En espérant que ça puisse te mettre sur une piste.
 

M1uu

Nouveau membre
Mar 14, 2013
3
0
201
Ouah merci de vos réponses rapides.

Serait-ce possible d'en parler directement par skype/ts? J'ai vu que vous aviez un ts mais mon client refuse de se connecter :s

EDIT: c'est du cpp oui, avec cryptopp pour gérer la partie crypto.
 

Evaelis

La Voix de la Sagesse
V
Ancien staff
Apr 28, 2010
22,949
468
1,699
Valhalla
Pour le TS il est éteint, tu peux me PM ton skype si tu veux parler de théorie.
 
Status
Not open for further replies.