Salut ! Alors en fait comme l'a dit uSkeezR tu vas devoir injecter la no.ankama.dll directement dans le client avant de faire quoi que ce soit. Cette librairie ne permet pas de bypasser des sécurités mais juste de rediriger la connexion en local, donc vers ton mitm qui devra écouter sur le port de redirection pour pouvoir intercepter le client officiel.
Ensuite, tu rediriges les paquets en suivant ce schéma :
sdfpus
Cliquez pour révéler
Cliquez pour masquer
Client > MITM > Server
Server > MITM > Client
Par exemple, tu reçois des bytes sur le stream du client, tu les réécris sur celui du serveur et inversement.
Ces bytes sont en fait des paquets, tu vas devoir les parser pour pouvoir en déduire l'id du paquet et décider si tu souhaite le renvoyer directement (donc ne pas lire le contenu, "sauter" des bytes #LaPhraseQuiPorteAConfusion)
ou le traiter (lire le contenu, et par exemple modifier ce qu'il contient .. et ensuite le renvoyer au serveur).
Le seul paquet essentiel au bon fonctionnement du mitm et le 42 ou SelectedServerDataMessage.
En gros, quand tu auras choisis ton serveur, le serveur de login va indiquer au serveur de jeu que tu arrives. Pour pouvoir te reconnaître, le serveur de login t'enverra une clef (que l'on appelle Ticket et qui est contenue dans le SelectedServerDataMessage) et dira au serveur de jeu que toi tu a cette clef. Quand tu te connectera au serveur de jeu, tu devras donc lui envoyer cette clef. Tu comprendras qu'elle est très importante et essentielle pour switcher du serveur de login au serveur de jeu. Cette clef change à chaque connexions.
Dans le SelectedServerDataMessage, il y a deux variables à changer qui sont "address" et "port".
N'oublie pas de concerver leur contenu quelque part car ce sont elles qui indiquent l'ip et le port du serveur de jeu.
En gros, tu mets "127.0.0.1", "leportquetuveux". Une fois le client connecté à ton MITM, tu te connectes à l'ip et au port que tu bien conservé au chaud et tu rediriges.
Après y'a quelques petites subtilitées mais je pense qu'avec ça tu as déjà pas mal ! N'hésite pas à demander si il y a un point que tu n'as pas compris (j'ai écris ça en one shot ..)
Tazman.