Je m'appelle Josh Phillips et je veux vous présenter un invité spécial qui n'est pas sur la programmation, son nom est Mike Donnelly. Plus tard, je lui donnerai l'occasion de me présenter. Habituellement, je suis le dernier orateur de la conférence, alors j'espère que notre discours ne jouera pas le rôle d'une berceuse pour vous. Si quelqu'un d'autre va parler après nous, je ne l'envie pas, mais je ne peux rien y faire. Eh bien, commençons.

J'ai entendu dire que tous les orateurs d'aujourd'hui n'ont pas eu de chance car ils ont eu des problèmes avec le diaporama, mais j'espère que tout ira bien pour nous. Donc, dans la vraie vie, je recherche des logiciels malveillants dans un laboratoire Kaspersky. J'ai également travaillé en tant qu'analyste de logiciels malveillants chez Microsoft, et contrairement à la croyance populaire ou à ce que l'on peut trouver sur Wikipedia, le nom du virus Conficker n'est pas l'équivalent allemand ou danois du mot anglais "assfucker", c'est juste un jeu sur ma parole. Donc, inventer un nom pour ce ver informatique peut être considéré comme la plus grande réussite de ma vie. Je suis un «fermier d'or» et comme passe-temps, j'ai écrit plusieurs robots pour les jeux informatiques, essayez de deviner lesquels. Je vais maintenant donner la parole à Mike pour parler de lui.
Mike Donnelly: Je suis Mike Donnelly, connu sous le surnom de Mercury, qui a créé le bot Glider Internet pour World of Warcraft. La détermination de la propriété de ce bot, dont 100 000 exemplaires ont été vendus par un tiers pour 4 millions de dollars, a été tranchée par le tribunal. J'ai réussi à faire appel de la décision du tribunal de première instance, et la cour d'appel a décidé de m'indemniser, en tant que véritable propriétaire, pour la perte de 6,5 millions de dollars, mais en tout cas, le procès ne m'a pas beaucoup plu.

On peut dire que je n'ai pas de passe-temps, car je suis plutôt engagé dans un litige. La chose positive est que l'un des utilisateurs de Glider, après avoir découvert où j'habite, m'a présenté de la bière, la livrant directement à ma maison et postant un message sur le forum Glider: «Hey Mercury, regarde par la porte - il y en a une pour toi 6 canettes de bière! ” C'était plutôt sympa, c'était vraiment là, je suis rentré par le garage et je n'ai donc pas immédiatement remarqué l'emballage des canettes de bière devant la porte d'entrée. C'était juste Budweiser, mais la bière gratuite est de la bière gratuite, donc s'ils essaient de me «chauffer» pour six millions et demi de dollars, alors au moins j'ai eu quelques canettes de bière gratuitement.
Josh Phillips: J'ai vu plusieurs femmes dans la salle, donc je vous conseille de faire attention à Mike - il est toujours célibataire et aussi riche. Au fait, je suis marié, mais pas aussi chanceux. Donc, le but de notre conversation n'est pas de faire de quelqu'un un expert en piratage de jeux en ligne, donc si vous êtes venu ici pour cela, vous serez déçu. Nous supposons que vous êtes au moins un peu familiarisé avec les aspects techniques de ce problème, mais si ce n'est pas le cas, nous espérons toujours que vous savez quelque chose sur le piratage de MMORG. Je note que nous ne sommes pas des spécialistes de l'organisation de «jours zéro» dans ce segment de l'Internet, donc si vous voulez avoir de nos nouvelles à ce sujet, vous serez également déçu. Mais nous pensons vraiment que nous ne devrions pas avoir de 0 jour, car il est assez facile de détruire tout jeu en ligne qui ait jamais été publié.
Les objectifs de notre présentation:
- couvrir brièvement l'histoire des jeux en ligne et l'utilisation de l'argent réel en eux;
- expliquer pourquoi nous les piratons;
- parler en détail du processus de piratage;
- parler en détail de l'écriture de robots de jeu.
La citation de Sun Tzu est sur cette diapositive: "Quiconque sait quand il peut se battre, et quand il ne peut pas, sera le gagnant", et je pense que Mike a une certaine expérience avec cela. Il a choisi le combat, il est le seul de mes amis à avoir choisi cette voie, je pense que vous pouvez lui demander avec quel succès il se bat.
Mike Donnelly: Ça pourrait être mieux!
Josh Phillips: oui, ça pourrait être mieux!
Mike Donnelly: cela aurait pu être pire.
Josh Phillips: oui, c'est possible. Vous voyez une diapositive avec de brèves conclusions juridiques auxquelles Mike est parvenu sur la base de sa propre expérience, dont il va parler. Nous ne sommes pas des avocats, mais:
- tout ce que vous savez n'est pas pertinent;
- vos idées juridiques intelligentes ne dérangent personne, même si elles sont tout à fait correctes,
si vous participez à une procédure judiciaire, ils vous auront en tout cas; - Évitez les poursuites judiciaires: fuyez, cachez-vous dans un offshore, disparaissez de cette planète, etc.;
- Blizzard apparaîtra toujours devant votre porte.
Mike Donnelly: Je dirai tout d'abord que je ne suis pas avocat et que je ne peux pas vous conseiller dans le domaine du droit, mais en tant que personne ordinaire, je peux vous dire que si vous avez contacté des avocats, considérez que vous avez été violée. Si cela arrive au tribunal, cela se terminera mal pour vous de toute façon. Beaucoup de gens, comme moi, croient que si vous avez toutes les copies du logiciel original entre les mains, les codes de compatibilité, etc., personne ne vous battra. Cependant, le processus de preuve de vos droits est très douloureux et incroyablement coûteux, et même si vous avez des arguments «ironiques» en votre faveur, la chance de prouver votre cas est très faible.

Par conséquent, vous devez comprendre que le litige est en tout cas une mauvaise idée et vous devez prendre toutes les mesures pour l'éviter. Si vous avez besoin de vendre quelque chose de Nevis, Neptune ou 7th Dimencion, essayez de rester loin d'eux, afin de ne pas être jugé, car si les sociétés de jeux considèrent que vous, en tant que développeur, essayez de les "tricher", ils apparaîtront immédiatement à votre porte.
Josh Phillips: La Chine est un bon endroit pour se perdre. Mon avertissement est le suivant: nous sommes sournois, alors j'ai décidé de révéler mes secrets au public n'est pas le meilleur choix. Par conséquent, certains noms et lieux réels ont été modifiés pour protéger les innocents, dans ce cas, nous-mêmes.
Alors pourquoi piratons-nous des jeux? Dans la plupart des cas, afin d'attirer l'attention des femmes, j'ai déjà mentionné que Mike est célibataire. En vérité, cela est fait pour gagner de l'argent - Mike a fait 4 millions de dollars sur la vente du bot, et mon premier concurrent en gagnait un demi-million chaque mois, c'est de l'argent sérieux. Parfois, les gens se vengent de quelqu'un ou trichent en trichant de cette façon. Levez la main, qui voudrait passer le jeu "scolaire" Hacking 101, j'aimerais vraiment que ce sujet soit enseigné à mon collège!

Donc, nous allons mentionner certains des outils de piratage de jeux, présentés sur la diapositive suivante:
- IDA
- Ollydbg
- Votre éditeur de mémoire / moteur de recherche préféré
- Éditeur 010
- Wireshark
Des outils personnalisés que vous pouvez créer vous-même, ce qui est très utile.
La plupart des personnes impliquées dans l'ingénierie inverse ne peuvent pas vivre sans elles, il est donc très évident de savoir ce que vous pouvez faire avec ces outils - par exemple, désassembler du code, modifier des fichiers à l'aide du débogueur Ollydbg. Si vous ne savez pas ce qu'est un débogueur, ce n'est pas votre place. Lorsque vous avez besoin d'un outil pour travailler avec la mémoire, la plupart des gens utilisent ArtMoney ou quelque chose de similaire. Si vous travaillez avec des formats de fichiers, l'éditeur 010 vous fournit le mode divin, car si quelqu'un essaie de le faire sans cet éditeur, il échouera. Vous avez également besoin d'un outil pour capturer des paquets comme Wireshark si vous souhaitez gérer le contenu d'un paquet.
Les outils créés par vous-même sont d'une grande importance, car si vous essayez de pirater des jeux sans vos propres scripts manuscrits pour DES et d'autres gadgets magiques, alors perdez simplement votre temps.
Mike Donnelly: Je veux ajouter - si vous créez votre propre logiciel ou un morceau de code logiciel que vous prévoyez d'utiliser vous-même ou de vendre, cela peut devenir votre entreprise à l'avenir. Vous pourrez cloner différents éléments de jeu et trouver des erreurs de jeu en les abordant simplement avec sagesse. Cependant, notre discussion n'est pas seulement sur la façon de gagner de l'argent avec cela, mais aussi sur la façon de profiter des jeux de piratage, donc je ne vais pas me concentrer sur les aspects du profit.
Josh Phillips: vous savez, il n'y a rien de pire que de créer un bot codé en dur qui cesse de fonctionner après la mise à jour du jeu et vous devez tout recommencer, c'est pourquoi vos outils peuvent être utiles.
J'ai essayé de classer un peu d'outils pour pirater des jeux. Ils peuvent être divisés en tricheurs, bots, clients / serveurs utilisateurs et exploits. Je ne vais pas entrer dans les détails, nous discuterons plus tard de toutes ces choses en détail.

