Hexeditorhacking |
||
---|---|---|
#0
| ||
28.08.2011, 18:28
...neu hier
Beiträge: 6 |
||
|
||
28.08.2011, 21:59
Member
Beiträge: 5291 |
#2
Zitat 2. Man schaut nach offensichtlichen Daten, die man auch direkt im Spiel finden kann, z.B. Spielername. Wenn man ihn findet hat man man Glück, weil die Datei weder komprimiert noch verschlüsselt ist. Man kann also sofort editieren.Ich glaube kaum das deratige Dateien im RAM verschlüsselt gehalten werden, da wäre mir auch keine Engine bekannt die sowas tut (wozu auch). Zitat 3. Hat man nichts gefunden, durchsucht man die Datei nach Headern von Kompressionen. Findet man etwas, so kann man den Bereich aus der Datei isolieren und ihn dann extrahieren.Wieso sollte ein savegame komprimiert sein?!? (Oder gar verschlüsselt) Zitat Ist dies der allgemeine Weg?Naja erst hast du von Grafiken geredet und das mit Hex Editierung (eines Savegames) vermengt, klar ist natürlich das die Grafiken sich nicht in irgendeinem Savegame befinden. Später redest du dann aber von diversen eventuellen Daten - ja was denn nun? __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
29.08.2011, 18:44
Member
Beiträge: 1543 |
#3
Zitat Akuma8 posteteSo vor 20 Jahren war das noch der allgemeine Weg, ja. Es kommt auf einen Versuch an, je nachdem, was du "editieren" willst. Versuch mach kluch. T S |
|
|
||
29.08.2011, 19:06
Member
Beiträge: 5291 |
#4
Zitat So vor 20 Jahren war das noch der allgemeine Weg, ja.Daran hat sich auch nichts geändert. __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
30.08.2011, 16:14
...neu hier
Beiträge: 5 |
#5
Zitat Xeper posteteVon RAM ist nicht die Rede. So wie ich das verstehe geht es um Savegames die auf der Festplatte abgelegt werden. Savegames koennen durchaus Groessen erreichen bei denen eine Komprimierung sinvoll ist. V.a. wirken die Dateien zumeist "verschluesselt", da der Endnutzer nicht weiss welches/welche Byte(s) fuer was genutzt werden. Sagen wir z.B. die Lebenspunkte werden an Offset 0x40 gespeichert und sind 2 byte gross. Wenn der Benutzer nun die Datei oeffnet und im naheliegendem Bereich weitere Zahlen gespeichert sind ist es schwer zu erkennen, was jetzt die Lebenspunkte sind und was z.B. die Munition des Spielers. Andere Spiele machen es sehr einfach. Wenn ich mich recht erinnere benutzt Crysis 1 strukturierte XML Files um die einzelnen Daten zu speichern. So reicht ein einfacher Texteditor aus. Zitat Naja erst hast du von Grafiken geredet und das mit Hex Editierung (eines Savegames) vermengt, klar ist natürlich das die Grafiken sich nicht in irgendeinem Savegame befinden.Ich denke die Grafiken waren nur zur allgemeinen Erlaeuterung seines Vorhabens und gehoeren somit nicht zur eigentlichen Frage. |
|
|
||
30.08.2011, 19:14
Member
Beiträge: 5291 |
#6
Zitat Von RAM ist nicht die Rede. So wie ich das verstehe geht es um Savegames die auf der Festplatte abgelegt werden. Savegames koennen durchaus Groessen erreichen bei denen eine Komprimierung sinvoll ist.Warum, weil es zu wenig Festplattenplatz gibt? - die Savegames müssen geladen werden also werden diese letztendlich eh wieder dekomprimiert und im RAM gehalten (bzw. verarbeitet). Welche Engine komprimiert denn tatsächlich die savegames mit was für einen Algorithmus? __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
31.08.2011, 02:45
...neu hier
Beiträge: 5 |
#7
Ich sag nicht, das es die Regel ist, dass Savegames komprimiert werden. Ich glaube aber mich erinnern zu koennen, dass die Crysis 1 savegames erschreckend gross waren(Ich glaube ich hatte frueher 5GB Crysis 1 Savegames -> XML Struktur). Wenn ich mir jetzt die Crysis Warhead Savegames anschaue kann ich keine XML Struktur mehr erkennen und die einzelnen Savegames sind auch bedeutend kleiner. Ich kann mir nicht vorstellen, dass die ein neues Savegame Format nur fuer das Addon entwickelt haben, auch wenn ich es nicht ausschliessen mag.
Dass sie im RAM nicht verschluesselt/komprimiert gehalten wird ist klar. Allerdings werden Savegames als komplette Bloecke kaum im RAM gehalten werden, sondern nur kurz ausgelesen und mit den Daten die passenden Speicherzellen gefuellt. Aber stimmt schon, die Wahrscheinlichkeit, dass das Savegame eines Spiels komprimiert ist ist schon sehr gering. Und die Wahrscheinlichkeit einer Verschluesselung geht wohl gegen null. Eigentlich hat mich nur deine Formulierung mit der Komprimierung im RAM verwirrt. |
|
|
||
31.08.2011, 11:08
Member
Beiträge: 5291 |
#8
Zitat Ich glaube aber mich erinnern zu koennen, dass die Crysis 1 savegames erschreckend gross waren(Ich glaube ich hatte frueher 5GB Crysis 1 Savegames -> XML Struktur).Ahh ja das ist normal, bei txt hast du auch so extrem große Datenmengen die sich sehr leicht komprimieren lassen - das ist der drawback bei XML, ich habe auch schon mit großen XML Datenmengen gearbeitet aber das ist dann eig schon ein Designfehler da lohnt es sich eher eine binäre Datenbank zu benutzen (a la sqlite). Zitat Dass sie im RAM nicht verschluesselt/komprimiert gehalten wird ist klar. Allerdings werden Savegames als komplette Bloecke kaum im RAM gehalten werden, sondern nur kurz ausgelesen und mit den Daten die passenden Speicherzellen gefuellt.Ja da geb ich dir auch recht, wozu sollte man das einfach irgendwo im RAM halten. Hmm bin ja mal gespannt ob der Threadersteller sich noch meldet. ^^ __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
Ich weiß nicht, ob das hier wirklich reinpasst, aber ich bete einfach mal für administrative Gnade.
Ich will ein Savegame von einem Spiel hacken und ein paar Grafiken austauschen. Ich habe etwas überlegt und denke ich weiß nun, wie man das ungefähr macht. Aber wollte mal fragen, ob es vielleicht bessere Löösungen gibt.
1. Man öffnet die Datei mit einem Hexeditor.
2. Man schaut nach offensichtlichen Daten, die man auch direkt im Spiel finden kann, z.B. Spielername. Wenn man ihn findet hat man man Glück, weil die Datei weder komprimiert noch verschlüsselt ist. Man kann also sofort editieren.
3. Hat man nichts gefunden, durchsucht man die Datei nach Headern von Kompressionen. Findet man etwas, so kann man den Bereich aus der Datei isolieren und ihn dann extrahieren.
Allerdings frage ich mich, woher man wissen soll, wann der komprimierte Bereich zu Ende ist.
Und gibt es vielleicht Programme, die nach allen bekannten Headern suchen?
4. Findet man wieder nichts, so ist die Datei vermutlich verschlüsselt. Eventuell hat man nun wirklich Pech. Nun kann man eventuell die nächsten Jahre damit verbringen die Datei zu cracken, indem man alle denkbaren Keys versucht und das Datenextrakt dann wieder genannten Punkten durchsucht, bis man Erfolg hat.
Ist dies der allgemeine Weg?
MfG