|
You last visited: Today at 17:50
Advertisement
vorgehensweise beim Multiplayergame hacken
Discussion on vorgehensweise beim Multiplayergame hacken within the General Coding forum part of the Coders Den category.
05/12/2014, 20:05
|
#1
|
elite*gold: 0
Join Date: Jun 2011
Posts: 149
Received Thanks: 27
|
vorgehensweise beim Multiplayergame hacken
Hi Leute,
Ich denke, dieses Thema wurde schon sehr oft angesprochen. Doch in der Suche habe ich leider nichts gefunden was mir genau weiterhilft.
Ich programmiere nun 2-3 Jahre C++. Angefangen mit einfachen Consolen Programmen und dann weiter zur WinApi und DirectX9(Direct3D9/11).
Nun habe ich im letzten Jahr vermehrt kleine Hacks geschrieben.
Hauptsächlich Memory Hacks aber auch kleine Direct3D Hooks für Wallhacks und Crosshairs etc..
Nun möchte ich einen Schritt weiter gehen.
Ich möchte ein Multiplayer Game Hacken.
Als Übungsobjekt habe ich mir das Game "Der Herr der Rinde - Schlacht um Mittelerde 2 - Aufstieg des Hexenkönigs" ausgewählt.
Für den Singleplayer des Spiels habe ich bereits einen Memory Hack geschrieben.
Es werden einfache Werte wie Ressourcen, Truppenstärken und Spezialpoints geändert.
Das ganze möchte ich nun auch im Multiplayer machen. Der Multiplayer läuft bei mir übers Netzwerk. Also ein PC als Server und der andere PC als einfacher Client. (Ich bin Client).
Nun meine Frage:
Wie lerne ich die "Basics für sowas? Wie lerne ich das abfangen der Packages?
Package Manager? Was ist das?
All solche Fragen stelle ich mir. Villeicht kann mir ja mal jemand auf die Sprünge helfen. Eventuell habt ihr auch nützliche Links für mich seperat.
Über Hilfe würde ich mich sehr freuen,
Grüße
xX.Slayer.Xx
|
|
|
05/12/2014, 20:23
|
#2
|
elite*gold: 1391
Join Date: Apr 2014
Posts: 77
Received Thanks: 14
|
Ein Problem ist aufjedenfall, dass die kritischen Werte, die man bei Memoryhacks z.B. zum erhoehen eines Levels verwendet, beim Server liegen. Das heisst du als Client kannst diese nicht veraendern.
Um Bots/Hacks zu programmieren, musst du vorerst nichts anderes tun, als den internen Aufbau des Spiels zu verstehen. Da waere dann der Schluesselbegriff "Reverse Engineering" sehr hilfreich. Dafuer verwendet man Debugger und RE Tools wie OllyDbg oder IDA (einfach mal googlen). Mit diesen Tools kannst du den Code des Spiels in Assembler darstellen und differenziert analysieren. Das ist vom Aufwand her leider kein Vergleich zum Memorysearching.
Wenn du dann den Aufbau verstanden hast, bist du auch direkt in der Lage deine eigenen Prozeduren in den Prozess zu injezieren und den Ablauf des Spiels zu modifizieren. Und mit ein bisschen Glueck findet man gleich noch schwerwiegende Sicherheitsluecken die mit dem Server zusammenhaengen und dir einen groesseren Zugriff verschaffen.
Das wars auch schon
|
|
|
05/12/2014, 21:07
|
#3
|
elite*gold: 0
Join Date: Jun 2011
Posts: 149
Received Thanks: 27
|
Quote:
Originally Posted by Actidnoide
Ein Problem ist aufjedenfall, dass die kritischen Werte, die man bei Memoryhacks z.B. zum erhoehen eines Levels verwendet, beim Server liegen. Das heisst du als Client kannst diese nicht veraendern.
Um Bots/Hacks zu programmieren, musst du vorerst nichts anderes tun, als den internen Aufbau des Spiels zu verstehen. Da waere dann der Schluesselbegriff "Reverse Engineering" sehr hilfreich. Dafuer verwendet man Debugger und RE Tools wie OllyDbg oder IDA (einfach mal googlen). Mit diesen Tools kannst du den Code des Spiels in Assembler darstellen und differenziert analysieren. Das ist vom Aufwand her leider kein Vergleich zum Memorysearching.
Wenn du dann den Aufbau verstanden hast, bist du auch direkt in der Lage deine eigenen Prozeduren in den Prozess zu injezieren und den Ablauf des Spiels zu modifizieren. Und mit ein bisschen Glueck findet man gleich noch schwerwiegende Sicherheitsluecken die mit dem Server zusammenhaengen und dir einen groesseren Zugriff verschaffen.
Das wars auch schon 
|
Habe auch schon etwas mit OllyDbg gearbeitet. Jedoch nicht sehr intensiv.
Werde mich mal genauer in das Thema OllyDbg und IDA einlesen.
Quote:
|
Ein Problem ist aufjedenfall, dass die kritischen Werte, die man bei Memoryhacks z.B. zum erhoehen eines Levels verwendet, beim Server liegen. Das heisst du als Client kannst diese nicht veraendern.
|
wie würde man denn da vorgehen? Eine Funktion aufrufen, welche dem Server sagt, dass man Punkte dazubekommt? z.B. Um Ressourcen zu bekommen, die Funktion ausführen, welche bei "Mühlen" aufgerufen wird, welche Ressourcen herstellen?
|
|
|
05/12/2014, 21:25
|
#4
|
elite*gold: 1391
Join Date: Apr 2014
Posts: 77
Received Thanks: 14
|
Quote:
Originally Posted by xX.Slayer.Xx
wie würde man denn da vorgehen? Eine Funktion aufrufen, welche dem Server sagt, dass man Punkte dazubekommt? z.B. Um Ressourcen zu bekommen, die Funktion ausführen, welche bei "Mühlen" aufgerufen wird, welche Ressourcen herstellen?
|
Sofern so eine Funktion existiert, die einem vereinfacht Punkte zukommen laesst geht das, klar. Aber angenommen du würdest ein Multiplayergame entwickeln, würdest du so eine Möglichkeit überhaupt erst einbauen?
Meistens wird es eher so aussehen (bezogen auf dein Beispiel):
- Client sagt Server ich habe auf Mühlen geklickt
- Server überprüft ob du in deiner jetzigen Lage überhaupt mühlen kannst.
- Wenn ja, fuehrt er die interne Serverfunktion aus, die dir Resourcen zukommen lässt
Wie du siehst, hast du bisauf den Anfangsbefehl selbst keine Kontrolle über den Prozess
Meist bleibt nichts anderes übrig, als das zu tun, was normale Bots auch machen.
|
|
|
05/12/2014, 21:45
|
#5
|
elite*gold: 0
Join Date: Jun 2011
Posts: 149
Received Thanks: 27
|
Quote:
Originally Posted by Actidnoide
Meist bleibt nichts anderes übrig, als das zu tun, was normale Bots auch machen.
|
Wie genau gehen denn "Normale Bots" da vor?
Sicherheitslücke vom Server suchen und dann den Server steuern?
Wie könnte eine solche "Lücke" aussehen?
|
|
|
05/12/2014, 21:53
|
#6
|
elite*gold: 1391
Join Date: Apr 2014
Posts: 77
Received Thanks: 14
|
Nein, "normale Bots" machen nichts anderes als Pixelsearch/Clickbots auch. Nur anstatt nach Pixelfragmenten zu suchen, werden die Informationen direkt aus dem Speicher gelesen. Und anstatt auf dem Gameinterface rumzuklicken wird die Funktion für einen Klick/Befehl einfach Clientintern aufgerufen.
Das ist um einiges effizienter aber leider leichter zu detecten.
Sicherheitsluecken wirst du allgemein nur temporär finden, da diese vom Spielehersteller schnell erkannt und behoben werden.
|
|
|
05/14/2014, 18:29
|
#7
|
elite*gold: 0
Join Date: Jun 2011
Posts: 149
Received Thanks: 27
|
So habe mich jetzt eingelesen in das Thema und mir viele verschiedene Beiträge angesehen.
Habe mich für ein anderes Spiel entschieden, da das vorherige nicht so ganz mein Ziel ist^^.
Möchte mir nun mal Metin 2 vornehmen.
Problem an der Sache:
Wie komme ich nun mit OllyDBG am Hackshield vorbei?
Kennt sich da jemand aus?
Wäre echt super, wenn mir da mal jemand auf die sprünge helfen kann. Villeicht Links mit anleitungen oder wieder ein paar Wörter, nach denen in Googlen kann?
Grüße
xX.Slayer.Xx
|
|
|
05/14/2014, 18:33
|
#8
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Dafür brauchst du einen Bypass. Ohne Reversing Kenntnisse wird das aber nichts.
|
|
|
05/14/2014, 20:07
|
#9
|
elite*gold: 0
Join Date: Jun 2011
Posts: 149
Received Thanks: 27
|
Mein Problem ist, sobald ich OllyDBG starte, beendet sich Metin 2.
Ich habe bereits das Hackshield deaktiviert und wollte nun die MessageBox umgehen, damit das game auch ohne HackShield startet.
Leider nach jedem start von OllyDBG ist das Programm aus.
|
|
|
05/14/2014, 20:35
|
#10
|
elite*gold: 1391
Join Date: Apr 2014
Posts: 77
Received Thanks: 14
|
Bei Metin2 sind mit Sicherheit auch Anti-Debug Methoden vorhanden, sodass ein Debugger das Spiel ohne spezielle Konfiguration erstmal nicht starten kann. Um solche Protections zu bypassen braucht man schon ein sehr umfangreiches Wissen ueber den Aufbau und Ablauf der Prozesse unter Windows.
Leg dir einfach ein paar Buecher und Paper uebers Reversing unter Windows zu und arbeite dich dann erstmal mit einfachen Uebungsaufgaben wie Crackmes heran.
Ich glaube nicht, dass du mit deinem derzeitigen Stand an Metin 2 Erfolge erzielen wirst.
|
|
|
05/14/2014, 20:42
|
#11
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Quote:
Originally Posted by xX.Slayer.Xx
Mein Problem ist, sobald ich OllyDBG starte, beendet sich Metin 2.
Ich habe bereits das Hackshield deaktiviert und wollte nun die MessageBox umgehen, damit das game auch ohne HackShield startet.
Leider nach jedem start von OllyDBG ist das Programm aus.
|
Dann läuft der Schutz noch. Es gibt einige Techniken die erkennen können, ob ein Debugger an dem Prozess klebt oder generell läuft. Hierzu mal  Post als Referenz. Da wird auf die einzelnen Schutzmechanismen eingegangen.
Damals hatte ich diesbezüglich TerminateProcess / ExitProcess gehooked und dort einen Sleep von x Sekunden eingebaut um meinen Debugger attachen zu können. Als ich die Methode fand, hab ich den Schutz gepatched.
Quote:
Originally Posted by Actidnoide
Ich glaube nicht, dass du mit deinem derzeitigen Stand an Metin 2 Erfolge erzielen wirst.
|
Das klingt irgendwie so, als ob Metin2 sicher wäre und generell ein anspruchsvolles Spiel ist.
|
|
|
05/14/2014, 20:59
|
#12
|
elite*gold: 1391
Join Date: Apr 2014
Posts: 77
Received Thanks: 14
|
Quote:
Originally Posted by Mostey
Das klingt irgendwie so, als ob Metin2 sicher wäre und generell ein anspruchsvolles Spiel ist. 
|
Wie ich deinem Post gerade entnommen ist es das anscheinend nicht 
Dennoch war das jetzt relativ auf den Wissensstand vom Threadersteller bezogen (und sorry an Slayer wenn dies nur ein falsches Vorurteil war  ).
|
|
|
05/14/2014, 21:10
|
#13
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Quote:
Originally Posted by Actidnoide
Wie ich deinem Post gerade entnommen ist es das anscheinend nicht 
Dennoch war das jetzt relativ auf den Wissensstand vom Threadersteller bezogen (und sorry an Slayer wenn dies nur ein falsches Vorurteil war  ).
|
Es geht. Viel Erfahrung habe ich damit auch nicht, aber für den Anfang wäre ein Spiel ohne jegliche Schutzmechanismen von Vorteil, um sich darin frei bewegen zu können.
Und btw. ist Metin2 definitiv nicht anspruchsvoll, die besagten Techniken verwenden viele Spiele. ;O
|
|
|
05/14/2014, 21:29
|
#14
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Afaik ist Metin mit Themida gepackt.
Du kannst also während Metin läuft einen Dump erstellen und dort drin rum suchen.
Solltest du auf irgendeine Art und Weise den OEP finden, kannst du mit ImpREC auch noch den IAT rekonstruieren lassen.
|
|
|
 |
