Knacken - die Kunst Forschung Assembler-Code, um eine Lücke zu finden, gefolgt es bei der Analyse und Einbruch
Einführung in die Rissbildung
Anfang
Disappoint diejenigen, die denken, dass Sie Knacken tun können, nur ohne bestimmte Kenntnisse, Fähigkeiten und Ausdauer. Nehmen Sie nicht nur eine Umdrehung um die erforderliche Software herunterladen zu hacken und das Programm zu knacken. Denken Sie nicht, dass die Programmpausen für 5 Minuten (auch wenn Sie bereits Erfahrung und Schutzprogramm 1 haben, ist es möglich, noch mehr in kürzerer Zeit).
Also, wenn Sie einen großen Wunsch zu Rissbildung zu lernen hatte, bereit, eine Menge von Dokumenten zu lesen, viel Zeit zu verbringen, dann ist dies der Artikel für Sie.
Um zu beginnen müssen Sie die Grundlagen der Montage zu studieren, brauchen nicht einmal zu lernen , nur zu schreiben , müssen Sie den Wert von Funktionen und Befehle auf sie das Programm wissen müssen den Code lesen können. Glauben Sie, ob Sie ein Buch in Spanisch, ohne sie aus dem Material von Asma zu wissen, raten Sie lesen können, zu lesen: Kalaschnikow-Newsletter (http://www.Kalashnikoff.ru), "Assembler IBM PC" Yurov, aus dem Artikel "Assembler für Cracker ' s "von Dr.Golova und" Cracking for tots "von Sprung.
Nachdem das Material beherrschen, müssen Sie den Zweck der Funktionen kennen, ein wenig Verständnis für die assemblerskom Programmcode. Verstehen Sie, dass jedes Programm in einer beliebigen Programmiersprache geschrieben, an den Prozessor übertragen wird als native Code verteilte Verarbeitung, zur weiteren Verarbeitung und Ausführung von Funktionen in sie eingebettet. Maschinencode für sie umgewandelt in lesbaren Assembler werden. Sein etwas, das wir, zu ändern, mit speziellen Programmen anzeigen können. Aber die Veränderungen sind nicht möglich, wenn upakovana.Upakovka Software-Programm gemacht seine Größe zu reduzieren und zum Schutz vor Manipulationen (zB UPX, Aspack und viele andere).
Sorten und Mission Programme
(OllyDBG)
(KWdsm)
(QUnpack)
(Hiew)
(TPE)
All diese Software kann separat heruntergeladen werden, aber es ist eine kombinierte Version, ist es CrackersKit (Version zum Zeitpunkt des Schreibens: 1.1, Gewicht: 7 MB) genannt Sie es von cracklab.ru herunterladen können fast alle diese Programme gibt (oder deren Äquivalente). Sobald wir die Grundkenntnisse in diesem Bereich haben, und wir haben das Recht , die Software zu studieren ist in der Art der Software zu verstehen:
Shareware - Shareware
Freeware - freie Software
Adware - Werbeprogramme bezahlt
commercialware - zahlen!
Spende ware - Gebühr, falls gewünscht
Das Ziel - die Art von Programm Shareware, Ad-ware und kommerzielle Ware.
Toolbar und Olly DASM
Ich glaube, Sie haben bereits zumindest einige Erfahrung mit den Alliierten (wenn nicht Sie den Artikel Olly Debugger AZ cracklab.ru lesen kann)
Lassen Sie mich die Debugger-Funktionen erinnern, mit denen wir arbeiten:
Immer im Blick muss CPU sein (Hauptfenster Verbündeter), Haltepunkte und Patches.
CPU-Fenster:
Wir werden am Ziel grundlegendsten Funktionen DASM verstehen.
Um den Sicherheitscode an den Anfang zu analysieren zu finden.
Suchen Wie um den Code zu überprüfen (mit OllyDGB und kWdsm)
Das Ziel der Suche - Suche und Änderung von beliebigem Code oder Valin die Seriennummer zu finden. Search Validierungscode für Hacking-Programme erforderlich.
Der Hauptzweck dieses Codes:
1, um die Gültigkeit der Seriennummer (die eingegebenen Daten in der Eingabemaske CH) zu überprüfen
gehen 2 an die Adresse, wenn es richtig / falsch ist
3 Bericht keine / korrekte Registrierung
Die wichtigsten Möglichkeiten, den Bestätigungs - Code zu finden:
1 Stützpunkt (intermodularen Aufruf)
2 referenzierten
3 Suchfenster Mittel (Dump) Speicher
4 Suche in dem Stapel
5 Suche mit kWdsm
Put kann ein Haltepunkt entweder durch
_komandnuyu Linie, zum Beispiel:
bpx MessageBoxA
bpx - Team Breakpoint
MessageBoxA - Funktion, die Breakpoint gesetzt wird
Zweck der Funktionen finden Sie in Referenzhandbüchern auf WinAPI zu finden (cracklab.ru)
entweder durch
_poisk Zwischenmodul-Aufruf (intermodulare Anrufe) wie zum Beispiel:
Wir finden MessageBoxA Funktion dann mit der rechten Maustaste, und bei jedem Aufruf MessageBoxA Set Haltepunkt wählen
In dieser Forschung verwendet, um eine Phrase, die beispielsweise angezeigt, wenn eine falsche Seriennummer eingeben. Führen Sie das Programm, geben Sie die CH-Programm schwört, dass CH nicht wahr ist (zB als: Falsche SN Versuch wieder!) => Für die Suche und wird ispolzovat diesen Satz weiter wir in die alle referenzierten Textzeichenfolge gehen (die für die in der Registerkarte Suchen ist) und suchen Sie nach dem Begriff .
Beispiel Hacking-Programme mit verschiedenen Arten von Schutz
1 Form der Einführung von CH
2 Label im Programm (zB noch nicht registriert)
Programm für Forschung, oder nehmen Sie das Magazin mit Rohlingen (SPs, ein Hacker, Glücksspiel) oder von Websites wie softodrom.ru usw. (dort suchen sharovanny Software (zB Art der Shareware) und erkunden).
Theoretische Bruchplan:
Lassen Sie uns direkt mit dem Code-Suchprozess und dessen Bruch beginnen, zeige ich Ihnen die Schritte am Beispiel EscapeClosePro
Alle folgenden Schritte werden empfohlen, mit mir zu tragen zusammen, da es schwierig ist, durch das Lesen des Materials nur wahrzunehmen. Wenn Sie immer noch nicht verstehen, wie ich in der Lage war, auf Crackme möglich aus dem Phantom zu üben und Handwerk (ngh.void.ru/soft/d/crackme.rar; ngh.void.ru/soft/d/craft1.rar)
EscapeClosePro
Die Schutzmethode: CH, ist noch nicht registriert Inschrift im Programmfenster
Der Packer / Beschützer: keine (und wir wissen, dass diese dank PEiD, und wenn das Programm war voll, man musste es nur unter Entpacker zu finden)
Kosten: 100 Rubel
Hacking Suche nach CH:
Diese Methode der Hacking ist dadurch gekennzeichnet , dass die Herausforderung besteht darin , den Verifizierungscode , um es zu finden , indem Sie den Haltepunkt auf dem Befehl sein können Sie wollen, oder die Referenz einer Textzeichenfolge zu sehen, oder einfach nur die zerlegten Code des Programms anzeigen und eine gültige Seriennummer finden.
Name vizor
CH vizor
0040262E Programm hielt an der Adresse an dieser Adresse Aufruf Befehl befindet sich mit diesem Befehl (in diesem Fall), um den Text angezeigt: Falscher Code Beachten Sie die Dump-Box (die Haupt-CPU-Box), versuchen Sie einige interessante Dinge zu finden, indem Sie einfach den Code sehen zu blättern und bei 0012F3D0 einige Zahlen mehr als 10 Zahlen auf einen Blick: 56C520AE713B563D5119 gibt es einen Verdacht auf Herzinsuffizienz, einem Test und einem bummer.
niemand verbot mehrere (auch alle) Möglichkeiten , sofort zu suchen
Jetzt einen Haltepunkt setzen nicht auf die Nachricht selbst, und der Auswurfbefehlsphrase (Falscher Code!) Push.Snova dh ein Formular ausfüllen, die in Ordnung ist, beendet das Programm bei 00.402.620 (wo PUSH 0) .Am unseren Blick auf das Speicherabbild drehen und wir sehen, dass es:
0012F438 004088E8 ASCII "9B2BC2C55272E0C32B44" << Verdacht CH 0012F43C 0012F518 << hier unsere Haltepunkt 0012F440 00.402.200 EscapeCl.00402200Testing gefunden us 1 mehr CH für die Gültigkeit. (Name vizor sn 9B2BC2C55272E0C32B44) und Danke für die Registrierung!
Ändern Ausgangsfunktion:
Ändern der Ausgangsfunktion, die wiederum wird durch die Suche nach Validierungscode gekennzeichnet, ändern Sie es in einem beliebigen zyklischen dh auf , so dass für alle eingegebenen Daten werden prüfen , selbst registriert.
Wieder, wie vor den Haltepunkt auf MessageBoxA gesetzt, tezhe Datenfeldnamen eingeben, CH, dort zu stoppen. Erst jetzt bewegen wir uns weiter oben in der Suche Übergang (Jampa, Sprung) .PO die Art und Weise analysieren bis alle Übergänge. Eine Förderung besteht aus so, wenn eine solche Funktion die Meldung angezeigt werden 5 grob an der Adresse ist, deren Prüfung über diese Adresse auftritt, weil es immer oben Ergebnis (das Konzept des Stapels) getestet wird.
Scrolls oben zu finden unter:
004025CD> 85C0 TEST EAX, EAX 004025CF. A3 58AF4000 MOV DWORD PTR DS: [40AF58], EAX 004025D4 74 4A JNE SHORT EscapeCl.00402620Analyse JNE 00402620 Übergang, achten in erster Linie Jampa dh 00402620.Smotrim zu adressieren, die an diesem Ort ist, sehen wir, dass die Nachrichten, dass nezaregistrirovanna.Teper Programm schließen, wenn wir den Übergang JNE (Sprung, wenn nicht gleich, dh Sprung ändern wenn nicht gleich) JE (Sprung, wenn gleich dh Sprung, wenn gleich) .Dvoynym Sie mit der linken Maustaste klicken Sie auf:
004025D4 74 4A JNE SHORT EscapeCl.00402620und ändern Sie die JNE auf JE.Teper eingegeben jede CH-Programm hält für die richtige (natürlich zusätzlich zu dieser HF Und dies geschieht aufgrund der Tatsache, dass es Ausgabefunktion geändert wird, so dass das Programm immer ein positives Ergebnis in einem der eingegebenen Daten zurückgibt.
Aber es ist nicht alles, es nicht notwendig ist, sich zu beeilen und Patch-1 laufen, die Ausgabe dieses Programms. Daran erinnern, was andere Möglichkeit, das Programm zu schützen, verwendet? rechts, einfach auf den ersten Blick noch nicht registriert Schild im Fenster. Kurz nach dem Programm, suchte sie, ob ein Neustart zu ändern, ist die Inschrift auf etwas anderes, und wenn ja, es registriert fühlt, aber wir haben eine solche nebylo so nicht alles getan wird, noch weitergehen.
Wir setzen einen Haltepunkt auf den bereits überbelichtete MessageBoxA.
Wir beginnen zu sprechen, wenn das Programm nicht registriert ist, dann kann es die Inschrift noch nicht registriert deshalb irgendwo im Code zu sehen ist, ist es byt.Nachinaem Programm suchen sollte, aber vor diesem nur proskrolim Code und sehen es .. nach unten zu scrollen und zu sehen:
0040265F. 85C0 TEST EAX, EAX << Vergleichen von Daten in den Registern 00402661 74 23 JE SHORT EscapeCl.00402686 << Übergang 00.402.663. 8B5424 70 MOV EDX, DWORD PTR SS: [ESP + 70] 00.402.667. 68 64724000 PUSH EscapeCl.00407264; / Text = "unregistrierte Version!" ... 00402686> 8B7424 70 MOV ESI, DWORD PTR SS: [ESP + 70] 0040268A. 8B3D 70714000 MOV EDI, DWORD PTR DS: [<& USER32.SetDlgIte>; USER32.SetDlgItemTextA 00.402.690. 68 54724000 PUSH EscapeCl.00407254; / Text = "Hier zu:""SetDlgItemTextA - Titel oder Funktion des Textes im Fenster"
Und das ist die Botschaft. Erste Code-Analyse. Wir sehen ein Standard-Design und überprüfen den Inhalt der Register Funktion Jampa. JE 00402686 - JE - Verschiebung auf den Code. Wir sehen uns an, was auf 00402686 und es gibt eine Nachricht, die an Programm RegiRegistered: => wenn Sie zu JE JNZ Programm lyudom Szenario ändern hält sich für registrierte und schrieb darüber in seinem Hauptfenster.
So ändert diese beiden Funktionen das Programm immer registriert werden und alle diese balgodarya um die zweiten Bytes im Code geändert.
Patching:
Patching-Programm wird direkt nach dem Hacking-Programm gemacht.
Um unser experimentelles Programm zu flicken geändert werden:
Adressänderung Funktion Funktionsadresse Übergang 004025D4 JNE 00402620 JE 00402661 00402686 JE JNEFür das Patchen verwenden Hiew, hiew'a von Befehlen finden Sie in meinem Artikel (ngh.void.ru/lec/crack.html) gefunden werden.
Bevor wir Programm machen das Patchen müssen einen Ordner erstellen (wo der Rücken, im Stammverzeichnis sein kann), und kopieren Sie die exe EscapeClosePro, falls Datei, wenn wir etwas nicht wahr gemacht haben. Sobald wir kopiert haben, laufen Hiew finden und öffnen Sie sie in unserer Datei (EscapeClosePro.exe) .Auf dieser Stelle möchte Ich mag ein wenig über die grundlegenden Optionen hiew'a.V diesem Menü wählen Sie Decode zu sprechen.
Das Hauptfenster hiew'a:
Laden Sie unsere Datei, EscapeClosePro.exe in Hiew, auf der Suche nach einer Phrase (F7) oder an (F5) .Ich würde darauf hingewiesen werden, für die Phrase zu suchen, so drücken Sie F7 und geben Sie die registrierte zu: nach diesem Begriff zu finden, lassen Sie uns daran erinnern, was Schlussfolgerungen, die wir Sie müssen Patch:
004025D4 JNE 00402620 JE 00402661 00402686 JE JNEPatches. Nach diesem Patch (erinnere, sagte ich, dass wir die EXE-Programm Dateien und Patches zu kopieren müssen) Ente hier, nachdem wir ihn pereminuem zB p.exe und unveränderte Kopie der Programmdatei gepatcht, dh wir jetzt in den Ordner 2-Dateien haben, 1 propatchiny und andere deflotovy programnyy.Eto wir brauchen einen Patch über patchmeykera tpe zu machen:
Um einen Patch zu erstellen, ist in diesem Fenster notwendig in Form Original-Datei (das Original, dh unmodifizierten / ungepatchte) wählen ungepatchte Datei und gepatchten Datei-Box entsprechend fayl.Posle tpe im Hauptfenster gepatcht, Ausfüllen von Formularen, die den Patch erstellt, und sayt.I Registerkarte Datei, wählen Sie patcha.Posle speichern zu dem gewünschten Namen zu erstellen und alle Patch ist fertig!
Ich hoffe, dieser Artikel hat Ihnen geholfen, die Grundlagen der Kunst krekerskogo zu lernen, hat einige Ihrer voprosy.Dalshe alles wird viel interessanter, mehr Praxis sein, und sehen Sie alle erfolgreich sein müssen.
ps diesen Artikel gibt es eine Anwendung in Form von Veda-Rollen EscapeClosePro auf verschiedene Arten Programm Hacking.
ps danken Armiolu für das, was mich dazu veranlasst nicht der richtige Weg, bei der Entwicklung von unverständlichen Dinge zu mir geholfen)
Durch Rel4nium (ngh.void.ru)
Kommentare
im Auge kommentierte halten , dass der Inhalt und der Ton Ihrer Nachrichten , die Gefühle von echten Menschen verletzen können, Respekt und Toleranz gegenüber seinen Gesprächspartnern, auch wenn Sie Ihr Verhalten in Bezug auf die Meinungsfreiheit und die Anonymität des Internets, ändert ihre Meinung nicht teilen, nicht nur virtuell, sondern realen Welt. Alle Kommentare werden aus dem Index, Spam - Kontrolle versteckt.