Seite 1 von 4
Fehler bei den Sessions
Verfasst: 18.08.2007 22:08
von M3lloW
Hallo!
habe den Mod : LoginEncryptionMod
Installiert , die erste Zeit gieng es gut aber jetzt nach paar Tagen ( Wochen inzwischen) kommt ab und an beim einloggen per autologin dieser Fehler:
phpBB : Kritischer Fehler
Error updating session key
DEBUG MODE
SQL Error : 1062 Duplicate entry 'cec8c38caf8d8edd0db91c083eb1a6b2-2753' for key 1
INSERT INTO phpbb_sessions_keys(key_id, user_id, last_ip, last_login) VALUES ('cec8c38caf8d8edd0db91c083eb1a6b2', 2753, '543d906f', 1186754620)
Line : 230
File : sessions.php
Wäre dankbar wen mir wer helfen kann. (nein es ist nicht mein session key ^^)
Und nein, rückgängig machen geht nicht sonst hätt ich das längst gemacht.
Verfasst: 18.08.2007 22:57
von gn#36
Hast du mal einen Link zu dem Mod?
Die Meldung bedeutet, dass offenbar ein Session Key schon verwendet wird obwohl versucht wurde den Key neu in die Datenbank einzutragen.
Da die eigentlich per Zufall erstellt werden ist sowas ziemlich selten (die Chance auf einen 6er beim Lotto ist deutlich größer bei den Kombinationsmöglichkeiten).
Notfalls sollte
in KB:phpmyadmin ausgeführt zumindest erst einmal für Ruhe sorgen, das leert die Sessions Tabelle, so dass Duplikate noch unwahrscheinlicher werden. Ob das das Problem wirklich löst ist aber die Frage da ich nicht genau weiß was der Mod ändert. Wenn der Mod einen Fehler hat versucht er vielleicht eine Session-ID vom Benutzer in die Datenbank zu schreiben. Das wäre dann nicht nur die Ursache für den Fehler sondern sogar eine Sicherheitslücke.
Verfasst: 19.08.2007 00:05
von M3lloW
Hatte den Mod extra eingebaut weil mein Board schonmal durch ein Cookie gehackt wurde, sollte das ganze sicherer machen. Haben momentan 3400 Registrierte benutzer .
hier der Mod:
http://www.phpbbhacks.com/download/5586
/edit
hab deinen befehl mal eingegeben , auch mit den session keys tabelle , kommt immernoch aber da ich nicht wirklich viel von sql weis kp aber er die tabellen wirklich geleert hat
Verfasst: 19.08.2007 00:35
von gn#36
Ich würde sagen an dem Mod liegt es nicht. Der ändert zwar die Art der Speicherung des Passwortes, aber eigentlich nichts an den Sessions. Ehrlich gesagt halte ich das allerdings nicht unbendingt für besonders viel sicherer, denn an der Art und Weise der Übertragung des Passwortes ändert sich nichts, lediglich der Rückschluss vom Hash in der Datenbank auf das Passwort per Reverse-Lookup ist nicht möglich, da es mit einem zusätzlichen String kombiniert verschlüsselt wird. Da man an diesen Hash aber sowieso nur herankommt wenn man bereits Zugriff auf die Datenbank hat ist diese Sicherheit im Prinzip witzlos.
Wenn du den Befehl eingegeben hast und es kam keine Fehlermeldung dann sollte die Tabelle auch leer sein.
Das könnte ein ähnliches Problem sein wie hier: KB:sessions
Verfasst: 19.08.2007 01:28
von M3lloW
hm ok, ich habe mal das hier probiert aus deinem link : Tabelle automatisch leeren
melde mich wenn es nicht geht , danke
/edit
kommt immernoch
phpBB : Kritischer Fehler
Error updating session key
DEBUG MODE
SQL Error : 1062 Duplicate entry 'blaaaaaarausgenommen-2' for key 1
INSERT INTO phpbb_sessions_keys(key_id, user_id, last_ip, last_login) VALUES ('blaaaaaarausgenommen-2', 2, '5blaaaaaarausgenommen-2', blaaaaaarausgenommen-2)
Line : 259
File : sessions.php
hier mal die sessions.php
http://rapidshare.com/files/49850063/sessions.php.html
Verfasst: 19.08.2007 13:19
von M3lloW
Falls man mein edit nichtmehr gesehen hat , hab meine sessions datei mal angehängt, eventuell kan man mir jetzt eine lösung nennen
Verfasst: 19.08.2007 13:46
von bantu
Hallo M3lloW
Versuch mal folgende Abfrage via phpMyAdmin.
Erstelle vorher ein Backup.
Code: Alles auswählen
DROP TABLE IF EXISTS `phpbb_sessions_keys`;
CREATE TABLE `phpbb_sessions_keys` (
`key_id` varchar(32) binary NOT NULL default '0',
`user_id` mediumint(8) NOT NULL default '0',
`last_ip` varchar(8) binary NOT NULL default '0',
`last_login` int(11) NOT NULL default '0',
PRIMARY KEY (`key_id`,`user_id`),
KEY `last_login` (`last_login`)
) TYPE=MyISAM;
Beachte bitte KB:knigge - Thema Topic Bumping.
Gruß,
bantu.
Verfasst: 19.08.2007 14:29
von M3lloW
oh sry.
Den Befehl hatte ich gestern probiert hat mir jemmand geschrieben aber er konnte nicht ausgeführt werden mysqldumper hat an den not null commands rumgemeckert und danach gieng nichtmal mehr das ausloggen
werde es aber nochmal probieren , editiere wenn ich es getestet habe
/edit
hab das jetzt mal per phpmyadmin gemacht, folgendes ergebnis:
DROP TABLE IF EXISTS `phpbb_sessions_keys` ;# MySQL lieferte ein leeres Resultat zurück (d. h. null Zeilen).
CREATE TABLE `phpbb_sessions_keys` (
`key_id` varchar( 32 ) binary NOT NULL default '0',
`user_id` mediumint( 8 ) NOT NULL default '0',
`last_ip` varchar( 8 ) binary NOT NULL default '0',
`last_login` int( 11 ) NOT NULL default '0',
PRIMARY KEY ( `key_id` , `user_id` ) ,
KEY `last_login` ( `last_login` )
) TYPE = MYISAM ;# MySQL lieferte ein leeres Resultat zurück (d. h. null Zeilen).
melde mich wenn es immernoch login errors gibt , danke schonmal
/edit 2
Fehler kommt immernoch

