rune files -> login ohne pw

    • rune files -> login ohne pw

      bei den rune files prüft nur der loginsrv. die zugangsdaten, nicht aber der charserv.

      das hat zur folge, dass, wenn man den loginserv. "überspringt", man sich in jeden beliebigen account ohne passwort einloggen kann.

      zum bypassen habe ich folgendes geschrieben: min_login_srv.tar ... at uploaded.to - Free File Hosting, Free Image Hosting, Free Music Hosting, Free Video Hosting, ... (serverip bei SRV_IP angeben)

      verwendung: serverip eintrage, kompilieren (entsprechende winsock lib mitlinken), starten
      in der neuz.ini 127.0.0.1 als serv. ip eintragen -> mit einer existierenden account id einloggen (pw ist egal)
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • virtuos: das hat damit nichts zu tun. ich weiß auch nicht mehr, wie genau die aufteilung war. (loginsrv bindet den charsrv ein? ich hab in erinnerung, dass der worldsrv ihn einbindet - ist an dieser stelle aber auch egal :))

      um es nochmal ausführlicher zu erklären:

      ok, ontopic: der flyff client baut 3 verbindungen auf: loginsrv, charsrv und worldsrv. dazu sendet er jedem server die logindaten -> jeder "server" sollte diese prüfen und, wenn die daten ungültig sind, zumindest die verbindung beenden. genau das geschieht bei den rune files aber nicht - nur der loginsrv prüft das passwort, charsrv und worldsrv "überspringen" diesen prozess und lassen jedes passwort zu - sicherheitslücke.

      wenn man nun aber erst gar keine verbindung zum richtigen loginsrv aufbaut, sondern zb lokal einen entsprechenden "server" startet, welcher einfach, sobald ein client eine verbindung (= flyff client) zu ihm aufbaut, das "willkommenspaket" (kann man das so bezeichnen?) + die serverliste sendet, werden die daten nirgends geprüft -> der client sendet die gleiche daten wieder an den charsrv+worldsrv -> diese nutzen nur die accid um die acc spez daten zu laden, ignorieren aber das pw -> login ohne pw. :)

      es ist also eine total einfache und offensichtliche sicherheitslücke, diese dem autor der files eigentlich kaum hätte passieren dürfen... :D (wobei, wenn man sich die allg qualität des sourcecodes anschaut... kein wunder :P)

      (und ebenso ist die lücke auch extrem einfach zum fixxen - einfach noch den entsprechenden "check" einbauen und im fehlerfall die verbindung zum client schließen)

      @pikatchuu: wie nydn bereits sagte, in dem archiv sind quasi nur 2 textdateien enthalten, keine ausführbare dateien.

      @kern: du ben einen c(++) kompilierer (/compiler) um den sourcecode nach der srv spez anpassung (= die richtige serverip eintragen - siehe dazu die konstante REAL_SRV_IP) zu kompilierer, also zu übersetzen - eine ausführbare datei erzeugen. nutzen kannst du dabei z.B. dev cpp, eine ide inkl. kompilierer für windows. wenn du dir dieses heruntergeladen hast, erstelle ein neues projekt, füge die quelltextdatei dem projekt hinzu. dann musst du in den projekt einstellungen noch dem linker sagen, dass er die entspr. winsock-lib mitlinken soll. (siehe dazu die readme datei im archiv) - dann einfach kompilieren (siehe menü) und starten.

      als nächstes in der neuz.ini des v6 clients 127.0.0.1 eintragen und starten -> einloggen mit einer gültigen accid, das passwort ist völlig egal. beachte aber, wie bereits im thementitel und im ersten post steht: das ganze funktioniert natürlich nur mit den rune serverfiles.