Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Datei-entschlüsselung gesucht.
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 15.06.2005, 15:08    Titel: Datei-entschlüsselung gesucht. Antworten mit Zitat

Hi. Hab mal wieder ein Problem.

Ich möchte ein Savegame verändern(gta-sa), doch sobald ich dieses veränder, sieht das Spiel das Savegame als "Fehlerhafte Speicherdatei" an. Die Datei habe ich in QBASIC mit dem binary modus ausgelesen, und den speicherplatz für das Geld gefunden. Den wert hab ich verändert. Aber es klappt nicht(kann nicht geladen werden).Ich glaube, dass in dem Savegame gespeichert ist, wann es zuletzt verändert wurde. Wie kann ich diesen Wert finden?? Ich kenne die verschlüsselung nicht. Ich kann das savegame nacher mal posten.

Please help

Michael
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jet X
gesperrt


Anmeldungsdatum: 05.01.2005
Beiträge: 447

BeitragVerfasst am: 15.06.2005, 16:14    Titel: Antworten mit Zitat

hmmm... wenn ich mich jetzt nicht irre und dich nicht falsch verstanden habe,
dann glaube ich das es aus dem Frund nicht möglich ist : Du sagtest , du hättest die Datei mit QBasic verändert ??? QBasic ist doch ne Dos anwendung
und GTA haöt ne neure Anwendung 32 Bit Anwendung oder sowas ... würde denken das es mit QBasic einfach nicht möglich ist lächeln Kann auch sein das das
totaller schwachsinn ist , dann verbessert mich Zunge rausstrecken
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 15.06.2005, 16:32    Titel: Antworten mit Zitat

Zitat:
Kann auch sein das das totaller schwachsinn ist , dann verbessert mich

OK, daran liegts wohl nicht. Es ist so, dass Spielehersteller immer so gut wie möglich versuchen, die Spielstände gegen Manipulation zu schützen. Möglicherweise ist irgendwo im Spielstand eine Checksumme (Hashwert) der Geldmenge. Stimmt die Checksumme der eingegebenen Zahl nicht mit der Gespeicherten überein, wurde manipuliert. Ich vermute so einen Mechanismus. zwinkern
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 15.06.2005, 17:44    Titel: Antworten mit Zitat

Hab daran auch schon gedacht. Da sind 3 verschiedene Geld werte.(hab auch alle gleich verändert) Im arbeitsspeicher sind auch drei(mit ramcheat überprüft). Hab damit also alles richtig gemacht. Da hängt bestimmt was mit dem Datum zusammen. Beim Laden steht hinter der datei auch, wann sie gespeichert wurde. Das spiel überprüft bestimmt, ob das datum, wann gespeichert wurde, in der datei mit dem veränderungsdatum der datei (in windows) übereinstimmt. Wenn ich die datei mit dem editor öffne, NICHTS verändere und auf speichern klicke, dann kann der das nicht laden. Schwer zu erklären. durchgeknallt

BEISPIEL:
Code:

Datei gespeichert am 15.06.05 um 14:30:46 (datum in der datei gespeichert)
Datei verändert am 15.06.05 um 14:44:13 (datei-eigenschaften-datum)

Spiel überprüft datum a mit datum b. Sie sind in diesem Fall nicht gleich, also wird der Spielstand als beschädigt angegeben.


So. Jetzt müsste man das besser verstehen. grinsen


Mfg
Michael
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
ChemicalWarfare



Anmeldungsdatum: 15.09.2004
Beiträge: 152

BeitragVerfasst am: 15.06.2005, 18:08    Titel: Antworten mit Zitat

öffne mal ne exe im editor, speichere sie unter einem anderen namen ab, und öffne sie: du wirst sehen, es funzt net. mußt es schon mitm hexeditor versuchen
_________________
Er ist ein Wunder!
Nein, er ist eine Missgeburt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 15.06.2005, 18:35    Titel: Antworten mit Zitat

Danke, aber es ist ja keine exe datei. Das ist ja eine *.b datei. Ein Hex-editor hab ich auch. Ich versuchs mal.

Mfg
Michael
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 15.06.2005, 20:46    Titel: Antworten mit Zitat

mein bewährtestes mittel:
dos-editor mit binärmodus, zeilenlänge automatisch 78!
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Tomtitom



Anmeldungsdatum: 20.09.2004
Beiträge: 308

