Zum Inhalt springen

[PHP] Loginformular Auto-Browser-Form-Post verhindern


Empfohlene Beiträge

Hallo zusammen,

ich habe hier eine Webseite mit einem Loginbereich.

Nun kann man sich dort natürlich anmelden ;). Nun kann man sich nun im internen Bereich bewegeb und anschließend wieder ausloggen. Wenn man nun seinen PC verlässt, den Browser aber geöffnet lässt, kann sich jemand an den PC setzen, dort im Browser mit dem BACK Button in der History bis zum LoginFom zurückblättern. Jetzt sage der Browser, das er die Seite nur darstellen kann, wenn er die Formular Daten nochmals abschickt. Wenn man dies nun mit Ja bestätigt, ist der vermeindliche Übeltäter in meinem internen Bereich....

Gibt es einen Header o.ä. den ich schicken kann, der den Browser dazu veranlasst, solche Form posts nicht mehr dem User anzubieten?

Danke für alle Infos!

Gruß,

Markus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi!

Nur so ne Idee. Du generierst auf der Loginseite nen md5 Zufalls-Hash. Den schreibst Du in ne Datenbank und gibst ihn beim Login über ein hidden Feld mit. Sobald der User seine Daten eingegeben hat und auf "login" klickt prüftst Du nicht nur den Loginnamen und das Passwort, sondern auch ob der md5-Hash in der Datenbank steht. Dann, unabhängig davon ob der Username und das Passwort stimmen löschst Du den Hash oder setzt ihn über ein zweites Feld auf inaktiv. So ist gewährleistet, dass man die Post-Daten nur einmal nutzen kann.

Grüße, Tobias

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

danke für die Vorschläge... ich meine mal gelesen zu haben, dass das alles mit einem ganz einfach Header befehl geht. Ich hab auch schon ein paar getestet, leider hats nicht ganz funktioniert.

Im IE hatte ich schon teilweise erfolge mit folgendem header:


  header("Cache-Control: no-cache");

  header("Pragma: no-cache");

Gruß,

Markus

Link zu diesem Kommentar
Auf anderen Seiten teilen

danke für die Vorschläge... ich meine mal gelesen zu haben, dass das alles mit einem ganz einfach Header befehl geht. Ich hab auch schon ein paar getestet, leider hats nicht ganz funktioniert.

Ich würde mich darauf aber auch nicht verlassen. Mit solchen Anweisungen im Header sagst du dem Browser zwar, er soll die Daten nicht cachen, ob er sich aber auch daran hält weißt du nicht. "Vertrauen ist gut, Kontrolle ist besser".

Ich würde es auch mit einem Hash o.ä. machen, z.B. kannst du beim generieren der Login-Seite einen Hash aus Datum und Uhrzeit erzeugen (als hidden Field). Diesen Hash prüfst du dann beim Login-Vorgang. Wenn die Differenz nicht <= 5min (z.B.) ist, lehnst du den Loginvorgang ab.

Ok, ein Hash ist für eine Differenz vielleicht nicht gut geeignet, aber vom Prinzip halt...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...