Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Doppelter Login
#1
Beim Testen unseres Forums ist aufgefallen, dass man sich unbegrenzt von mehreren Rechnern gleichzeitig einloggen kann und der User gar keine Info darüber erhält.

Frage: Kann man mybb so abändern oder gibt es ein Plugin, welches die gleichzeitige Nutzung unterbindet?

Interessant wäre dann auch eine Meldung wie z.B.
"Dein Account wird gerade verwendet. Solltest du nicht der Account-Inhaber sein, sperre umgehend deinen Account. Anschließend must du dein Passwort ändern."
Es sollte dann auch die Möglichkeit bestehen, den Account sofort zu sperren, damit dieser nicht weiter benutzt werden kann. Anschließend sollte der User automatisch gezwungen werden, sein Passwort zu ändern. Erst nach der Passwortänderung mit Email-Bestätigung sollte der Account dem User wieder zur Nutzung bereitstehen. Im Prinzip wie bei Registrierung.

Ich hoffe Ihr versteht meine Gedanken.
Cream1974 ( http://www.SWINGERinside.de )

Pensa, parla e agisci come se tu dovessi uscire dalla vita da un momento all'altro.
(Denke, rede und handle, als ob du von einem Moment auf den anderen aus dem Leben scheiden müßtest.)
Marco Aurelio
#2
Ja verstehen tu ichs, da ich sogar mal das Problem hatte, bei einem Freund vergessen zu haben die Cookies zu löschen bzw mich auszuloggen, was dazu führte das er sich einfach nur in die Seite begeben musste und sämtliche Admin-Rechte hatte, was natürlich nicht sein soll Smile

Hmm ich überlege grade... es müsste eigentlich möglich sein unmitelbar während der Anmeldung zu überprüfen ob der jeweilige User nicht schon online ist (Zeitbegrenzung 15 Minuten), jedoch ist auch das keine wirkliche Maßnahme, da , wenn der User mal über 15Minuten nichts im Board gemacht hat, dieser ja praktisch "offline" ist, in dieser Zeit könnte man sich nun von einem anderen Board aus einloggen und man könnte keinen Unterschied feststellen, außer die IP-Range zu überprüfen, was u.A. aber auch zu fehlschlüssen führen könnte.
Ich glaube die einzige Möglichkeit wirklich bestimmen zu können, ob sich ein User eingeloggt hat, ist die Sessions zu überprüfen und bei Nichtvorhandensein der jeweiligen Zeile eine Fehlermeldung ausgibt - das würde jedoch implizieren das man sich selber nur am eigenen PC einloggen kann, weil es sonst zu Fehlermeldungen führt... das ist halt ein Problem was mit den Cookies beihergeht ^^
#3
Klar, sicherlich wäre eine Möglichkeit, die Cokkies abzuschalten. So wäre zumindest immer die Session geschlossen.

Jedoch verhindert das nicht die Doppel-Anmeldung, d.h. im Klartext. Es kann ein und derselbe Account auf Rechner A und Rechner B gleichzeitig betrieben werden.
Der Hinterund ist folgender:
Unsere Seite wird - nachdem unser Account bei Hostloco fertig eingerichtet ist - bei einer Registrierung eine Vorschaltung zu X-Check (Alterschutzkontrolle) erhalten.
Dies gilt aber nur für die Registrierung - bei fertig eingerichteten Accounts wird weiterhin die Login-Box verwendet!

Da ein fertig registrierter Account aber von mehreren Rechnern über das normale Login gleichzeitig genutzt werden kann, wollen wir den Account soweit einschränken, dass zumindest das gleichzeitige Verwenden des Accounts eingeschränkt wird. Jedoch möchten wir auch verhindern, das sich der User immer neu anmelden muss.
Die Meldung "Dein Account wird gerade verwendet. Solltest du nicht der Account-Inhaber sein, sperre umgehend deinen Account. Anschließend must du dein Passwort ändern." soll lediglich dem User einen Hinweis geben, dass dieser gerade von einem anderen PC verwendet wird und er somit das Passwort ändern muss. Dieses würde also dazu führen, dass die Session auf dem anderen Rechner beendet wird und da eine E-Mailbestätigung über den Passwortwechsel notwendig ist kann sich der andere PC auch nicht mehr einloggen. Also auf Dauer ein lästiges Verfahren wieder die Daten beim anderen User zu erfragen, falls dieser überhaupt davon weiß.
#4
Ich glaube die einzig effektive Möglichkeit Doppel-Logins zu überprüfen, ist das Erweitern der Session-Informationen;
beim Besuchen des Boards und bei jedem Aufrufen einer beliebigen Seite innerhalb des MyBB wird die Lokation des Benutzers sowie die IP mitsamt der Session-ID gespeichert.

Nehmen wir nun an BenutzerA sitzt zu Hause und surft im Board rum.
Er weiß jedoch nicht, das BenutzerB an seinem PC sich über den Account von BenutzerA einloggen kann (vergessen Cookies zu löschen oder vll sogar gehackt).
Nun ist BenutzerA in einem Thread, als BenutzerB sich mit der identischen Session-ID (!) einloggt (Session-ID wird aus dem Passwort und anderen Faktoren generiert) - das Session-System merkt natürlich nichts böses und überschreibt die Session-Zeile in der DB von BenutzerA mit der IP von BenutzerB.

Und genau an diesem Punkt sieht man auch die Schwirigkeit dieses Problems: auch wenn man nun ein IP-Vergleich macht, welches beweist, dass BenutzerB sich mit der gleichen SID eingeloggt hat, obwohl BenutzerA auch eingeloggt ist, könnte man diesen Fall einfach als "och, mein router hat sich nur neugestartet" abtun, was sogar ziemlich realitätsnah wäre.
Also bleibt nur die Möglichkeit bei jedem Session-Aufruf auch die SID zu ändern, womit es dann für BenutzerB nicht möglich wäre, sich einzuloggen, da seine SID veraltet ist - das wiederum ist wegen dem Cookie-Session-System nicht möglich, da sich BenutzerA auch nicht mehr einloggen könnte.

Abgesehen davon - was passiert wenn BenutzerA vergisst sich auszuloggen, dann zum BenutzerB fährt und von dort aus in sein Forum möchte? Dann wird er ja ungewollt zum Hacker deklariert :/
#5
XxAnimusxX schrieb:Abgesehen davon - was passiert wenn BenutzerA vergisst sich auszuloggen, dann zum BenutzerB fährt und von dort aus in sein Forum möchte? Dann wird er ja ungewollt zum Hacker deklariert :/

Nun, das wäre doch eigentlich gar nicht so schlimm, denn BenutzerA hat ja seinen Browser geschlossen und ist demnach nicht aktiv. Demnach wäre also ein Einwahl von einem anderen System her möglich. Verhindert werden soll lediglich, dass beide Benutzer gleichzeitig (also zur selben Zeit) den Account nutzen.