August 1999

"Goldwave V4.02"

Win Code Reversing

 

vom Instructor

 

Der Register - Trick

   

Programm-Name:Goldwave.exe

Programm-Typ:    Grafik -Tool

          Programm- URL:   Hier

          Programm-Größe: 1,21MByte  

                    Tools:                        W32Dam V8.93

Level

Leicht (  )  Mittel ( X )  Schwer (   ) 

 


 

Die Einleitung

 Der Autor von Goldwave V4.02 sagt:
 
"Goldwave V4.02 " ist ein Sound Editor, Player, Rekorder und Konverter. Mit ihm kann man Sound Dateien für Webpages und Windows Sound erzeugen. Eine Vielzahl von Effekten und Editiermöglich -keiten sorgen für eine professionelle Sound Produktion.

Das Sicherungssystem

 
"Goldwave V4.02 " ist ein  Sharewareprogramm, mit eingeschränktem Funktionsumfang . Um das Programm zu registrieren werden wir nach folgenden Angaben gefragt:

First Name:

Last Name:

Password:

Die Lösung

 
Wir  gehen in den Registrierungsbildschirm und geben die geforderten Angaben ein, wie nicht anders erwartet erhalten wir eine Messagebox mit einer Fehlermeldung. Wir notieren uns Titelzeilentext  und Text der Meldung.

Fehlermeldung

Wenn wir das getan haben, starten wir ein Deadlisting mit W32Dasm von der ' Goldwave.exe', suchen in den SDR nach dem Text der Fehlermeldung und klicken doppelt auf diesen Eintrag, wir landen bei diesem Code.

Codeauszug 1

Wir sehen in roter Schrift  unsere Fehlermeldung. Um zu sehen, woher die  Fehlermeldung aufgerufen wurde, scrollen wir nach oben bis Adresse 0042D3C3.Wir sehen den Sprung in ein Unterprogramm gefolgt von einer anschließenden Prüfung ( JNE...)  Diese Routine ist typisch für eine Registrierungsabfrage. Im Unterprogramm wird oftmals die Serial erzeugt und mit unserer gefakten verglichen. Bei Übereinstimmung wird in diesem Fall das Register al mit 1 gefüllt, aus dem Unterprogramm zurückgekehrt und durch JNE geprüft.

Eine Änderung des JNE in JE ist nicht immer erfolgsversprechend, weil oft  weitere interne Abfragen erfolgen. Das sehen wir in unserem Beispiel in dem folgenden Codeauszug.

Durch den Call  0042CC04 wird hierhin gesprungen, wenn wir nach oben sehen, ist eine Referenz zu 2 weiteren Adressen vermerkt. Das heißt, es wird von 3 Stellen aus überprüft, ob die Seriennummer stimmt.

Wenn wir jetzt bei Adresse 0042D3CB den JNE in JE ändern, wird nur 1 Überprüfung ausgeschaltet. Was müssen wir also tun? Da das Tutorial für Newbies gedacht ist, suchen wir  also jetzt nicht die richtige Serial.

Wir sorgen dafür, daß al immer 1 enthält, indem wir bei Adresse 0042CC04 mov al, 1 und dann ret eingeben. Das sorgt dafür, daß al=1 ist und dann aus dem Unterprogramm zurückgekehrt wird. Die Bedingung JNE... wird dadurch erfüllt und unser Programm ist registriert.

 

Das Finale

Das war's  schon wieder, bei Adresse 0042CC04 mov al,1 / ret / eingeben und das Programm ist registriert.

-- Mein Dank geht an 'Sandman' für seine hervorragenden Tutorials --


Tutorial von:          Instructor
Page gestaltet:      23.August 1999