In die EXE Informationen hineinschreiben
-
Hallo!
Ich möchte meine Shareware besser schützen, indem ich Informationen in die Anwendungsdatei hineinschreibe.
Gibt es Möglichkeiten die Datei zu ergänzen, so dass sie auch ausführbar bleibt?
-
Ein wirklicher Schutz ist das aber nicht - man muss sich dann ja nur vorher die original Datei sichern
Das sowas möglich ist siehst du z.B. an Ressourcen
-
Das ganze geht natürlich ein ganzes Stückchen weiter
Ich möchte, dass bei jedem bezahltem Download (per Key) der User eine individuelle Exe-Datei herunterlädt, so dass ich bei Warez zurückverfolgen kann, wer die Software ins Netz gesetzt hat.
Die Testuser erhalten eine Version, die nicht den Code der Vollversion erhält, so dass ich Key-Gens und Cracks ausschließe.
Meine Frage ist halt nur: Wie kann ich Infos in die EXE schreiben, ohne dass die Anwendung zerstört wird...
-
Mit einem Crack kann dann aber dann dieser Schlüssel auch wieder beliebig verändert werden
-
Da die Verbreitung der Software nicht so groß ist, gehe ich davon aus, dass die Leute nicht merken, dass sie eine individuelle Software haben.
Und es wäre sehr unwahrscheinlich, dass sich ein Cracker das Programm herunterlädt (gegen Gebühr) UND merkt, dass die Version individuell ist.
Aber wie auch immer: Gibt es eine Möglichkeit Infos in die EXE zu schreiben???
Übrigens: Was ist eigentlich mit den Info-Feldern im Eigenschaftsdialog? Werden diese in der Datei gespeichert???
-
Zu welchem Zeitpunkt willst du die Infos denn rein schreiben? Und wie willst du später überhaupt an diese Infos gelangen?
-
Bei herunterladen wird ein PHP Script die Änderung vornehmen und als Stream zum User schicken...
Und wenn ich weiß wo ich die Daten gespeichert habe, weiß ich auch wo ich sie wieder auslesen kann
Das heißt: Das ändern der Datei sollte möglichst per Dateioperationen machbar sein und ohne Windows Operationen...
-
für den Aufbau eines exe-Files: http://www.wotsit.org/
aber wenn du das mit PHP machen willst bist du hier nicht ganz richtig - es sei denn du rufst aus dem PHP-Script heraus eine Windows-Anwendung aufDu könntest aber z.B. einfach mal eine solche ID als Ressource hinzufügen und dann mit einem Hex-Editor danach suchen. Wenn du die Stelle weißt kannst du mit PHP den entsprechenden Teil ja dann einfach ersetzen - hoffe das klappt
-
Deine Idee funktioniert tatsächlich
!!!
Die Ressourcen-Strings werden nur mit Hex-Nullen dazwischen gespeichert. Also aus Test wird T e s t. Warum auch immmer, aber es funktioniert: Die Strings können problemlos überschrieben werden...
Danke
-
Bin mir nicht sicher, aber evtl. ist das auch einfach nur Unicode
-
flenders schrieb:
Bin mir nicht sicher, aber evtl. ist das auch einfach nur Unicode
Wieso bist Du Dir da so unsicher? Vor gar nicht allzu langer Zeit habe das doch schonmal aufgeklärt:
The strings in each section are stored as a sequence of counted (not null-terminated) Unicode strings.
Siehe: http://www.c-plusplus.net/forum/viewtopic.php?t=59505&highlight=findresource
Es ist also Unicode.
-
ich hatte das nicht mehr so genau in Erinnerung (und war zu faul nachzuschauen) - aber wenn immer 0en dazwischen sind liegt die Vermutung ja sehr nahe