Created by Viper Zx



Dies ist mein erstes Tutorial was ich schreibe (bin auch noch ein absoluter Anfnger)um 
anderen eine Mglichkeit zu geben denn Ablauf wie man ein Prog Crackt nachzuvollziehen.


Zielprogramm :Hypersnap 3.30
Schwierigkeit:Leicht bis Mittel
Tools        :Wdsam32 8.93 ,Softice 3.23 NICHT 3.24  ,Hview 6.03, Sice-Tool

Tools bitte im Netz suchen viele Adressen wechseln oft so das ich hier keine 
Angaben machen will.

Als erstes rufen wir das Prog auf um zu sehen was passiert (was zu cracken ist).
Das Prog wird aber garnicht gestartet das lt auf eine Anti Debugger Routine schlieen.
Wenn wir Softice nicht laden startet es,wir brauchen Sice aber. WAS TUN????
Mann kann jetzt versuchen diese Abfrage auszuschalten (hshelper.dll) aber es geht
einfacher wir brauchen Sice-Tool.
Diese Tool (es geht nur mit Version 3.23 von Softice)versteckt Sice im Speicher
so das Hypersnap (ander Progs mit Anti Routinen natrlich auch ;-))denkt es ist
kein Debugger geladen.Aber unser "Werkzeug der Hlle" ist scharf.
So Prog starten (jetzt geht es auch mit Sice :-))da fllt uns als erstes der NAG beim starten auf.
Desweiteren erzeugt das Prog wenn man sein Bild gespeichert hat einen Schriftzug (Haupteinschrnkung des Progs)
auf dem Image der natrlich sehr strend wirkt.
Es gibt auch die Mglichkeit einen Code einzugeben um das Prog zu registrieren.

ABER UM EINE GLTIGE SERIALNUMMER MIT SOFTICE HERAUSZUFINDEN BIN ICH NOCH ZU WEIT AM
ANFANG MEINER "CRACKERKARRIERE" ;-).

Also laden wir Hypersnap (hsdx.exe) erstmal in Wdsam32 und schauen unter String Ref.
nach ob wir etwas sehen was im "StartNag" vorkommt, finden aber nichts dafr sehen wir die
Zeichenfolge die auf die Images "geklebt" wird.



Image captured with..
Get a free temporary license
...etc. 

Wir klicken auf "Image captured with" und werden an die betreffende Stelle gebeamt.
Hier wird also bei nicht Registrierung des Progs hingesprungen und die "beklebe Routine" ausgefhrt.

Die ganze Routine beginnt sehr weit oben mann tested das mit dem Debugger von Wdsam32
auf Load           gehen unter String Ref. wieder auf Image cap... klicken
um wieder an unsere Stelle zu gelangen.
Jetzt hochscrollen 5-10 Zeilen und mit (F2) einen Break setzen.
Das Prog starten (F9)ein Image capturen (Strg+Shift+F) und das ganze unter
sdsdg  speichern und prompt halten wir an unserm Breakpoint an.
Jetzt setzen wir wieder einen Breakpoint weiter oben usw. bis unser
Break nicht mehr angesprungen wird, wenn das passier wieder runter solange bis
er wieder angesprungen wird usw.

Hier sieht man auch das dieser Call von mehreren Stellen angesprungen wird!!!
Mann knnte jetzt alle Sprnge hierher auspatchen ist aber zu aufwendig.
 
Die Anfangsstelle ist also:0040cc8a .......           ;hier fngt die ganze Routine mit dem "bekleben" an                                               gefhrt


Wir setzen einfach bei 0040cc8a ein Ret.
Jetzt wird der Call gleich wieder beendet ohne seine Aufgabe ausgefhrt zu haben.

Wir htten somit den HauptNag entfernt.

