Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 22:35

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Autoit Lizenssystem bzw. Server

Discussion on Autoit Lizenssystem bzw. Server within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Autoit Lizenssystem bzw. Server

Hi,

ich bin gerade dabei mit zu überlegen ob man nicht ein Lizenssystem mit Autoit schreiben könnte. Ich hab mir gedacht das man dafür wohl nen Server braucht damit man das nicht so einfach umgehen kann.

So nun wollte ich euch fragen wie würdet ihr anfangen? Ist das realisierbar?
Ist es sinnvoll - oder einfach zu leicht zu knacken?

MfG Ludder231
Ludder231 is offline  
Old 08/27/2012, 14:40   #2
 
Logtetsch's Avatar
 
elite*gold: 192
Join Date: May 2009
Posts: 2,227
Received Thanks: 3,262
Warum sollte es denn nicht realisierbar sein?
Ob es letzendlich leicht zu reserven ist, hängt ganz vom Programmierer ab. Bist du geschickt und schlau wird es nicht so leicht.
Logtetsch is offline  
Old 08/28/2012, 14:19   #3
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Und wie soll ich das machen. Im internet gibts auch nicht viel drüber...
Ludder231 is offline  
Old 08/28/2012, 14:38   #4
 
Logtetsch's Avatar
 
elite*gold: 192
Join Date: May 2009
Posts: 2,227
Received Thanks: 3,262
Du kannst mich gerne in Skype (Logtetsch) kontaktieren. Dort könnte ich dir besser helfen.
Logtetsch is offline  
Old 08/28/2012, 16:16   #5
 
Der-Eddy's Avatar
 
elite*gold: 400
Join Date: Nov 2008
Posts: 67,905
Received Thanks: 19,505
MySQL Datenbank anlegen in der Lizenzen stehen (gegebenenfalls HWIDs an dennen diese hängen)
über eine *.php Datei und get parametern wird dann die Datenbank ausgelesen (keine Datenbankconnection über AutoIT!) z.B. über "Lizenz.php?hwid=[HWID]"

das ist im Grunde relativ einfach
Der-Eddy is offline  
Thanks
1 User
Old 08/28/2012, 16:33   #6
 
Alisami's Avatar
 
elite*gold: 19
Join Date: Sep 2007
Posts: 1,525
Received Thanks: 1,058
Nur kann man das ganze einfach dekompilieren bzw. den Server emulieren. Müsste verschlüsselt ablaufen, am besten mit nem Timestamp.

Dennoch, Dekompilieren einer AutoitExe ist trotz Obfuscator recht einfach.
Alisami is offline  
Thanks
1 User
Old 08/28/2012, 16:54   #7
 
-STORM-'s Avatar
 
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,142
Die wichtigsten Schwachstellen sind folgende:

1. Decompilen.
Benutze einen Packer, der möglichst schwer zu entpacken ist (z.B. Themida). Standard UPX ist keine Hürde.
Zusätzlich zum Packer noch nen Obfuscator nutzen, um das decompilete Script möglichst unbrauchbar zu machen, falls jemand es schafft, das Prog zu entpacken.

2. Auslesen des PWs.
Wenn du einfach ne Liste online stellst, in der die Lizenzen/PWs/HWIDs roh stehen, oder wenn irgendwo das richtige PW im Script steht, könnten die relativ leicht ausgelesen werden.
Sinnvoller wäre, die md5 Hashwerte o.ä. der gültigen PWs online zu speichern und abzufragen, ob der Hash des eingegebenen PWs enthalten ist. Selbst wenn jemand den gültigen Hash herausfindet, kann er daraus nicht einfach ein gültiges PW herleiten.

3. if Abfragen.
Abfragen wie 'if $pw = "abc" then' können leicht reversed werden. In OllyDbg ist das oft nur ein conditional jump, der durch ein NOP oder jmp ersetzt wird. Da würde auch ein Hashwert nicht helfen. Oder das PW wird direkt per HexEditor/Olly ausgelesen. In diesem Fall würde ein Hashwert es dem Hacker allerdings deutlich schwieriger machen.
Besser wäre, entscheidende Scriptbestandteile mit dem richtigen PW zu ver- und mit dem eingegebenen zu entschlüsseln. In nem Trainer wären das z.B. Offsets, Prozessnamen etc.
So steht das richtige PW nicht im Script, kann also nicht ausgelesen werden und es gibt keine einfache Fehlermeldung, die man umgehen kann bei falschem PW, sondern das Prog läuft, aber ist vollkommen unbrauchbar.

Wenn du diese 3 Punkte umsetzt, ist es zwar nicht unmöglich zu knacken, aber zumindest die ganzen Möchtegern Hacker, die hier rumlaufen, werden sich die Zähne dran ausbeißen.


Edit:
4. Einen Timestamp zu benutzen, wie von Alisami vorgeschlagen, würde die Sicherheit auch definitiv erhöhen.
-STORM- is offline  
Thanks
1 User
Old 08/28/2012, 19:32   #8
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Ah danke, dann werd ich mich mal bisschen informieren über hashes undsowas, danke euch
Ludder231 is offline  
Old 08/28/2012, 21:26   #9
 
Achat's Avatar
 
elite*gold: 528
Join Date: Jan 2012
Posts: 2,127
Received Thanks: 2,403
Quote:
Originally Posted by -STORM- View Post
Die wichtigsten Schwachstellen sind folgende:

2. Auslesen des PWs.
Wenn du einfach ne Liste online stellst, in der die Lizenzen/PWs/HWIDs roh stehen, oder wenn irgendwo das richtige PW im Script steht, könnten die relativ leicht ausgelesen werden.
Sinnvoller wäre, die md5 Hashwerte o.ä. der gültigen PWs online zu speichern und abzufragen, ob der Hash des eingegebenen PWs enthalten ist. Selbst wenn jemand den gültigen Hash herausfindet, kann er daraus nicht einfach ein gültiges PW herleiten.

3. if Abfragen.
Abfragen wie 'if $pw = "abc" then' können leicht reversed werden. In OllyDbg ist das oft nur ein conditional jump, der durch ein NOP oder jmp ersetzt wird. Da würde auch ein Hashwert nicht helfen. Oder das PW wird direkt per HexEditor/Olly ausgelesen. In diesem Fall würde ein Hashwert es dem Hacker allerdings deutlich schwieriger machen.
Besser wäre, entscheidende Scriptbestandteile mit dem richtigen PW zu ver- und mit dem eingegebenen zu entschlüsseln. In nem Trainer wären das z.B. Offsets, Prozessnamen etc.
So steht das richtige PW nicht im Script, kann also nicht ausgelesen werden und es gibt keine einfache Fehlermeldung, die man umgehen kann bei falschem PW, sondern das Prog läuft, aber ist vollkommen unbrauchbar.
Man könnte mit dem Lizenzschlüssel / Passwort das gesamte AutoIt Script verschlüsseln . Somit wäre es (vorausgesetzt, das Passwort ist gut) unmöglich, das Programm ohne gültige Lizenz zu nutzen. Benutzt man dann noch einen guten Obfuscator, wäre der Aufwand, um an den Source zu kommen, bei einem größeren Script sehr hoch.

MfG
Achat is offline  
Thanks
1 User
Old 08/29/2012, 13:18   #10
 
Cashblood's Avatar
 
elite*gold: 0
Join Date: Apr 2012
Posts: 319
Received Thanks: 54
Quote:
Originally Posted by Achat View Post
Man könnte mit dem Lizenzschlüssel / Passwort das gesamte AutoIt Script verschlüsseln . Somit wäre es (vorausgesetzt, das Passwort ist gut) unmöglich, das Programm ohne gültige Lizenz zu nutzen. Benutzt man dann noch einen guten Obfuscator, wäre der Aufwand, um an den Source zu kommen, bei einem größeren Script sehr hoch.

MfG
Da binn ich auch interessiert.
Also Extra eine "Starter-Datei" erstellen, Auf lizenzeintrag warten und dann das originale script von FileInstall aus Starten oder wie?
Cashblood is offline  
Old 08/31/2012, 20:25   #11
 
SCORNI's Avatar
 
elite*gold: 26
Join Date: Jun 2009
Posts: 972
Received Thanks: 228
Wie schon erwähnt wurde, es ist sehr einfach möglich, jedoch ist es genauso möglich dieses Lizenssystem zu umgehen. Sinnvoller wäre es sowas über c++ o.ä. zu machen. Da wäre es zumindest schon mal unmöglich innerhalb von 5 sekunden den quellcode zu bekommen. Aber eine 100% Sicherung wirst du nie bekommen, es ist nur eine Frage der Zeit bis man das System gecrackt hat.
SCORNI is offline  
Reply




All times are GMT +1. The time now is 22:36.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.