Delphi-PRAXiS
Seite 3 von 10     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Schutz vor Decompeilierung (https://www.delphipraxis.net/46329-schutz-vor-decompeilierung.html)

franktron 23. Mai 2005 09:39

Re: Schutz vor Decompeilierung
 
Du könntest die software doch beim Start die Checksumme prüffen lassen das kann keiner so einfach umgehen,
Du muss natürlich einen oder mehrere schön plätz für die Checksumme finden.

brechi 23. Mai 2005 10:12

Re: Schutz vor Decompeilierung
 
frankton nen video gefällig wo man mal sieht das ne checksumme rein gar nichts bringt?
und auch dem cracker alles mögliche in den weg legen bringt auch nix, ausser das es wieder probleme für den enduser gibt.

Olli 23. Mai 2005 12:02

Re: Schutz vor Decompeilierung
 
Zitat:

Zitat von franktron
Vielleicht eine Loader schreiben und damit die EXE starten das dürfte die Hacker(Decompiler) zum. etwas irretieren.

Au ja. Mach mal. Das ist eine der einfachsten Übungen. Mir ist noch kein wirklich cooler Loader untergekommen. Wenn das alles solche 08/15-Dinger sind, machst du jedem Reverser oder Cracker eine Freude!

Zitat:

Zitat von franktron
Fazit den jenigen der das Programm Decom. will so viele hindernisse wie möglich in den Weg legen

Und das Programm bis aufs äußerste entschleunigen *g* :roll: ... der Endbenutzer soll "seine" Sicherheit schließlich auch irgendwie spüren.

Zitat:

Zitat von freak4fun
Ich denke mal ein 100% wäre niemanden die .exe-Datei geben. ;)

Das stimmt :thumb:

Zitat:

Zitat von freak4fun
Ne, im ernst. Hast du angst die Firma, die dein Programm kauft crackt es? Warum sollte sie es tun, wenn sie eine legale Version hat? Das Risiko besteht zwar immer, aber jede andere Softwarefirma hat das gleiche Risiko.

So sollte man das sehen. Spätestens wenn man sich oben anhand des Gedankenbeispiels das Dilemma klarmacht.

Zitat:

Zitat von franktron
Du könntest die software doch beim Start die Checksumme prüffen lassen das kann keiner so einfach umgehen,
Du muss natürlich einen oder mehrere schön plätz für die Checksumme finden.

Wo ist der Trick? Also irgendwie scheinen hier einige keine Vorstellung zu haben, wie Reverser oder Cracker arbeiten :gruebel: ... gelle brechi? ;)

Zitat:

Zitat von brechi
frankton nen video gefällig wo man mal sieht das ne checksumme rein gar nichts bringt?
und auch dem cracker alles mögliche in den weg legen bringt auch nix, ausser das es wieder probleme für den enduser gibt.

Seien wir ehrlich: dem Reverser oder Cracker bringt es auch manchmal eine Verzögerung ;) ... ich würde sagen 5min für Luckies Debuggercheck in der vorletzten Version des Usermanagers?! :mrgreen: Bei der neuen Version ist sogar noch mehr Mühe angesagt :zwinker:

turboPASCAL 23. Mai 2005 13:02

Re: Schutz vor Decompeilierung
 
Hallo Leute,

Ein Tipp ?!
Ich habe mich immer damit Beholfen, das ich meine EXE-File
mit UPX packe. Die gepackte EXE dann in eine Hexeditor laden,
die Stringvorkommen 'UPX' in sinnlose Zeichen zB. 'UPX' nach 'z3"',
das nächste dann in '8J_' usw. speichern.
(man könnt' ja auch n' Prog schreiben :mrgreen: )

Wer nun versucht mit UPX zu ent.- bzw. zu packen.... hahaha

Vorteil: Prg. ist "verschlüsselt" und Gepackt.

Die Exe kann man problemlos starten (noch keine Probleme gehabt).
Einen Ultimativen Schutz vor guten Hackern wird es aber wohl nie nicht geben. :wink:

MfG.

Phoenix 23. Mai 2005 13:06

Re: Schutz vor Decompeilierung
 
Zitat:

Zitat von turboPASCAL
Die gepackte EXE dann in eine Hexeditor laden, die Stringvorkommen 'UPX' in sinnlose Zeichen zB. 'UPX' nach 'z3"', das nächste dann in '8J_' usw. speichern. (man könnt' ja auch n' Prog schreiben :mrgreen: )