Der Startnag ist im Prinzip relativ "einfach" zu umgehen.
Wir lesen die hsdx.exe in Wdsam32 ein und gehen dann auf Load Process,
jetzt drcken wir Autostep Over (bedeutet es werden alle Calls bergangen, das heit sie werden normal
ausgefhrt nicht Zeile fr Zeile) das Prog luft ab und bleibt irgendwann auf einem Call stehen 
und wir sind in Hypersnap und sehen denn Nagscreen ;-).
Jetzt gehen wir zu dem Call an dem Wdsam32 gehalten hat und drcken die Pfeiltaste nach rechts wir
gehen in den Call hinein.Wir schreiben uns die Adresse wo sich unsere Balken befindet auf.
Jetzt Terminieren wir das Prog und rufen es wieder auf springen mit Goto an die aufgeschriebene Adresse
setzen einen Break (F2) drcken auf Run (F9) das Prog hlt am Break jetz wieder auf Autostep Over.
Bis wir wieder ber einen Call kommen wo Wdsam32 hlt und das Prog geladen ist.Wir gehen wieder in
den Call rein (Pfeiltaste nach rechts)schreiben uns die Adresse auf Terminieren das Prog laden es neu 
setzen denn Break auf die Adresse drcken Run (F9) bis zum Break wo wir mit Autostep over weitermachen
diese Prozedur wiederholen wir solange bis ber denn Calls interesannte Sprnge (JNE,JE,etc.)auf-
tauchen.Ab da geht es nach Trial and Error weiter ;-).
Der Sprung ber einen Call wird gebreakt (F2) und wenn das Prog dort hlt patchen wir direkt im Speicher. 
(Patch Code von Wdsam32)
Mann gibt am besten denn gegeteiligen Jump ein z.b JNE wird zu JE usw.
dann lt man das Prog laufen, ist der NAG weg SUPER ist er es nicht gehts weiter im Call.
(Diese Methode wirkt zwar sehr umstndlich aber Progs die beim starten gleich einen NAG zeigen
sind damit (wenn sie mit Wdsam32 geladen werden knnen "unverschlelt","ungepackt")relativ einfach
zu bezwingen.

Bei unserm Prog ist das die Stelle: "0041cff3" wo wir einen Jmp setzen

Der Anfangs Nag wre somit auch beseitigt.

Also Hview an die Sachen gepatcht das Prog gestartet ,doch welcher Schock es kommt 
irgendeine Fehlermeldung der hshelper.dll.
Das ist ein sogenannter Prfsummencheck, die hshelper.dll checkt vor dem Start
von Hypersnap ob die Exe manipuliert wurde wie es in unserem Fall ja geschehen ist.

Was nun!!!!

Der Check mu weg das geht aber nur mit Softice (Anti-Debugger Routine haben wir ja verarcht ;-))
Wir setzen einen BPX READFILE (Readfile liet ein File ein in userem Fall hsdx.exe und prft
ob sie gndert wurde oder nicht)in Softice und starten Hypersnap.
Softice kommt angesprungen wir drcken F11 und sehen das wir in der Mfc30.dll sind
also weiter F5 F11 solange bis wir in der hshelper sind.
Wir kommen an die Readfile Stelle von hshelper.dll.
Es gibt eine zweite Readfile Stelle in der hshelper.dll dort wird es erst interessant. 
Man kommt mit F5 am schnellsten dorthin.
Dort lschen wir alle Breaks (bc*) und setzen mit F9 auf den Readfile Call einen Break.  
Jetzt verlassen wir Softice und tauschen unsere gepatchte Exe durch eine
noch orginale starten das Prog. Softice kommt angesprungen (bei Readfile) jetzt tracen
wir mit F10 Zeile fr Zeile durch denn Code und alle JNE,JE,etc. schreiben wir auf ob
sie springen oder nicht wenn wir dann wieder im Prog (Prfsummencheck ist vorbei)sind 
die orginal exe wieder durch die gepatchte ersetzen und starten durch denn Code tracen (F10) 
und alle Jumps vergleichen. An stelle "63021339" ist es dann soweit hier wird bei der 
orginalen exe gesprungen doch bei unserer gepatchten nicht also Adresse merken 
Hview an, hshelper.dll laden und die Stelle auf Jmp ndern.

Jetzt die gepatchte hshelper.dll und hsdx.exe ber unsere Installation von Hypersnap kopieren
und Starten. 

Es geht der Prfsummencheck ist tot und unsere Patches in der Hsdx.exe sind aktiv.

HYPERSNAP 3.30 IST GECKRACKT!!!!!


Fragen???? Einfach schreiben.


E-Mail:Viperzx00@gmx.net
 


  
    
 
                            

