Sind Sessions extern veränderbar?

  • Hallo,
    ich habe ein Hausaufgabenscript für die Klasse geschrieben und
    wollte den Kauf und check ob Genug Geld vorhanden ist per
    Session regeln, wo der Benutzername drin steht und ich entsprechende
    Datenbanksätze auslesen kann.

    Nun wäre dies aber ein hohes Sicherheitsmanko, wenn es möglich wäre
    die Sessions von anderen Webserver (Skripten) oder lokal auf dem
    Rechner zu ändern.

    Ist mein Lösungsweg sicher und wenn nicht wie könnte ich es sicherer
    machen?
    Danke

  • Das hängt davon ab, ob deine Sessions in Session-Cookies abgelegt werden.
    Diese sind prinzipell veränderbar.
    Warum lässt du die Sachen wie die Geldbestände nicht in der DB?


  • Zitat

    Warum lässt du die Sachen wie die Geldbestände nicht in der DB?

    Stehen in der Datenbank nur irgendwie muss ich ja den Wert Where Benutzername <--
    her bekommen. Das würde dann aus der Session kommen, damit man sich nicht jedes mal neu einloggen muss.

    So wäre es dann möglich wenn die Session['nutzer'] auf eine Person
    geändert wird, die entsprechendes virtuelles Geld hat mit deren
    Account Geld zu leechen (also auf deren Kosten Hausaufgabe zu downloaden...).

  • Wenn du die Session-ID in einem Cookie ablegst, dass nur 30 Minuten oder bis zum Beenden des Browsers hält und du noch die IP überprüfst, muss das reichen. Dauerlogin ist natürlich potentiell unsicher, aber solang du eine ganz lange ID und nicht Username oder Userid im Cookie speicherst, geht das auch.