Jau. Und dann hast Du eine Codestelle, die zufällig genau in die Zeichenfolge 'UPX' komprimiert wurde und zerschiesst Dir damit das Programm. Man sollte sich hier zumindest mal mit den UPX-Headern ganz konkret auseinandersetzen um wirklich nur diese zu erwischen.

gothic_mike 23. Mai 2005 13:09

Re: Schutz vor Decompeilierung
 
Zitat:

Zitat von turboPASCAL
Hallo Leute,

Ein Tipp ?!
Ich habe mich immer damit Beholfen, das ich meine EXE-File
mit UPX packe. Die gepackte EXE dann in eine Hexeditor laden,
die Stringvorkommen 'UPX' in sinnlose Zeichen zB. 'UPX' nach 'z3"',
das nächste dann in '8J_' usw. speichern.
(man könnt' ja auch n' Prog schreiben :mrgreen: )

Wer nun versucht mit UPX zu ent.- bzw. zu packen.... hahaha

Vorteil: Prg. ist "verschlüsselt" und Gepackt.

Die Exe kann man problemlos starten (noch keine Probleme gehabt).
Einen Ultimativen Schutz vor guten Hackern wird es aber wohl nie nicht geben. :wink:

MfG.

haste schonmal deinen speicher durchsucht, wenn dein UPX'tes programm läuft?
die exe packen ist imho sinnlos, hällt vielleicht einige DAU's ab, paar Strings/Resourcen in der exe zu ändern, aber einem richtigen cracker is das scheissegal...
es gibt definitiv keinen 100%igen schutz, jedes noch so gut geschützte programm wird von irgendeinem cracker irgendwann gecrackt, ist halt nur eine zeitfrage... und sinnlos verschwendete zeit & energie des programmierers.

Boombuler 23. Mai 2005 13:12

Re: Schutz vor Decompeilierung
 
Hi,...

Eben kein Mittel ohne Gegenmittel zumindest nicht solange wir noch mit Boolscher Algebra arbeiten! Verschlüsseln ist immer nur eine Sache der Zeit! (bei unseren heutigen Verschlüsselungsverfahren viel zu viel Zeit...)
Aber die Lösung ist schon mal nicht schlecht... Ich denke mal 70% der "Ich-Werd-Mal-Cracker-Wenn-Ich-groß-Bin"-Kiddis wirst du damit abschrecken!

Greetz
Boombuler

Dax 23. Mai 2005 13:27

Re: Schutz vor Decompeilierung
 
Ich hab eine kleine Theorie, wie es funktionieren könnte, aber garantiert nicht wird: Einfach das JIT-Konzept ein wenig entfremden. Du hast deinen Code der EXE, den du schützen willst. Du hast ein Verschlüsselungsprogramm wie Morphine. Bau Morphine um. Und zwar so, das es dir den Code immer Bruchstückweise in den Speicher entpackt, den Code ausführt, das Programm anhält, den ausgeführten Code aus dem Speicher läd, den nächsten Block läd usw. Aber das bietet immer noch keinen ernsthaften Schutz vor Speicherzugriffen, und einen richtigen Schutz gibt es, wie ja schon bereits gesagt, nicht. Dieses Konzept hier kann einem Cracker die Arbeit aber ziemlich erschweren, zumindest denke ich das.

Diese Idee entstand in einem verwirrten Hirn, nicht zu viel Beachtung beimessen.

Olli 23. Mai 2005 13:44

Re: Schutz vor Decompeilierung
 
Zitat:

Zitat von turboPASCAL
(man könnt' ja auch n' Prog schreiben :mrgreen: )

Gibt's schon. Such mal nach UPX Scramblern *g*
Ebenfalls kalter Kaffee.

Zitat:

Zitat von gothic_mike
haste schonmal deinen speicher durchsucht, wenn dein UPX'tes programm läuft?
die exe packen ist imho sinnlos, hällt vielleicht einige DAU's ab, paar Strings/Resourcen in der exe zu ändern, aber einem richtigen cracker is das scheissegal...

Dem richtigen Reverser auch ;)

Zitat:

Zitat von gothic_mike
es gibt definitiv keinen 100%igen schutz, jedes noch so gut geschützte programm wird von irgendeinem cracker irgendwann gecrackt, ist halt nur eine zeitfrage... und sinnlos verschwendete zeit & energie des programmierers.