BeitragVerfasst am: 15.06.2005, 23:07    Titel: Antworten mit Zitat

Also ich würde auch, wenn ich was verändere mit einem Hexeditor machen und nicht mit QB.

Woraus schließt du eigentlich, das die 3 Werte wirklich die Geld werte sind, doch nicht etwa nur, weil du den Geldwert in Hex umgerechnet hast?
Ich vermute mal kein modernes Spiel sichert so simpel seine Spielwerte ab. Wahrscheinlich gehören die Hexwerte zu was völlig anderen.
Wenn du wirklich cheaten willst, such lieber im Netz nach Programmen, die das für dich übernehmen.

MfG, Tomtitom
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
helium



Anmeldungsdatum: 10.09.2004
Beiträge: 397
Wohnort: Leverkusen

BeitragVerfasst am: 16.06.2005, 10:00    Titel: Antworten mit Zitat

anfänger hat Folgendes geschrieben:
Hab daran auch schon gedacht. Da sind 3 verschiedene Geld werte.(hab auch alle gleich verändert) Im arbeitsspeicher sind auch drei(mit ramcheat überprüft). Hab damit also alles richtig gemacht. Da hängt bestimmt was mit dem Datum zusammen. Beim Laden steht hinter der datei auch, wann sie gespeichert wurde. Das spiel überprüft bestimmt, ob das datum, wann gespeichert wurde, in der datei mit dem veränderungsdatum der datei (in windows) übereinstimmt. Wenn ich die datei mit dem editor öffne, NICHTS verändere und auf speichern klicke, dann kann der das nicht laden. Schwer zu erklären. durchgeknallt

BEISPIEL:
Code:

Datei gespeichert am 15.06.05 um 14:30:46 (datum in der datei gespeichert)
Datei verändert am 15.06.05 um 14:44:13 (datei-eigenschaften-datum)

Spiel überprüft datum a mit datum b. Sie sind in diesem Fall nicht gleich, also wird der Spielstand als beschädigt angegeben.


So. Jetzt müsste man das besser verstehen. grinsen


Du hast nicht vestanden, was Sebastian gesagt hat. Er meint (falls ich ihn richtig verstanden habe), dass aus allen Daten zusammen (nicht nur aus dem Geldwert, denn das wäre schwachsinn) ein Hash-Wert berechnet wird und der wird dann auch noch mitgespeichert. Wenn du die irgendwelche Daten veränderst passen sie nicht mehr zum Hash-Wert.
Wenn du nicht zufällig auch noch weißt wie der Hashing-Algorithmus aussieht, welche Daten er genau berücksichtigt und wo er steht, dann hast du pech gehabt (vorrausgesetzt es wird tatsächlich ein Hash-Wert verwendet).

Den selben Wert mehrfach zu speichern ist ziemlicher Unfug.


Und wie oft ein Wert im Arbeitsspeicher steht hat absolut nicht damit zu tun, wie oft er nachher in der Datei steht, des sei denn sie dumpen einfach einen Teil des RAMs, was IMO aber nicht sehr warscheinlich ist.
_________________
Bevor Sie aufhören sich körperlich zu betätigen sollten Sie ihren Doktor befragen. Körperliche Inaktivität ist abnormal und gefährlich für Ihre Gesundheit.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 16.06.2005, 12:52    Titel: Antworten mit Zitat

helium hat Folgendes geschrieben:
Du hast nicht vestanden, was Sebastian gesagt hat. Er meint (falls ich ihn richtig verstanden habe), dass aus allen Daten zusammen (nicht nur aus dem Geldwert, denn das wäre schwachsinn) ein Hash-Wert berechnet wird und der wird dann auch noch mitgespeichert. Wenn du die irgendwelche Daten veränderst passen sie nicht mehr zum Hash-Wert.
Wenn du nicht zufällig auch noch weißt wie der Hashing-Algorithmus aussieht, welche Daten er genau berücksichtigt und wo er steht, dann hast du pech gehabt (vorrausgesetzt es wird tatsächlich ein Hash-Wert verwendet).

Ja, genau - das hab ich gemeint.
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ChemicalWarfare



Anmeldungsdatum: 15.09.2004
Beiträge: 152

BeitragVerfasst am: 16.06.2005, 14:15    Titel: Antworten mit Zitat

anfänger hat Folgendes geschrieben:
Danke, aber es ist ja keine exe datei. Das ist ja eine *.b datei. Ein Hex-editor hab ich auch. Ich versuchs mal.

