| 
| Autor | Beitrag |  
| root_at_localhost 
          Beiträge: 191
 
 
 
 
 | 
Verfasst: Sa 10.06.06 00:11 
 
Man kann ja auch bei Start des Programms das PW überprüfen und wenn falsch aussteigen. Später im Programm prüft man noch ein paar mal, wenn das Programm nicht modifiziert wurde is das dann immer OK, aber PW-Testroutinen zu finden, die das Programm nach 10-15 Minuten Betrieb, bei Speichern von Dokumenten, etc. mit einer nichtssagenden Access-Violation abstürzen lassen is doch schon unangenehmer... |  |  |  
| BenBE 
          Beiträge: 8721
 Erhaltene Danke: 191
 
 Win95, Win98SE, Win2K, WinXP
 D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
 
 | 
Verfasst: Sa 10.06.06 00:21 
 
Lasst doch einfach über den Prüfroutinen Code nen brauchbaren Obfuscator drüberlaufen ... Weiterhin mitten im Programm als Code-Blöcke die CRCs verstecken Back-Referenz-JMP-SHORTs einbinden, die Cross-Procedure Inter-Instruction die Proceduren anspringen ... (Ist aber leider nur für die Schutzroutinen machbar, da ansonstn das gesamte Programm ASM sein müsste) ...
 Also in der Art: Wenn man eine Routine anspringt an Label A wird Pi berechnet, springt man sie dagegen an Labelö B an, wird e berechnet und wenn man sie an Label C anspringt und das richtige PW angegeben hat, erzeugt der Source dieser Procedure einen SMC-Block im RAM, der den Anwendungssource im RAM entpackt ... Ach ja: Mit entsprechend vielen asm DB $CC end s dazwischen, schön vielen Quersprüngen in der Routine und auch sonst dem besten C-Style (Spaghetti-Source mit Unlesbarkeitsgarantie) und man sollte bei Release-Zyklen von 14 Tagen, die jeweils nominale Enhancements enthalten, keine Probleme mehr mit Crackern haben    Ach ja: Die korrekte Prüfsumme des Serials ist dabei in dem SMC-Block so unterzubringen, dass eine Falscheingabe die Ausführung des MOV CR0, EAX-Befehls hervorruft oder per SSDT-Hook ein Bluescreen on Demand (gibt's echt!!! Ist ein Feature von Windows!!!) initiiert wird    Lassen wir also der kreativen Ader kurz freien Lauf und sehen dann: Noch schöner wird das ganze, wenn man sich Techniken aus der Demo-Szene zu nutze macht, und nicht die eigentlichen Programmdaten speichert, sondern die Aufbau-Vorschrift um die gewünschte Datenfolge zu generieren ... Heißt: Wenn man in 3D nen Würfel darstellen will, speichert man nicht die 8 Eckpunkte, sondern eine Vorschrift, wie man diese 8 Eckpunkte erhält    Naja, die Liste ist fortsetzbar    Wichtig ist nur, dass jegliche Sources selbstmodifizierend und vom PW bzw. dessen Prüfsumme abhängig sein müssen ... Eine Verteilung der Aufrufe für die Prüf-Codes auf möglichst viele Stellen ist ratsam *g*_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
 |  |  |  
| root_at_localhost 
          Beiträge: 191
 
 
 
 
 | 
Verfasst: Sa 10.06.06 00:29 
 
	  |  BenBE hat folgendes geschrieben: |  	  | ... dass eine Falscheingabe die Ausführung des MOV CR0, EAX-Befehls hervorruft oder per SSDT-Hook ein Bluescreen on Demand (gibt's echt!!! Ist ein Feature von Windows!!!) initiiert wird  | 
 Das interessiert mich jetzt, was bewirkt MOV CR0, EAX und was ist ein BSOD on Demand, bzw. wie und wozu generiert man sowas?? |  |  |  
| BenBE 
          Beiträge: 8721
 Erhaltene Danke: 191
 
 Win95, Win98SE, Win2K, WinXP
 D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
 
 | 
Verfasst: Sa 10.06.06 00:37 
 
	  |  root_at_localhost hat folgendes geschrieben: |  	  | 	  |  BenBE hat folgendes geschrieben: |  	  | ... dass eine Falscheingabe die Ausführung des MOV CR0, EAX-Befehls hervorruft oder per SSDT-Hook ein Bluescreen on Demand (gibt's echt!!! Ist ein Feature von Windows!!!) initiiert wird  | 
 Das interessiert mich jetzt, was bewirkt MOV CR0, EAX und was ist ein BSOD on Demand, bzw. wie und wozu generiert man sowas??
 | 
 MOV CR0, EAX wird genutzt, um zwischen Real Mode und Protected Mode hin und Herzuschalten ... Die Erwähnung von SSDT-Hooks an dieser Stelle ist notwendig, da dieser Befehl nur auf Ring0 (Kernel-Modus unter Windows) ausgeführt werden kann.
 @BSOD on Demand: Zum Testen von Treibern unter Windows, kann man über die Registry eine Tasten-Kombination (IIRC Strg+Alt+Break\Break) aktivieren, die dafür sorgt, dass Windows einen Bluescreen auslöst ... Damit kann man bei Treibern die Fehlerbehandlung testen ... (Ich glaub, M$ hat dieses Feature nie selbst genutzt ...)_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
 |  |  |  
| root_at_localhost 
          Beiträge: 191
 
 
 
 
 | 
Verfasst: Sa 10.06.06 22:28 
 
Danke für die Infos, wieder was gelernt... |  |  |  
| Hack Gott 
          Beiträge: 409
 
 Windows Vista
 Delphi 2005 Personal, Delphi 7
 
 | 
Verfasst: Fr 07.07.06 15:04 
 
HÄHÄ
 Ich hab ne neue Idee. Schauts euch doch mal an, ich denke das hier zu knacken ist ein Ding der unmöglichkeit (denke/hoffe ich zumindestens).
 
Einloggen, um Attachments anzusehen!
 
_________________ "Je mehr Käse, desto mehr Löcher; Je mehr Löcher, desto weniger Käse. Daraus folgt: Je mehr Käse desto weniger Käse!"
 |  |  |  
| Hack Gott 
          Beiträge: 409
 
 Windows Vista
 Delphi 2005 Personal, Delphi 7
 
 | 
Verfasst: Fr 07.07.06 15:08 
 
Achja, für die jenigen dis unbedingt schaffen wollen startet es einfach mit dem paramenter schwach     dann werden die punkte falls sie richtig sind markiert.
 Wenns richtig ist öffnet sich ein fenster mit dem inhalt korrekt._________________ "Je mehr Käse, desto mehr Löcher; Je mehr Löcher, desto weniger Käse. Daraus folgt: Je mehr Käse desto weniger Käse!"
 |  |  |  
| Luckie Ehemaliges Mitglied
 Erhaltene Danke: 1
 
 
 
 
 | 
Verfasst: Fr 07.07.06 15:17 
 |  |  |  
| BenBE 
          Beiträge: 8721
 Erhaltene Danke: 191
 
 Win95, Win98SE, Win2K, WinXP
 D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
 
 | 
Verfasst: Fr 07.07.06 15:17 
 
Vom Grundprinzip ne nette Idee, je nach Umsetzung aber sicherlich im Bereich von ner halben Stunde machbar ... _________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
 |  |  |  
| Hack Gott 
          Beiträge: 409
 
 Windows Vista
 Delphi 2005 Personal, Delphi 7
 
 | 
Verfasst: Fr 07.07.06 15:29 
 
	  |  BenBE hat folgendes geschrieben: |  	  | Vom Grundprinzip ne nette Idee, je nach Umsetzung aber sicherlich im Bereich von ner halben Stunde machbar ... | 
 Stimmt, aber das kann man ja um sehr viele weitere Punkte ergänzen, ich überprüfe bis jetzt nur 4. Und umso mehr, umso komlizierter wird es ja. Und knacken kann man es ja nicht mehr auf die herkömmliche weise._________________ "Je mehr Käse, desto mehr Löcher; Je mehr Löcher, desto weniger Käse. Daraus folgt: Je mehr Käse desto weniger Käse!"
 |  |  |  
| root_at_localhost 
          Beiträge: 191
 
 
 
 
 | 
Verfasst: Fr 07.07.06 15:34 
 
eben, was hindert mich daran per programm einfach jeden punkt abzufahren? |  |  |  
| uall@ogc 
          Beiträge: 1826
 Erhaltene Danke: 11
 
 Win 2000 & VMware
 Delphi 3 Prof, Delphi 7 Prof
 
 | 
Verfasst: Fr 07.07.06 15:57 
 
Oder was hindert mich daran es zu cracken? 
Einloggen, um Attachments anzusehen!
 
_________________ wer andern eine grube gräbt hat ein grubengrabgerät
 - oder einfach zu viel zeit
 |  |  |  
| LLCoolDave 
          Beiträge: 212
 
 Win XP
 Delphi 2005
 
 | 
Verfasst: Fr 07.07.06 15:59 
 
Is ja völlig umsonst, da wackelt man bischen mit der Maus drüber und fertig... |  |  |  
| Hack Gott 
          Beiträge: 409
 
 Windows Vista
 Delphi 2005 Personal, Delphi 7
 
 | 
Verfasst: Fr 07.07.06 16:00 
 
	  |  root_at_localhost hat folgendes geschrieben: |  	  | eben, was hindert mich daran per programm einfach jeden punkt abzufahren? | 
 kann man ja eine kleine sperre einbauen, das es nach ca. 200 (oder mehr) punkten die falsch waren zurücksetzt.
 	  |  uall@ogc hat folgendes geschrieben: |  	  | Oder was hindert mich daran es zu cracken? | 
 Verdammt, ist die selbe schwachstelle wie oben, nachdenken bevor posten! (ist an mich gerichtet)_________________ "Je mehr Käse, desto mehr Löcher; Je mehr Löcher, desto weniger Käse. Daraus folgt: Je mehr Käse desto weniger Käse!"
 |  |  |  
| rizla 
          Beiträge: 417
 Erhaltene Danke: 2
 
 XP
 FPC mit Lazarus
 
 | 
Verfasst: Fr 07.07.06 18:47 
 
grüße an HG, 
 ich dachte, das thema wäre durch     .:rizla:._________________ if you have what they want - they'll find a way to take it (bruce sterling)
 WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.
 |  |  |  
| Locke 
          Beiträge: 47
 
 Win 2000
 Delphi 7 PE
 
 | 
Verfasst: Do 20.07.06 11:29 
 
	  |  Hack Gott hat folgendes geschrieben: |  	  | Ich hab mich mal kurz hingesetzt und auch einen kleinen Passwortdialog zusammen geschustert, schaut mal ob ihr des passwort ändern, oder zumindestens knacken könnt. 
 Ich bin gespannt.
 | 
 Passwort: Gut!
 Benötigte Zeit: nicht mehr als 10 Sekunden    Also ich denke nicht das jemand eine unknackbare Passwortabfrage hinkriegt, zumahl es nicht mal die Software Firmen wie z.B. Adobe, Steinberg, etc. schaffen. Wird immer wieder geknackt    mfg Locke |  |  |  
| azubi_20 
          Beiträge: 593
 
 WinXP SP2, Ubuntu 8.4
 D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
 
 | 
Verfasst: Do 20.07.06 12:42 
 
Ich hab hier auch mal ne recht simple Passwortabfrage gebastelt.
 Wer kann mir am schnellsten das Passwort sagen ?    Wenn's geklappt hat gibts ne entsprechende Meldung, sonst passiert nix.
 PS: Mit welchen Werkzeugen arbeitet ihr so um zu Cracken (Hexeditoren, ResEditoren...)?
Einloggen, um Attachments anzusehen!
 |  |  |  
| azubi_20 
          Beiträge: 593
 
 WinXP SP2, Ubuntu 8.4
 D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
 
 | 
Verfasst: Fr 21.07.06 09:32 
 
10 mal runtergeladen und keiner hats geschafft ?
 Scheint wohl doch nicht so einfach zu sein.    Also nochmal : Wer stellt sich der Herausforderung ?   |  |  |  
| BenBE 
          Beiträge: 8721
 Erhaltene Danke: 191
 
 Win95, Win98SE, Win2K, WinXP
 D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
 
 | 
Verfasst: Fr 21.07.06 11:11 
 
Die Frage bei sowas ist weniger "Wie lautet das Passwort?", sondern "kommt man auch ohne an's Ziel?"  _________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
 |  |  |  
| azubi_20 
          Beiträge: 593
 
 WinXP SP2, Ubuntu 8.4
 D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
 
 | 
Verfasst: Fr 21.07.06 11:40 
 
ok, dann formulieren wir das mal um :
wer schafft es die Paswortabfrage zu umgehen ?
 |  |  |  |