... und des Crackers/Reversers, wenn es das Ziel nicht wert ist. Manche Leute sollten ihre Programme, gerade wenn es Nischenprogramme sind, nicht allzusehr überschätzen.

Zitat:

Zitat von Boombuler
Eben kein Mittel ohne Gegenmittel zumindest nicht solange wir noch mit Boolscher Algebra arbeiten! Verschlüsseln ist immer nur eine Sache der Zeit! (bei unseren heutigen Verschlüsselungsverfahren viel zu viel Zeit...)

Du meinst sicher Entschlüsseln. Und dank des oben dargelegten Dilemmas muß der Programmautor den Schlüssel ja mitliefern, wodurch ein Knacken oder "Entschlüsseln" (via Brute-Force) nicht notwendig ist.

Zitat:

Zitat von Boombuler
Aber die Lösung ist schon mal nicht schlecht... Ich denke mal 70% der "Ich-Werd-Mal-Cracker-Wenn-Ich-groß-Bin"-Kiddis wirst du damit abschrecken!

Ich kenne Firmen, die Reverser bezahlt haben. Du glaubst doch nicht ernsthaft, daß wenn dieses Programm so ultimativ cool wäre, eine Firma ein Ich-Werd-Mal-Cracker-Wenn-Ich-groß-Bin"-Kiddy anheuert?
Alternativ wird das Programm und die zugehörige Firma aufgekauft ("Microsoft-Methodik").

Zitat:

Zitat von Dax
Ich hab eine kleine Theorie, wie es funktionieren könnte, aber garantiert nicht wird: Einfach das JIT-Konzept ein wenig entfremden. Du hast deinen Code der EXE, den du schützen willst. Du hast ein Verschlüsselungsprogramm wie Morphine. Bau Morphine um. Und zwar so, das es dir den Code immer Bruchstückweise in den Speicher entpackt, den Code ausführt, das Programm anhält, den ausgeführten Code aus dem Speicher läd, den nächsten Block läd usw. Aber das bietet immer noch keinen ernsthaften Schutz vor Speicherzugriffen, und einen richtigen Schutz gibt es, wie ja schon bereits gesagt, nicht. Dieses Konzept hier kann einem Cracker die Arbeit aber ziemlich erschweren, zumindest denke ich das.

Siehe:
Zitat:

Zitat von Olli
Erschweren geht (z.B. indem jeder Programmteil direkt vor Ausführung entschlüsselt wird, womit man Dumper austrickst, da das Programm nie vollständig entschlüsselt im Speicher vorliegt) - unmöglich machen geht nicht [...]

Hier. Ich hoffe du meinst nicht mich mit "verwirrtem Hirn" :zwinker:

Es gibt auch VM-Ansätze (sowohl in POCs -> http://www.honeynet.org/scans/scan33/ ) als auch in einem russischen Programm (Link habe ich aktuell nicht zur Hand). Das funktioniert ähnlich wie der P-Code in VB.

turboPASCAL 23. Mai 2005 13:48

Re: Schutz vor Decompeilierung
 
@Phoenix

Die Zeichenfolge 'UPX' vom Packer kommt 3x in der Exe vor:

Offset 504 -> UPX0
Offset 544 -> UPX1
Offset 992 -> UPX! (hinter der UPX-Versionsnummer, bei mir 1.25)

Das sollte bei allen Exe-Files so sein (jedenfalls bei meinen Delphi 6 Exe-Files).
Wenn man nur diese ändert kann nix passiren auch wenn du im Surcecode irgend wo UPX stehen hast.

@gothic_mike

Zitat:

haste schonmal deinen speicher durchsucht, wenn dein UPX'tes programm läuft?
die exe packen ist imho sinnlos, hällt vielleicht einige DAU's ab, paar Strings/Resourcen in der exe zu ändern, aber einem richtigen cracker is das scheissegal...
es gibt definitiv keinen 100%igen schutz, jedes noch so gut geschützte programm wird von irgendeinem cracker irgendwann gecrackt, ist halt nur eine zeitfrage... und sinnlos verschwendete zeit & energie des programmierers.

Da war ich wohl zu späth :-) hi, Olli
MfG.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:21 Uhr.
Seite 3 von 10     123 45     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz