Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi im compilierten Code (https://www.delphipraxis.net/91880-delphi-im-compilierten-code.html)

meinEigen 11. Mai 2007 09:46


Delphi im compilierten Code
 
Ich habe gesehen, dass das Wort Delphi im Compilierten Code öfters auftaucht, wie kann ich es anstellen. Gibt es eine Möglichkeit, dass der Anwender nicht ersehen kann, in welcher Sprache ich das Programm geschrieben habe?

:firejump:

Und gibt es Befehle die das decomplieren erschweren? Vielen dank für Eure Antworten.

Liebe Grüße

Bernhard Geyer 11. Mai 2007 09:52

Re: Delphi im compilierten Code
 
Zitat:

Zitat von meinEigen
Ich habe gesehen, dass das Wort Delphi im Compilierten Code öfters auftaucht, wie kann ich es anstellen. Gibt es eine Möglichkeit, dass der Anwender nicht ersehen kann, in welcher Sprache ich das Programm geschrieben habe?

Und was glaubst du das der Anwender für einen Nutzen daraus ziehen kann?

Zitat:

Zitat von meinEigen
Und gibt es Befehle die das decomplieren erschweren? Vielen dank für Eure Antworten.

Wenn du deine Anwendung ohne jedliche Debug-Infos kompilierst kommt er zwar an die Formular-Resourcen, aber der Rest is schöner Assemlber wie er zwar die Funktionenamen für Eventhandler noch rausbekommt aber sich gut in Assembler auskennen muß. Aber solche Diskussionen gab es schon öfters, das man zwar die Hürten höher legen kann aber keinen 100%igen Schutz bieten kann.

meinEigen 11. Mai 2007 10:06

Re: Delphi im compilierten Code
 
@Bernhard

du hast vollkommen recht, das der Anwender keinen Nutzen davon hat - pragmatisch gesehen.

Ich sehe das eher Grundlagentechnisch - als Ausgangspunkt für neue Ideen.

Gruß

kolbaschedder 11. Mai 2007 10:18

Re: Delphi im compilierten Code
 
Hallo,

Bin zwar kein großer Crack in sowas, ich denke aber das man die RTTI komplett abschalten müsste, da sämtliche Informationen über "published"-Eigenschaften im kompilierten Code enthalten sind.

MfG
Kolbi

meinEigen 11. Mai 2007 10:23

Re: Delphi im compilierten Code
 
Klinkt cool.

Wie macht man das? Und was geht dann noch so alles verloren?

Gruß

Bernhard Geyer 11. Mai 2007 10:23

Re: Delphi im compilierten Code
 
Zitat:

Zitat von kolbaschedder
Bin zwar kein großer Crack in sowas, ich denke aber das man die RTTI komplett abschalten müsste, da sämtliche Informationen über "published"-Eigenschaften im kompilierten Code enthalten sind.

Dann darfst du wieder auf Non-VCL programmierung wechsenl. Denn ohne RTTI funktioniert die VCL nicht!

kolbaschedder 11. Mai 2007 10:27

Re: Delphi im compilierten Code
 
Zitat:

Zitat von Bernhard Geyer
Dann darfst du wieder auf Non-VCL programmierung wechsenl. Denn ohne RTTI funktioniert die VCL nicht!

Korrekt. Genauso wie der Objekt-Inspektor und noch einiges mehr.
Man nehme sich einen guten Editor alla "Ultraedit" und legt los. Oder man nimmt das gute alte Turbo Pascal.

meinEigen 11. Mai 2007 10:49

Re: Delphi im compilierten Code
 
[quote="kolbaschedder"]
Zitat:

Zitat von Bernhard Geyer

Man nehme sich einen guten Editor alla "Ultraedit" und legt los. Oder man nimmt das gute alte Turbo Pascal.

Genau ich komme noch aus der alten Turbo Pascal Zeit. Ich war gewohnt dass der Compiler nur das übersetzt was ich programmiere.


RTTI ausschalten ist doch nicht so cool. Aber vielleicht weiß jemand, was da alles noch hinzugefügt wird und wie man das ausschalten kann.

Blackheart 11. Mai 2007 10:51

Re: Delphi im compilierten Code
 
Man schreibe als allerestens mal ein beliebtes Programm was auch schützenswert ist, sonst macht sich so und so keiner die Mühe es zu cracken.

CCRDude 11. Mai 2007 10:54

Re: Delphi im compilierten Code
 
Diverse Programme bieten größere Signaturensammlungen (z.B. PEiD), die Delphi-Programme eigentlich trotzdem immer erkennen können - immerhin ist die System.pas immer identisch, auch der RTL-Code wird in den meisten Fällen immer gleich sein. Somit dürfte das "in welcher Sprache"-verhindern ziemlich unmöglich sein.

Die RTL könntest Du noch mit zig (z.B.) NOPs durchsetzen, damit Signaturen dafür nicht greifen, aber die System.pas lässt sich schon nicht mehr so einfach kompilieren. Allgemein dürfte jede Hochsprache erkennbare Muster mit sich bringen (auch TurboPascal war da keine Ausnahme!), das bringt wahrscheinlich schon das "Hoch" mit sich. Siehe obiges Beispiel: die Signaturdatei von PEiD kommt im Klartext daher, mit einem DisAsm der auch Hex-Text-Input verarbeitet, zeigt das sehr schön, an welchen Kleinigkeiten Compiler schon zu erkennen sind.

Malware nutzt ja gerne eine Vielfalt von Packern, für die es durchaus auch nicht immer einfache Entpacker gibt - aber dann kann man meist immer noch ein memory dump der laufenden Anwendung eine unkomprimierte Version speichern.

Ich schätze selbst mancher Assembler (bzw. zugehöriger Linker) hat erkennbare Muster, um absolut zu verhindern daß der Benutzer erkennt, mit was ein Programm geschrieben wurde, bleibt eigentlich nur, sich nen Hex-Editor zu schnappen und die Op-Codes von Hand einzutippen. DAS wär allerdings mal spannende Grundlagenforschung, man lernt zumindest, auch in Hochsprachen später in Sachen Optimierung klarer zu denken :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:23 Uhr.
Seite 1 von 2  1 2      

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