[Release] LizenzSystem für .NET-Developer

11/26/2013 14:35 ҳc3ρ0™#1
Hallo.

Da viele bei meinem letzten Release bemängelt haben das die MySQL-Daten im Programm stehen habe ich das ganze nochmal überarbeitet.

Das hier ist kein Lizenzmanager, nur ein Addon für euer Projekt um Lizenzen zu überprüfen.

Informationen:
  • Das LizenzSystem läuft komplett über WebServer, es werden in euren Projekten keine MySQL-Daten mehr gebraucht.
  • Das Script benutzt .NET, PHP & MySQL
  • Eine externe DLL für einfaches einbinden in eure Projekte.

Möglichkeiten:
  • Neue Lizenzen im Browser (optional) oder in der Datenbank anlegen
  • Lizenzüberprüfung durch WebServer

Im Download enthalten:

[Only registered and activated users can see links. Click Here To Register...]
  • index.php
  • check.php
  • addLicense.php (Optional, nur wenn ihr Online Lizenzen adden wollt)
  • xCLicense.dll (Die Klassenbibliothek für eure Projekte)

Benutzungsweise:

Die Klassenbibliothek

Die .dll in euer Projekt importieren und initialisieren.

Da die Klasse einen Bool'schen Wert zurückliefert, könnt ihr das ganze einfach mit einer if-Abfrage steuern:

[Only registered and activated users can see links. Click Here To Register...]
Wichtig: die Variable adressToScript in eurem Projekt muss "http:/deineseite.de/deinlizenzchecker/" lauten (http & letzter backslash muss vorhanden sein)

Die PHP-Dateien

Die Datei index.php könnt ihr so lassen wie sie ist, dort muss nichts verändert werden.

In der Datei check.php müssen die MySQL-Daten für eure Lizenzdatenbank eingefügt werden ->

In der Datei addLicense.php (wenn ihr diese benutzt) müssen ebenfalls die MySQL-Daten & ein Admin-Account und ein Security-Code festgelegt werden. (Ja ich weis es würde noch professioneller gehen, aber wem das so nicht gefällt kann es ja selber schreiben oder manuell machen) ->

Das war's dann auch schon wieder von mir.
Konstruktives Lob oder Kritik sind erwünscht :)
Viel Spaß damit.
11/26/2013 15:09 Schlüsselbein#2
Lass bitte dieses prüfen gegen true weg. Das zeigt eigentlich nur, dass man boolsche Ausdrücke nicht verstanden hat und es verursacht irgendwie auch Augenkrebs.
11/26/2013 15:14 ҳc3ρ0™#3
Quote:
Originally Posted by Schlüsselbein View Post
Lass bitte dieses prüfen gegen true weg. Das zeigt eigentlich nur, dass man boolsche Ausdrücke nicht verstanden hat und es verursacht irgendwie auch Augenkrebs.
kann die Klasse auf Wunsch auch OpenSource machen, dann kann es jeder anpassen wie er möchte ;)

Oder wenn du schon kritisierst, gib mir bitte Anregungen wie ich es verbessern kann.
11/26/2013 15:52 Schlüsselbein#4
Einfach If Lizenzchecker.checkLizenz?
Und halte dich an die .Net naming conventions.



Gruß
11/26/2013 16:54 IchVerabschiedeMich#5
[Only registered and activated users can see links. Click Here To Register...]
Ich hoffe der Teil wird noch irgendwo Escaped ansonsten sehe ich da schon einmal ne SQLi.
Und genau das selbe noch auch bei addLicense.php.
11/27/2013 08:56 ҳc3ρ0™#6
Quote:
Originally Posted by Padrio View Post
[Only registered and activated users can see links. Click Here To Register...]
Ich hoffe der Teil wird noch irgendwo Escaped ansonsten sehe ich da schon einmal ne SQLi.
Und genau das selbe noch auch bei addLicense.php.
Wie meinst du das?
11/27/2013 09:06 Delinquenz#7
Quote:
Wie meinst du das?
SQL-Injection - Wikipedia
11/27/2013 09:47 ҳc3ρ0™#8
Quote:
Originally Posted by Delinquenz View Post
Ah achso, so war das gemeint. Ja klar, das muss man dann überarbeiten. Oder die HWID einfach als "hidden" versenden, dann gibt es auch keine möglichkeit das in der URL abzulesen?
11/27/2013 10:10 Shawak#9
Wenn du mit "hidden" meinst anstelle von $_GET, $_POST zu verwenden dann muss ich dich leider enttäuschen.
Das hilft nämlich nicht.

ps: code injection sollte auch möglich sein
11/27/2013 10:13 Delinquenz#10
Quote:
Oder die HWID einfach als "hidden" versenden, dann gibt es auch keine möglichkeit das in der URL abzulesen?
Anscheinend hast du den Artikel nicht verstanden.
11/27/2013 10:32 ҳc3ρ0™#11
Quote:
Originally Posted by Delinquenz View Post
Anscheinend hast du den Artikel nicht verstanden.
Habe mir nur den Anfang mit der URL-Injection kurz angeschaut.
11/27/2013 13:17 Delinquenz#12
Quote:
Habe mir nur den Anfang mit der URL-Injection kurz angeschaut.
Wenn dich das Thema Sicherheit bei einem Lizenzsystem nicht interessiert, wieso veröffentlichst du es dann überhaupt? Man kann, sofern du in deiner Funktion nichts escapest deine ganze Datenbank löschen/auslesen. XSS ist auch möglich.
11/27/2013 13:23 tolio#13
zwinged entweder
1) jeden input in php konsequent escapen
2) prepared statements mit mysqli oder pdo

beides zusammen geht natürlich auch, wobei eins der beiden richtig umgesetzt auch schon sicher ist
11/27/2013 13:35 ҳc3ρ0™#14
Quote:
Originally Posted by Delinquenz View Post
Wenn dich das Thema Sicherheit bei einem Lizenzsystem nicht interessiert, wieso veröffentlichst du es dann überhaupt? Man kann, sofern du in deiner Funktion nichts escapest deine ganze Datenbank löschen/auslesen. XSS ist auch möglich.
Es interessiert mich schon, bloß hab ich wärend meiner Arbeitszeit wichtigeres zu tun als mich jetzt darüber zu informieren, das mach ich wenn ich Freizeit habe.