Du wolltest dein Programm schon immer mal vor einfachem Kopieren schützen? Hier ist eine handliche leichte und doch recht sichere Methode.
Du musst dir weder um das GUI des Lizenzsystems sorgen machen, noch um etwas anderes was das Lizenzsystem anbelangt.
Das Lizenzsystem muss im Quellcode untergebracht werden und wird lediglich mit dem Befehl ExecShield() ausgeführt, den Rest übernimmt das das eingebaute System.
Da Version 1.0 noch eine Demoversion ist wird der Key mit einem festen algorithmus erstellt, allerdings wird in der Vollversion die Möglichkeit, seitens des Softwarepublishers, bestehen zusätzliche Parameter zur Schlüsselgeneration hinzuzufügen.
Der Schlüssel wird auf Basis der Harddisk-ID und zusätzlicher Parameter berechnet.
Zu Demonstrationszwecken wurde ein Sample unten hinzugefügt auch der Header und die ExecShieldSystem.dll sind zum Download verfügbar.
Der Schutz ist zwar nicht unumgebar aber das ist heutzutage sowieso fast nirgendwo mehr der Fall, erschweren tut es das unerwünschte Weiterverbreiten auf jeden Fall.
Natürlich freue ich mich über einen Kommentar oder vllt. sogar ein Feedback. Bei weiteren Fragen kann auch eine private Nachricht geschickt werden.
Mirrors
Version 1.2
Sample (Statisch; Keygen von Version 1.0 verwendbar)
Version 1.1
All Files (Keygen von Version 1.0 verwendbar)
Version 1.0 (Fix für's Sample notwendig)
Sample Keygen Development Files All Files (Keygen nicht enthalten) Fix
Mir ist leider erst heute aufgefallen dass ich vergessen habe zwei notwendige *.dlls hinzuzufügen, um das program zu fixen einfach die beiden DLLs aus dem Fix-Archiv in das Sample verzeichnis kopieren/verschieben. In den folgenden Versionen werde ich das natürlich beheben.
Keygenerator für den Algorithmus wurde hinzugefügt, somit kann das "Produkt" nun aktiviert werden. Sollte das Produkt schon einmal aktivert worden sein, so befindet sich im Ordner "C:\Users\*NAME*\AppData\Local" eine Datei mit dem Namen "Key", diese einfach wieder löschen um die Aktivierung aufzuheben. Der Pfad und Name sind nur in der Demo so statisch, eventuell wird es konfigurationsmöglichkeiten in einer weiteren Demo oder einem Vollwertigen Release geben.
Zusätzliches: Die ExecShieldSystem-Library-Datei wird im Release wahrscheinlich statisch gelinkt sein, um somit eine Manipulation der "ExecShieldSystem.dll" zu verhindern.
rhino-licensing system ist um einiges sichrer, aber für C# und nicht grade anfänger freundlich. Jedoch nicht so leicht knackbar. Wie schützt du davor das man nicht einfach das überspringt? Bin noch nicht ganz schlau dazu geworden.
Also bisher weiß ich nicht wie man das überspringen könnte, außer vllt. man findet die richtige Value im richtigen Augenblick (z. B. per Cheatengine) und stellt diese um, allerdings wird bei jedem Start des Programmes wieder der Key überprüft und auf seine Korrektheit überprüft.
Da die Library wahrscheinlich sowieso statisch gelinkt werden wird ist ein "einfaches" manipulieren der externen DLL files eher nicht möglich. Dabei wird dieses "Lizenzmodul" quasi ein Teil des ganzen Programmes.
Des Weiteren überlege ich mir noch, ob ich noch eine Echtzeitüberprüfung implementiere, die dann über einen Thread läuft, wie das alles allerdings konkret aussieht steht bis jetzt noch nicht fest.
P. S.: Ich kenn mich zwar mit den .NET Sprachen nicht wirklich aus, allerdings habe ich gelesen, dass diese relativ leicht dekompiliert werden können und das Resultat sogar recht gut sein soll, womit man einfach dieses "rhino-licensing" aus dem Quelltext entfernen könnte. Allerdings kenne ich mich wie gesagt mit .NET Sprachen - und da ich vermute, dass C# eine solche ist, auch mit dieser - nicht wirklich aus.
P. P. S.: Natürlich bin ich auch dankbar, wenn mir Sicherheitslücken gemeldet werden
Wie ich sehe ist es bereits jemandem gelungen das zu umgehen
Ich werde mich mal an den Code setzen und weitere Änderungen vornehmen um gegen sowas präventiv einzuwirken. Hab schon einige Ideen bekommen.
Danke dass du dir die "Mühe" gemacht hast es zu probieren
########## Update Version 1.1 ##########
Es wurden einige sicherheitskritische Lücken geschlossen und Manipulation von bestimmten Variablen erschwert.
An alle die das System umgehen wollen: Sofern die Meldung "Successfully activated" erscheint, das Programm noch einmal starten und schauen, ob die "Invalid key"-Meldung kommt.
P. S.: Natürlich bin ich auch hier wieder für Sicherheitslücken offen und würde mich über ein kurzes Feedback freuen und evtl. wenn man sich schon daran versucht hat, ob man das System umgehen konnte
P. S.: Natürlich bin ich auch hier wieder für Sicherheitslücken offen und würde mich über ein kurzes Feedback freuen und evtl. wenn man sich schon daran versucht hat, ob man das System umgehen konnte
Wenn du wieder ein sample wie bei 1.0 machst, versuch ich's
mal wieder, wenn ich grad sonst nix zu tun hab...
nachdem es gecrackt wurde und das Programm nochmal gestartet hast, kam da dann eine "Invalid poduct key"-Meldung? Bin grad etwas verwirrt und wie JMPt man mit OllyDbg auf eine Adresse? Kenn mich mit dem Programm kaum aus.
nachdem es gecrackt wurde und das Programm nochmal gestartet hast, kam da dann eine "Invalid poduct key"-Meldung? Bin grad etwas verwirrt und wie JMPt man mit OllyDbg auf eine Adresse? Kenn mich mit dem Programm kaum aus.
Danke im Voraus
Siehst du zb hier:
Davor war statt dem JMP ein JE (Jump if equal).
Und da kurz davor ComputeKey verwendet wurde war
klar das hier wohl der eingegebene Key mit dem errechneten
verglichen wird und wenn sie gleich sind wird zu der Adresse gesprungen.
Durch den normalen JMP wird immer zu der Adresse gesprungen, egal
welcher Key eingegeben wird.
Quote:
wie JMPt man mit OllyDbg auf eine Adresse?
Leertaste -> "JMP 12341234"
(Natürlich müssen auch 5 Bytes für den JMP frei sein ( E9 11 11 11 11 ))
Danke dass du das hier kurz erklärt hast, ich werde schauen was ich machen kann.
########## Update Version 1.2 ##########
Änderungen:
- Fixen eines kritischen Bugs in der LoadKeyFile-Funktion
- Große Codeumstellung für mehr Flexibilität
- Grobe Verbesserung der Keykontrolle
- Anderes Keyverzeichnis: "C:\Users\*NAME*\AppData\Local\Licenses\"
- Das Sample wurde statisch erstellt
- Executable wurde mit UPX komprimiert
- Befehl "strip" ging über die Anwendung
Ich hoffe doch, dass es jetzt viel schwerer ist das System zu knacken, allerdings bestand auch der Großteil der Ändernungen nur in der Umstellung von Code.
An alle die das System umgehen wollen: Sollte es geschafft worden sein, das "Successfully activated"-Fenster erscheinen zu lassen, so bitte das Programm noch einmal starten und schauen ob sich das Fenster mit dem Titel "Your Program" öffnet.
Auch hier bin ich wieder für Schwachpunkte der Software offen und würde diese gerne, sofern möglich beheben. Danke im Voraus.
Also es hat ein paar Anläufe gebraucht bis ich es komplett hatte, liegt aber auch daran, dass ich schon ewig nichts mehr mit Olly gemacht habe. Insgesamt hat es 45 Minuten gedauert bis ich es fertig hatte (Unpacken, Laden und Speichern mit in Begriffen). Diese Zeit ist viel zu kurz für ein Programm, das eigentlich ein Lizenzsystem sein soll, vor allem weil das letzte Mal, dass ich mit Olly gespielt habe gut 6 Monate her ist.
[B] Lizenzsystem (Source) 10/03/2012 - elite*gold Trading - 90 Replies Hallo elitepvpers,
hier habe ich mal ein Lizenzsystem gecoded. Ihr könnt es für eure Tools benutzen. In der Treasure ist ein Downloadlink zu der Source. Das Lizenzsystem ist sehr schön geschrieben.
Das Lizenzsystem wurde mit 'Visual Basic 2010' gecodet.
Man darf die Source oder den Downloadlink NICHT weitergeben!
Screens:
http://i.epvpimg.com/JEDEb.jpg
http://i.epvpimg.com/ge0cc.jpg
[VB2010] Lizenzsystem 12/20/2011 - .NET Languages - 9 Replies Hey könnte mir jemand bei einem LizenzSystem helfen?
Man muss ein Code eingeben, der wird mit seiner HWID zusammen überprüft.
Wenn jemand Snippets oder sonst was hat, könnte er die bitte per PN schicken, da sonst jeder weiß wie man es umgehen kann.
Danke :)
~AutoIt Lizenzsystem Schutz~*REOPEN* 07/01/2011 - elite*gold Trading - 19 Replies Hallo, ich biete eine Lizenzsicherung für eure AutoIT Source's ,Gegen Anit-Leeching.
Was beinhaltet das Paket
~
Zugriff auf die Datenbank, (Keys Deaktivieren)
10~15Lizenzen , für euer Programm.
Was macht es,?
YouTube - ‪Autoit LizenzSystem~‬‏ | YouTube - ‪Autoit Lizenzsystem 2~‬‏
CSS DEMO 10/04/2010 - Counter-Strike - 2 Replies Also...
ich hab ein problem
ich hab ein movie cfg von clayman und zwar immer wenn ich mir die demo anschau und in der demo mich einer killt under anders rum schmiert mein css ab hab in klein fenster...brauch hilfe
Demo Wr 06/26/2010 - WarRock Hacks, Bots, Cheats & Exploits - 17 Replies hallo leute ich weiß jetz nicht obs den hack schon gibt,die sufu hat nix ergeben
aber ich poste ihn mal
http://i901.photobucket.com/albums/ac219/thereap3 rs/DemonScreen2.jpg
Download:DemonicD3D.rar kostenlos von Uploading.com herunterladen
VT:Virustotal. MD5: e045846883212f555cc4bd1e8c1f45df WS.Reputation.1 W32/Heuristic-KPP!Eldorado Win32:PUP-gen
Vll springt ja das eine oder andere thanks heraus =) ich würd mich sehr freuen