Similar Threads
|
Suche ein gutes Multiplayergame
05/08/2014 - General Gaming Discussion - 1 Replies
Hallo! Ich suche ein Game das:
man zu 3. spielen kann
eine gute Grafik hat
Spaß macht
maximal USK 16 ist
Es sollte ein Game sein das man schon mal 1 Monat spielen kann und am besten zu dritt in einem Team sein.
Danke!
|
Beim hacken erwischt?
09/24/2011 - S4 League - 4 Replies
Hallo User,
als ich gerade durchs Neden-1 herumflg kam ein XXX ( namen vergessen ) und schießte auf mich... bin dann direckt off gegangen, da frage ich mich :
1. War das ein echter GM ? :o
2. Kann das irgendwelche folgen für mich haben ? :rtfm:
Freue mich auf jeden beitrag :)
|
girls hacken vorgehensweise
04/25/2011 - WarRock Hacks, Bots, Cheats & Exploits - 1 Replies
Girl Hacking Funny :D
Ich möchte euch in diesem Thread erklären, wie ihr euch ganz leicht ein Girl (engl. => Mädchen) hacken könnt.
Also, erstmal was grundlegendes zum Internet:
Das Internet besteht zum größten Teil aus 2 Protokollen:
TCP/IP (Titten-Control-Protocol) und UDP (Unter den Pulli).
Auf die Funktionen dieser Protokolle will ich hier nicht weiter eingehen, das würde den Rahmen dieses Threads bei weitem sprengen!
Nun gibt es verschiedene Attacken, um ein Girl zu hacken!
|
Problem beim Hacken :(
09/23/2009 - WarRock - 5 Replies
Ja hallo erstmal ... ich habe hier leider ein problem mit dem hacken das ich net auf die reihe krieg
sobald ich einen hack starte kommt eine fehlermeldung und da steht : Fehler in Anwendung
was soll ich tun ? ich hab schon sau vieles versucht ...
schonmal ein thx wenn ihr mir helfen könnt
PS: Ich habe Windows Xp
|
All times are GMT +1. The time now is 17:52.
|
|