1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

session_regenerate_id auf jeder Seite ausführen

  • Myc0rrhizal
  • 16. August 2008 um 01:12
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • Myc0rrhizal
    Gast
    • 16. August 2008 um 01:12
    • #1

    Versuche gerade eine (naive) abwehrmethode gegen session fixation zu implementieren (in ein login system).

    Dazu gibt es ja die funktion session_regenerate_id(). Es wird empfholen bei jedem user-restriction-level-change einen session_regenerate_id zu machen (zB beim einloggen).
    Nur was hält mich davon ab, die session id bei jedem seiten aufruf zu erneuern? Hab das mal bei einem scirpt getestet wo als erste zeile session_regenerate_id() steht (also eigentlich 2te da in der ersten session_start steht). Das login system funktionierte weiter.

    Verstehe also nicht ganz wie das funktioniert und wie ich das am besten einsetzen sollte

    (Übrigens man sollte immer session_regenerate_id mit dem parameter "true" aufrufen damit die alten ids gelöscht werden)

  • hal
    Punkte
    11.122
    Beiträge
    2.208
    • 16. August 2008 um 10:10
    • #2

    Naja, wenn man im Browser auf back geht, fliegt man dann nicht automatisch aus deinem System raus?
    Gleichiges, wenn man mehrere Browserfenster offen hat in der gleichen Session.

  • Myc0rrhizal
    Gast
    • 18. August 2008 um 12:53
    • #3

    Interessanterweise hauts mich nicht raus wenn ich den back button drücken. Bei mir wird die session id aber mit cookie weitergegeben und wird nicht an der url drangehängt.

  • hal
    Punkte
    11.122
    Beiträge
    2.208
    • 18. August 2008 um 19:04
    • #4

    hmmm und wenn die verbindung vom browser zum internet kurz abbricht beim empfang der seite, und deswegen das cookie nicht upgedatet wird?

    Das ist bei Handynetzwerk-basierten Verbindungen gar nicht so selten.

    Einmal editiert, zuletzt von hal (18. August 2008 um 19:06)

  • Myc0rrhizal
    Gast
    • 20. August 2008 um 20:23
    • #5

    Dann gehts wahrscheinlich nicht. Das Session_regenerate_id() auf jeder seite war nur exprimentel. Hab jetzt nurmeher eines beim einloggen/ausloggen und wenn mittels cookie wiedereingeloggt wird (min. alle 20min).

    Dh eine Session ID ist max. 20 min gültig, kurz genug um eine gewisse sicherheit zu gewährleisten.

  • beefy
    Punkte
    1.683
    Beiträge
    304
    • 21. August 2008 um 10:46
    • #6

    Guckst du mal in Wikipedia ausserdem... Du kannst sicherstellen, dass die Session ID nur mittels Cookie uebergeben wird, das sollte das Problem der Session Fixation meines Wissens nach loesen. Oder wie koennte ein Angreifer hier Schaden anrichten? Fuer weitere Gegenmassnahmen siehe ebenfalls den Wikipedia-Link.

  • Myc0rrhizal
    Gast
    • 29. August 2008 um 16:54
    • #7

    Danke - werd mir was überlegen, damit einfach keine sessions von GET/POST aktzeptiert werden

    Übrigens wenn man aufgrund von wirren code session_regenerate_id() mehr als einmal aufruft, verweigert der browser (zumindest FF3) anscheinend mehr als ein PHP Session cookie auf einmal und alle links bekommen eine die session id nachgestellt.

    Dh im Cookie is dann noch eine alte session_id und nur in den links ist die neue id.

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum