Autoit Creditsystem Sicherheit

  • Hi,

    Ich habe ein paar Überlegungen bezüglich einer Surfbar über Autoit. Die Umsetzung dürfte nicht das Problem sein.

    Ich hatte mir gedacht, mit INetGetSource Variablen zu übermitteln und die mit PHP in einer MySQL DB zu speichern bzw. zu updaten.

    Natürlich muss man auch ein Credit kriegen, wenn man eine Seite aufruft. Hier ist das eigentliche Problem.
    Wenn ich den Benutzernamen des Users und die ID der Seite übermittel um ein Credit hinzuzufügen und abzuziehen, dann ermögliche ich es denjenigen, die sich damit auskennen, die PHP ausfindig zumachen und die ganze Zeit Credits erzeugen.

    Auch wenn man nur 1 Credit pro Seite bekommen kann, so könnte man sich mit allen PHP Dateien Credits faken, da man immernur die ID der nächsten Seite braucht, die auch über eine PHP an Autoit übergeben wird.

    Mir sind ein paar Methoden eingefallen, die aber alle nur das Faken von Credits erschweren und nicht unmöglich machen. Irgendwie muss man das Ganze an Autoit binden, sodass es außerhalb der Surfbar nicht möglich ist.

    Vielleicht hat jemand eine Idee.

    Gruss sh0r7y

  • Hmmm nicht einfach ich würde per php eine verschlüsselte datei erzeugen selbstverständlich mit ein salt dafür hier ein beispiel -> http://www.php-einfach.de/sonstiges_generator_blowfish.php die key erzeugste aus z.b. Daten von den user z.b. username+userid+email+tag oder sowas wandelst das in md5 hash und nutzt diesen als key für blowfish. Die Surfbar ladet diese datei die erzeugt wird beim aufruf eines php scriptes. Danach soll die surfbar diese entschlüsseln den salt kennt die bar ja in der datei sind weitere md5 hash die z.b. aus seitenlink und id und username besteht. Mysql hat jetzt den datensatz welche seiten der user aufrufen kann und die surfbar hat diese info auch. Bei ein klick auf der surfbar übermittelst du ein datensatz davon was ein md5 hash ist den kennt mysql und setzt nur den wert höher von user wenn der hash stimmt und sperrt diesen für den nächsten download.

    Kompliziert aber sehr schwer bis garnicht zu knacken!

    Gruss DevFly

  • Vielleicht von dem PHP-Teil Prüfsummen erstellen lassen, die nur 3 Sekunden gültig sind und diese dann wieder vom Benutzer abfragen.
    MfG, James C.

    Sowas in der Art hab ich gerade mit timestamps. So kann man maximal alle 15 Sekunden einen Credit verdienen.

    Hmmm nicht einfach ich würde per php eine verschlüsselte datei erzeugen selbstverständlich mit ein salt dafür hier ein beispiel -> http://www.php-einfach.de/sonstiges_generator_blowfish.php die key erzeugste aus z.b. Daten von den user z.b. username+userid+email+tag oder sowas wandelst das in md5 hash und nutzt diesen als key für blowfish. Die Surfbar ladet diese datei die erzeugt wird beim aufruf eines php scriptes. Danach soll die surfbar diese entschlüsseln den salt kennt die bar ja in der datei sind weitere md5 hash die z.b. aus seitenlink und id und username besteht. Mysql hat jetzt den datensatz welche seiten der user aufrufen kann und die surfbar hat diese info auch. Bei ein klick auf der surfbar übermittelst du ein datensatz davon was ein md5 hash ist den kennt mysql und setzt nur den wert höher von user wenn der hash stimmt und sperrt diesen für den nächsten download.

    Kompliziert aber sehr schwer bis garnicht zu knacken!

    Gruss DevFly

    Das klingt sehr sehr gut. Da ich sowas noch nie gemacht habe, heißt es jetzt was neues dazulernen :)
    Aufjedenfall vielen Dank für diese Lösung DevFly. Aber eine Frage habe ich dazu noch.

    Was ist wenn jemand die Surfbar decompiled und so auch an den Salt kommt? Gibt es einen Möglichkeit in Autoit, diesen Salt "unentschlüsselbar" zu machen? Wahrscheinlich falsch beschrieben. Der Salt darf dritten nicht zugänglich sein. Dann wäre es perfekt.

    Einmal editiert, zuletzt von sh0r7y (31. August 2011 um 23:01)

  • Also ich habe jetzt lange Zeit darüber nachgedacht und denke, dass man es einfach nicht sicher gestalten kann. Dadurch dass das AutoIt Programm reversed werden kann, ist es meiner Meinung nach nicht möglich, die Surfbar zu sichern.

  • Also ich habe jetzt lange Zeit darüber nachgedacht und denke, dass man es einfach nicht sicher gestalten kann. Dadurch dass das AutoIt Programm reversed werden kann, ist es meiner Meinung nach nicht möglich, die Surfbar zu sichern.


    Würde ich so nicht sagen:
    Jeder Client muss sich doch irgendwie authentifizieren, oder?
    Dann brauchst du nur einen Server, der jeden Tag um Mitternacht für jeden Benutzer einen Key erstellt, und dieser Key nach dem 3. mal (oder 1. mal) benutzen deaktiviert wird und der Benutzer dann auf einen neuen Key warten muss.

    MfG, James C.

  • Würde ich so nicht sagen:
    Jeder Client muss sich doch irgendwie authentifizieren, oder?
    Dann brauchst du nur einen Server, der jeden Tag um Mitternacht für jeden Benutzer einen Key erstellt, und dieser Key nach dem 3. mal (oder 1. mal) benutzen deaktiviert wird und der Benutzer dann auf einen neuen Key warten muss.

    MfG, James C.

    Ich verstehe leider nicht ganz den Sinn dahinter.

  • So kann man nur bestimmt oft an einem Tag Credits bekommen, und selbst wenn man das Programm knackt kann man das nicht umgehen.


    Ziemlich unschöne Lösung. Wenn man gerade die Surfbar anmacht, der Randomkey deaktiviert wird und der PC oder das Programm aus irgendeinem Grund abstürzt.