der gleiche
Verfasst: 19.08.2007 15:27
von Mahony
Hallo
Versuchs mal so
Code: Alles auswählen
DROP TABLE IF EXISTS `phpbb_sessions_keys`;
CREATE TABLE phpbb_sessions_keys (
key_id varchar(32) DEFAULT '0' NOT NULL,
user_id mediumint(8) DEFAULT '0' NOT NULL,
last_ip varchar(8) DEFAULT '0' NOT NULL,
last_login int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (key_id, user_id),
KEY last_login (last_login)
);
ALTER TABLE phpbb_users ADD user_login_tries smallint(5) UNSIGNED DEFAULT '0' NOT NULL;
ALTER TABLE phpbb_users ADD user_last_login_try int(11) DEFAULT '0' NOT NULL;
INSERT INTO phpbb_config (config_name, config_value) VALUES ('max_login_attempts', '5');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('login_reset_time', '30');
Grüße: Mahony
Verfasst: 19.08.2007 15:35
von M3lloW
Fehler
SQL-Befehl:
ALTER TABLE phpbb_users ADD user_login_tries smallint( 5 ) UNSIGNED DEFAULT '0' NOT NULL ;
MySQL meldet: Dokumentation
#1060 - Duplicate column name 'user_login_tries'
lass ich die zeile weg mit dem login tries folgt:
MySQL meldet: Dokumentation
#1062 - Duplicate entry 'max_login_attempts' for key 1