Certaines personnes écrivent des clients personnalisés pour les jeux, les modules complémentaires, par exemple, un de mes concurrents chinois a écrit un tel client pour World of Warcraft, ce qui nous a largement détruits. Vous savez que des centaines de ces clients peuvent être lancés sur un ordinateur et vous ne pouvez pas rivaliser avec eux si vous n’exécutez que 3 ou 4 clients sur votre ordinateur.
Mike Donnelly: En parlant de clients personnalisés. Levez la main ceux qui ont joué à Hellgate: Londres? D'accord, combien de personnes ont continué à y jouer six mois après la sortie? Une personne?
Josh Phillips: Je suis désolé pour ces gens ...
Mike Donnelly: la raison pour laquelle je mentionne cela est parce que je connais un gars d'Allemagne qui travaille avec World of Warcraft, et quand la version bêta de Hellgate: London est sortie, il était tellement ravi qu'il a écrit un patron sans client pour elle . Il a fait l'ingénierie inverse de tout le protocole, toutes ces poignées de main, le chiffrement et autres, et était prêt à lancer le jeu, mais il s'est avéré qu'il venait de perdre des milliers d'heures (remarque: tous les serveurs de jeux ont été fermés moins d'un an après la sortie de ce jeu )
Josh Phillips: Ce sera le prochain Wow!
Mike Donnelly: oui, ce sera notre prochain wow! Donc, si vous faites quelque chose pour votre propre bénéfice, traitez-le comme une entreprise.
Josh Phillips: sinon vous perdez juste votre temps. Donc, si nous parlons d'exploits, ils peuvent être à la fois malveillants et capables de vous apporter des avantages tangibles, par exemple, le clonage d'objets Dupes ou le mode dieu en mode divin. À l'aide d'exploits, vous pouvez également effectuer un vol dans le jeu ou utiliser une attaque DoS sur le serveur.
Le piratage actif de jeux comprend le piratage de cartes et la recherche de solutions de contournement, ce que vous pouvez faire avec l'ingénierie inverse et le développement mathématique. La recherche de chemins est une tâche très difficile, donc si vous voulez faire cela, vous aurez besoin de la bibliothèque de navigation de refonte pour rechercher des chemins dans l'espace de jeu 3D, ce qui vous aidera à résoudre les problèmes les plus graves.
Nous ferons quelque chose comme trier les noobs, alors j'espère que ceux qui sont ici pourront garder une trace de nos pensées. Pour casser des jeux, vous devez avoir les compétences suivantes.

Vous devez apprendre le langage d'assemblage, par exemple, la syntaxe Intell, C / C ++, apprendre à travailler avec un ensemble de fonctions API Win32 et, peut-être, apprendre à écrire des pilotes. Apprendre à écrire des choses comme la lecture de pixels Lane, dont quelqu'un a parlé ici il y a quelques années, sera très utile. Par conséquent, les noobs n'ont pas leur place ici.
Est-ce que quelqu'un connaît le gars représenté sur cette diapositive? Son nom est Rich Thurman, je pense qu'il a été l'un des premiers à comparaître devant le public en tant que «fermier d'or». Cette photo a été publiée dans un article de l'IEEE Institute of Electrical and Electronics Engineers vers 2000-2001, lorsqu'il a gagné plus de 100 000 $ grâce aux jeux en ligne. C'est le montant qu'il a reconnu, mais je pense qu'en fait, Rich a gagné beaucoup plus en piratant simplement Altum Online dans Minecraft. Fondamentalement, il a «joué» avec l'édition de mémoire, trouvé des structures de données clés et en a tiré un profit.
La recherche de mémoire est un art magique, c'est ce dont vous avez vraiment besoin. Si vous ne pouvez pas utiliser votre mémoire pour trouver des endroits qui stockent des éléments tels que des points de jeu, des compétences, des capacités, etc., il vous sera très difficile d'effectuer une analyse statique du jeu afin de réaliser un profit.

J'ai déjà mentionné plusieurs jeux en ligne et je suis sûr que la plupart d'entre eux connaissent un jeu comme World of Warcraft. Ce jeu a été l'un des premiers à utiliser un moteur de script modifié, mais la plupart des jeux qui l'utilisent font des erreurs. Les créateurs de WoW ont utilisé le langage de script Lua pour développer des jeux, dont un effet secondaire est d'incorporer une chaîne avec le nom de la fonction dans le fichier binaire. Cela facilite grandement l'ingénierie inverse, donc si vous êtes intéressé, par exemple, comment appliquer un sort particulier pendant une bataille, il vous suffit de rechercher la ligne avec le mot "sort", d'y trouver le code correspondant et de l'utiliser dans le processus de jeu à vos propres fins.
Mike Donnelly: Je veux ajouter que l'utilisation de Lua rend le processus d'ingénierie inverse dans les jeux incroyablement simple. Vous pouvez écrire un script Lua qui fera ce que vous voulez et le tester en mode test. Si vous connaissez l'ID du sort, vous pouvez mettre le jeu en pause, insérer ce code et utiliser le sort souhaité pendant le jeu.
Josh Phillips: oui, les moteurs de script font de l'ingénierie inverse une tâche extrêmement facile, ils n'ont vraiment aucun problème technique. Je vais maintenant brièvement passer en revue l'histoire de plusieurs jeux. Je pense qu'Ultima Online a probablement été le premier grand MMO à rassembler jusqu'à 225000 joueurs en ligne, mais ce sont de vraies petites choses par rapport à World of Warcraft ou aux jeux en ligne sur Facebook, qui comptent jusqu'à 30 millions d'utilisateurs. Est-ce que l'un d'entre vous joue à Farmville? Non? Je ne te crois pas de toute façon.
Vous savez tous que dans ces jeux, les gens trichent, créent des objets, passent à travers les murs, etc.
Le jeu le plus populaire était WoW, il est même entré dans le livre Guinness des records en tant que jeu de rôle en ligne le plus populaire avec 10 millions d'utilisateurs, peut-être le plus grand nombre d'utilisateurs ne collectant que des jeux chinois. Je note que les sociétés de développement s'abstiennent parfois de vendre leurs jeux ou leurs abonnements saisonniers dans certains pays.

Mike Donnelly: oui, Blizzard refuse même parfois d'envoyer des CD, ils viennent juste frapper à votre porte. Ils travaillent avec des avocats qui vous proposent de signer un projet d'appel à la cour ou de vous couper le doigt. Voilà comment ils fonctionnent. WoW est un gros jeu, il y a tellement d'argent que même si vous capturez 1% du marché, cela justifie tous les risques. Mais si vous allez prendre des risques, le jeu devrait être assez massif.
Josh Phillips: Je veux ajouter que parfois Blizzard est à votre porte, et si vous n'avez pas de frère dans la mafia polonaise qui les poursuivra avec une batte de baseball, vous risquez de finir comme Mike.
Mike Donnelly: C'est vraiment le cas.
Josh Phillips: oui, ça arrive. Je note que même si votre jeu est vraiment petit, vous pouvez toujours gagner quelques «pièces» par mois, ce qui est assez solide pour beaucoup de gens, en particulier en Europe de l'Est ou en Amérique du Sud. Quelques milliers de dollars par mois - et vous vivez comme un roi.
Eve Online, écrit en Python, a été le premier jeu à utiliser un moteur de script basé sur des produits de base, et Darkfall comptait un demi-million de lignes en Java. Une caractéristique intéressante et une grosse erreur était que dans le jeu Age of Conan, les développeurs ont laissé des lignes de débogage détaillées, j'ai donc écrit un script pour cela qui recherchait des IDA comme les noms de classe, et ce script a renommé les fonctions à l'intérieur de mon IDB en fonction de ces lignes de débogage .
Dans le jeu Aion, les développeurs ont essayé d'empêcher le piratage en emballant le jeu avec Themida et en utilisant Game Guard, mais si vous n'utilisez pas les fonctions supplémentaires de cette protection, il est assez facile de se déplacer. Vous pouvez restaurer le patch et pirater Game Guard avant d'essayer de réparer leur jeu. Cette diapositive montre une liste de jeux MMORG, qui ont commencé à utiliser la triche Speedhack assez rapidement après la sortie: Age of Conan, WoW, UO, EQ, Vangard.

Microsoft a dépensé 50 millions de dollars pour cette merde, et je pense qu'ils ont annulé la sortie de trois autres MMO précisément parce qu'ils avaient peur d'être piratés aussi. En principe, le cheat Speedhack peut être utilisé par rapport à n'importe quel jeu en ligne, si vous savez comment l'exécuter, afin que tous ceux qui sont intéressés par le piratage de World of Warcraft puissent me contacter à ce sujet après notre présentation, je serai dans la salle de questions et réponses. Les jeux en ligne 2D comme UO ou Ultima Online ont résolu ce problème, mais les jeux 3D qui utilisent intensivement la puissance du processeur pour suivre les mouvements de 20 à 30 000 utilisateurs n'ont pas encore travaillé pour éliminer les vulnérabilités.
Mike Donnelly: ils font juste confiance aux clients, ne sachant pas à quel point ils peuvent être intelligents.
Josh Phillips: c'est ça, donc si quelqu'un ici fait confiance aux clients des jeux en ligne, alors il peut quitter cette salle en toute sécurité. Donc, les dupes, ou le clonage d'objets de jeu, est similaire à ce que fait la Réserve fédérale lorsque ses représentants se rendent au trésor et disent: «Hé, vous ne pouvez pas nous imprimer un million de milliards de dollars, et nous promettons que nous forcerons le peuple américain à retourner ce devoir. " C'est vraiment ce qui peut vous rendre riche, j'ai un ami qui pirate les jeux de cette façon et gagne environ un million de dollars par mois. Il a 2 voitures Lamborgini - Diablo biturbo et Murielago, et maintenant il va acheter une Gallardo vert citron, donc j'ai un peu honte de lui.
: . , dupes , , - , - . , WoW , .
, , . , , , , , , . , , , , - .
: , - , , Adobe, 3 , , SLR . , ID , . .
, , , - . .

, , , , , .
: !
: , . . , , , . , , WoW, 7 , . , , Speedhack, . Speedhack , , , . , « , ».
: ! , , World of Warcraft, -. Ethernet, «» . , TCP- , , . , . , , , «», , . , , , «» , .
, , TCP-. , , .
: , ! , !
: , , . , WoW 5 , , , . , .
: , , . «» — - , , , dupes , , . , «». , , , - « » .
, , -, , . , , .
25:40
Conférence DEFCON 19. Hack MMORPG pour le plaisir et le profit. 2e partieMerci de rester avec nous. Aimez-vous nos articles? Vous voulez voir des matériaux plus intéressants? Soutenez-nous en passant une commande ou en le recommandant à vos amis, une
réduction de 30% pour les utilisateurs Habr sur un analogue unique de serveurs d'entrée de gamme que nous avons inventés pour vous: Toute la vérité sur VPS (KVM) E5-2650 v4 (6 cœurs) 10 Go DDR4 240 Go SSD 1 Gbps à partir de 20 $ ou comment diviser le serveur? (les options sont disponibles avec RAID1 et RAID10, jusqu'à 24 cœurs et jusqu'à 40 Go de DDR4).
VPS (KVM) E5-2650 v4 (6 cœurs) 10 Go DDR4 240 Go SSD 1 Gbit / s jusqu'au printemps gratuitement lors du paiement pendant
six mois, vous pouvez commander
ici .
Dell R730xd 2 fois moins cher? Nous avons seulement
2 x Intel Dodeca-Core Xeon E5-2650v4 128 Go DDR4 6x480 Go SSD 1 Gbps 100 TV à partir de 249 $ aux Pays-Bas et aux États-Unis! Pour en savoir plus sur la
création d'un bâtiment d'infrastructure. classe utilisant des serveurs Dell R730xd E5-2650 v4 coûtant 9 000 euros pour un sou?