Mfg
Michael


Meinst du Notepad guckt nach der Endung und verändert die Datei absichtlich, wenn eine exe-Datei ist? mit den Augen rollen
Ich wollte dir damit zeigen, dass Notepad nicht das geeignete Mittel dazu ist.
_________________
Er ist ein Wunder!
Nein, er ist eine Missgeburt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 16.06.2005, 14:28    Titel: Antworten mit Zitat

Achso. Jetzt verstehe ich das auch mit dem Hash wert. Das mit dem Datum stimmt auch nicht. Hab das mal überprüft. Hab das mit dem HEX editor geöffnet und dann gespeichert. Die datei kann noch geladen werden. Wie kann man denn den Hashwert herausfinden??? Ich kann 2 dateien vergleichen, in denen NUR das geld und die Uhrzeit im Spiel anders ist.Ich hab mal 2 dateien verglichen, und da gibt es 25 unterschiede. Kann ich so herausfinden, wie das funktioniert??
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 16.06.2005, 14:29    Titel: Antworten mit Zitat

Disassemblier doch das Spiel! Zunge rausstrecken
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 16.06.2005, 14:46    Titel: Antworten mit Zitat

Ist das ernst gemeint???? Wenn das klappt dann würde ich das sogar machen. Auch wenn ich dafür das komplette Prog durchsuchen müsste. Zeit hab ich genug. Wenn das ernst gemeint war, wo bekommt man einen dissambler???

Mfg

Michael
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 16.06.2005, 16:02    Titel: Antworten mit Zitat

Das war durchaus ernst gemeint, eine andere Lösung, die ein wenig erfolgreich sein könnte, fällt mir da nicht ein, aber das Disassemblieren und Durchsuchen einer Software ist kein Zuckerschlecken, zumal du dazu sehr gut Assembler beherrschen solltest. Außerdem sind der DOS Assemblercode und das, was du aus einem Windowsspiel herausbekommst, zwei Paar Schuhe. zwinkern
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 16.06.2005, 16:15    Titel: Antworten mit Zitat

Tomtitom hat Folgendes geschrieben:

Ich vermute mal kein modernes Spiel sichert so simpel seine Spielwerte ab.

Mehr als man denkt. Ich habe schon oft Dateien mit etwa folgendem Inhalt gesehen:
Code:
 
struct player
{
 long money = 9999;
 int live = 100;
 [....]
};


Haha! Da kommt Freude auf! lächeln

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Xolios
aka Ray


Anmeldungsdatum: 07.12.2004
Beiträge: 589
Wohnort: Wildeshausen

BeitragVerfasst am: 16.06.2005, 16:58    Titel: Antworten mit Zitat

Hallo.

Mal so eine Stumpfe Idee:
Stell die Uhrzeit/Datum zurück happy

Oder such dir cheats oder nen Trainer.

Gruß
Ray
_________________
www.ray-earth.de
Anm.: Neue ICQ
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 16.06.2005, 19:04    Titel: Antworten mit Zitat

Die einzige Sicherung die R*(Rockstar) gemacht hat, ist der Hash-Check(heißt das so??) Das mit dem Datum ist ja falsch. Das hab ich ja jetzt gemerkt. Also Muss ich entweder den Hashwert finden und den RICHTIG verändern, oder in der *.exe datei die überprüfung löschen. Ich glaub, die datei ist ca. 10mb groß. In den Ferien hab ich aber 4 wochen zeit. Ist der code nach dem dissamblieren mit nem c++ code vergleichbar??? Wenn ja, dann hab ich das schneller. Ich kenn ein Paar, die sehr gut c++ können. Ich hol mir bald mal borland c++.

Mfg
Michael

EDIT: Ein trainer möchte ich nicht. Ich will nacher vielleicht mal den Missions-status verändern. Das geht nicht mit Trainern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 16.06.2005, 19:29    Titel: Antworten mit Zitat

anfänger hat Folgendes geschrieben:

Ist der code nach dem dissamblieren mit nem c++ code vergleichbar???

Öhm, ich würde sagen eher nicht. zwinkern

Hast du dir schonmal
unkommentiertes
Assembler angeschaut?

Viel Spaß zwinkern

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 16.06.2005, 19:32    Titel: Antworten mit Zitat

Ein Disassembler spuckt Assembler aus... zwinkern
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz