Thema: Cracking Tutorial by 0xC3

Ergebnis 1 bis 11 von 11

  1. #1
    Member
    Registriert seit Jul 2013
    Beiträge 75

    Cracking Tutorial by 0xC3

    Win32 Cracking Tutorial

    1.0 Einleitung

    Hallo liebe Scen’ler in diesem Tutorial möchte ich euch eine kleine Einführung in die Welt des Crackings geben. In diesem Tutorial werden wir die Anwendung Quick Screen Recorder cracken. Dafür brauchen wir den Quick Screen Recorder, OllyDebug und unser Gehirn.
    Ich habe den Quick Screen Recorder gewählt, da der Hersteller einfach ein OpenSource Product in leicht veränderter Form verkauft und ich finde, dass das einfach asosozial ist.

    2.0 Let’s crack!

    Als erstes öffnen wird OllyDbg und öffnen dort unseren Quick Screen Recorder (qsr.exe)
    Je nachdem welche Version ihr von OllyDbg habt kann das Laden etwas dauern.
    Das Ganze sieht dann so aus:


    Wir ihr seht steht bei mir oben CPU – main thread, module ntdll . Wenn das der Fall ist befinden wir uns noch nicht im Hauptmodul qsr und wir müssen einmal den Play Button drücken.



    Sieht schon viel besser aus, oder?
    Im nächsten Schritt müssen wir nach Anhaltspunkten suchen, wo Funktionen liegen, die für die Aktivierung / den Registrierungscheck entscheidend sind. Ich habe mir die Software mal genauer angeschaut und festgestellt, dass zwei mal abgecheckt wird, ob die Software registriert ist. Einmal unter Help -> Register und dann wenn man auf den Record Button geht. Um jetzt Anhaltspunkte zu finden, werden wird erstmal uns alle String ausgegeben lassen. Dafür machen wir Rechtsklick in das Codefenster - > Search for -> All referenced text strings. Das Ganze sieht dann folgendermaßen aus:



    Hier sehen wir auch schon einen Interessanten String. Das wäre „You have already registred. Thank you.“ . Dieser String wird wie man sich jetzt denken kann ausgegeben, wenn man auf Help - > Register geht, die Software aber bereits registriert wird. Dort wo auf diesen String zugegriffen wird befindet sich also unsere erste Checkroutine. Also machen wir Doppelklick auf diesen String. Beim Code den wir dort sehen wird u.a. das Offset zu diesem String auf den Stack gepusht um die MessageBox vorzubereiten. Wir müssen jetzt den Teil der Ruotine finden, der überprüft, ob die Software aktiviert ist. Dafür gehen wir im Code erstmal etwas nach oben und halten ausschau nach sogenannten condtional jumps also JNE, JE usw.



    Aha? Das rot makierte sieht schon mal interessant aus! Man sieht, wenn man den Code sich genauer anguckt, dass ein Byte geladen wird und dieses dann auf 0 oder 1 getestet wird. Und im entsprechenden Fall die Funktion die sagt, dass wir bereits aktiviert haben übersprungen wird. Ich zitiere hier mal den entscheidenen Code.
    Code:
    mov al, byte ptr ds:[esi+44] ; Lade ein Byte von ds:esi+44
    test al, al ; überprüfe ob das geladene Byte 1 oder 0 ist
    je short qsr.00412073 ; wenn es 0 ist überspringe den folgenden code
    Wir werden jetzt zunächst den Befehl noppen d.h., wir ersetzen den Befehl mit sog. „No Operations“. Dadurch wird immer der Code ausgeführt, der sagt, dass wir bereits registriert haben. Wir doppelklicken auf „JE SHORT qsr.00412073“, geben dann nop ein und klicken auf Assemble. Um jetzt das Offset herauszufinden, vom dem das Byte geladen wird, setzen wir einen Breakpoint auf den Ladebefehl sprich „MOV AL, BYTE PTR DS:[ESI+44]“. Dadurch hält das Programm an, wenn dieser Code ausgeführt wird. Dafür machen wir einen Rechtsklick auf den Befehl -> Breakpoint -> Toggle . Jetzt führen wir das Programm aus, indem wir wieder auf den Playbutton drücken. Jetzt gehen wir im Menü auf Help -> Register. So, jetzt zeigt sich OllyDbg und das Programm ist erstmal gefreezt.



    Ich habe mal den für uns interessanten Bereich in Rot markiert! In den eckigen Klammern steht jetzt das Offset zu dem Boolean, der bestimmt, ob die Anwendung aktiviert ist, oder auch nicht! Als nächsten gehen wir jetzt zu diesem Offset. Dafür Rechtsklick im
    Codefenster -> Go to -> Expression. Dort werden wir jetzt einen Breakpoint on Memory Read setzen. Dieser bewirkt, dass das Programm vom Debugger angehalten wird, sobald von dieser Stelle gelesen wird. Dafür machen wir einen Rechtsklick auf unser Offset / Auf den aktuell ausgewählten Befehl, dann Breakpoint -> Memory, on access. Jetzt starten wir wieder das Programm und starten ein Aufnahme. Zuerst werden wir aber noch die Meldung sehen, dass das Programm bereits aktiviert ist :) Dann sieht OllyDbg in etwa so aus:



    Das ist also die Abfrage Numero Zwei. Wir ändern schnell das JNZ in JE und jetzt müssen wir das cracked Executable nur noch speichern. Dafür Rechtsklick -> Copy to executable -> All Modifications. Dann schließen wir das erschienene Fenster und speichern die Datei. Fertig!

    3.0 Schlusswort

    Ich hoffe das dieses Tutorial so manchem geholfen hat den Weg des Crackings zu verstehen!
    Dieses Tutorial ist © 2013 bei mir und darf nicht ohne meine Erlaubnis kopiert werden!

    Lg .text / 0xC3
  2. The Following 3 Users Say Thank You to 0xC3 For This Useful Post:

    Polymorphin (10. July 2013),shiggy100 (10. July 2013),Snify (11. July 2013)

  3. #2
    Junior Member
    Registriert seit Jul 2013
    Beiträge 3

    AW: Cracking Tutorial by 0xC3

    gutes Tutorial
  4. The Following User Says Thank You to 133TFoX For This Useful Post:

    0xC3 (11. July 2013)

  5. #3
    Junior Member
    Registriert seit Jul 2013
    Beiträge 11

    AW: Cracking Tutorial by 0xC3

    Verständliches Tutorial, auch geeignet für Anfänger.
  6. The Following User Says Thank You to BrainPain For This Useful Post:

    0xC3 (11. July 2013)

  7. #4
    Member
    Registriert seit Jul 2013
    Beiträge 75

    AW: Cracking Tutorial by 0xC3

    Vielen Dank für das Feedback ihr beiden!
    Ich habe mir viel Mühe gegeben :)
  8. #5
    Delphi Profi
    Registriert seit Jun 2013
    Ort USA
    Alter 23
    Beiträge 30

    AW: Cracking Tutorial by 0xC3

    Sehr gut, aber sag mal kannst du vielleicht ein komplettes Windows ASM Tutorial machen?
    Es gibt 10 verschiedene Arten von Menschen auf dieser Welt - die einen können das Binärsystem, die anderen nicht...
  9. The Following User Says Thank You to Snify For This Useful Post:

    Becks (11. July 2013)

  10. #6
    Member
    Registriert seit Jul 2013
    Beiträge 75

    AW: Cracking Tutorial by 0xC3

    Uff.. muss ich mal gucken :D Hab für ARM7 THUMB mal ein komplettes Tutorial geschrieben, dass war schon verdammt viel Arbeit :D

    Lg
  11. #7
    Delphi Profi
    Registriert seit Jun 2013
    Ort USA
    Alter 23
    Beiträge 30

    AW: Cracking Tutorial by 0xC3

    Uff.. muss ich mal gucken :D Hab für ARM7 THUMB mal ein komplettes Tutorial geschrieben, dass war schon verdammt viel Arbeit :D

    Lg
    [offtopic]Einfach nur masm32 tutorial mit windows Api. Einfach nur wie man variablen erstellt, Schleifen, Bedingungen, etc. Ich wuerds so gern lernen aber ich habs nie geschafft, weil ich einfach mit den Registern nicht klarkomme -.-[/offtopic]

    [topic] Geiles TUT! [/topic]
    Es gibt 10 verschiedene Arten von Menschen auf dieser Welt - die einen können das Binärsystem, die anderen nicht...
  12. #8
    Member
    Registriert seit Jul 2013
    Beiträge 75

    AW: Cracking Tutorial by 0xC3

    MASM kommt mir nicht ins Haus ;)
    Ich verwende am liebsten FASM :)
  13. #9
    Junior Member
    Registriert seit Jul 2013
    Beiträge 29

    AW: Cracking Tutorial by 0xC3

    Habs mal gebookmarked ;)

    Wollte mich schon länger mal mit sowas vertraut machen :)

    Lg,
    xxas
  14. #10
    Junior Member
    Registriert seit Jul 2013
    Beiträge 1

    AW: Cracking Tutorial by 0xC3

    Echt super tutorial. Hut ab.

    Aber eine frage hätte ich dennoch ich versuche gerade any video converter pro zu cracken, nun will ich das Programm einfrieren.

    Du hast da geschrieben:

    Jetzt gehen wir im Menü auf Help -> Register. So, jetzt zeigt sich OllyDbg und das Programm ist erstmal gefreezt.
    Ich finde dieses Help nicht und wenn das Help oben in der Liste neben Windwos gemeint ist, so habe ich keine möglichkeit Register auszuwählen oder das es mir auch nur angezeigt wird.

    Besten Dank für deine Antwort.

    eak disk
  15. #11
    Junior Member
    Registriert seit Jul 2013
    Beiträge 2

    AW: Cracking Tutorial by 0xC3

    Echt super tutorial. Hut ab.

    Aber eine frage hätte ich dennoch ich versuche gerade any video converter pro zu cracken, nun will ich das Programm einfrieren.

    Du hast da geschrieben:



    Ich finde dieses Help nicht und wenn das Help oben in der Liste neben Windwos gemeint ist, so habe ich keine möglichkeit Register auszuwählen oder das es mir auch nur angezeigt wird.

    Besten Dank für deine Antwort.

    eak disk
    Er hatte ja auch einen Breakpoint für gesetzt, um dann anschließend durch zu steppen.
    Mit Help->Register meint er die Funktion von dem Programm (QSR) nicht von Olly. Also -> geeignete stelle finden um nen BP zu setzen oder Execute till user code.

    mfg
  16. The Following User Says Thank You to ih8u For This Useful Post:

    0xC3 (26. July 2013)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein