13 Stimmen

Ist es für einen böswilligen Benutzer möglich, $_SESSION zu bearbeiten?

Ich speichere einige wichtige Informationen in $_SESSION , nicht in $_COOKIE . Meine Frage lautet also: Ist es gefährlich? Oder ist es vor böswilligen Nutzern geschützt, die versuchen, es zu bearbeiten, und ich habe keine Probleme? Ich danke Ihnen.

Übrigens, ist es auch möglich, die $_COOKIE ? Ich habe gehört, ja, aber wenn ja, wie?

18voto

Mike Punkte 22052

$_SESSION wird serverseitig gespeichert. Das Beste, was ein Hacker tun könnte, wäre, die bestehende Sitzung durch die Sitzung eines anderen Benutzers zu ersetzen, aber der Hacker könnte nicht beliebige Daten in $_SESSION . $_COOKIE wird jedoch clientseitig gespeichert, so dass ein Hacker beliebige Daten in den Cookie einfügen kann, indem er den Cookie einfach bearbeitet.

7voto

BalusC Punkte 1034465

Standardmäßig wird die $_SESSION ist bereits durch ein Cookie mit dem Namen phpsessionid (damit der Server in der Lage ist, den Client zu identifizieren und ihn mit einer der Sitzungen im Speicher des Servers zu verknüpfen). Wenn ein Hacker den Cookie-Wert einer anderen Person kennt und ihn in seinen eigenen Cookie mit demselben Namen auf derselben Domäne/demselben Pfad kopiert, dann hat der Hacker Zugriff auf dieselbe $_SESSION . Der Cookie-Wert ist jedoch lang und zufällig genug, um das Risiko zu minimieren, dass die Sitzung innerhalb einer halben Stunde (dem Standard-Timeout für Sitzungen) gekapert wird.

3voto

ctford Punkte 7069

$_SESSION wird auf Ihrem Webserver gespeichert, so dass es nicht möglich ist, es direkt über das Web zu ändern. Natürlich kann Ihre PHP-Anwendung $_SESSION aktualisieren, so dass es für einen Angreifer immer noch möglich sein könnte, Ihre Anwendung auszutricksen, damit sie etwas mit $_SESSION macht, was sie nicht tun sollte - das hängt alles von den Besonderheiten Ihrer Anwendung ab.

$_COOKIE wird im Browser des Benutzers gespeichert, was bedeutet, dass der Benutzer die Möglichkeit hat, seine eigenen Cookies zu ändern.

Einer der wichtigsten Verwendungszwecke von Cookies ist die Authentifizierung. Ein Benutzer meldet sich an und die Informationen werden in $_SESSION gespeichert. Ein Cookie (gespeichert in $_COOKIE) zeichnet die Sitzungskennung des Benutzers auf, so dass Ihre Anwendung weiß, welche Sitzung zu dem angemeldeten Benutzer gehört.

3voto

Mike B Punkte 31289

Wenn Sie sich Sorgen über das Ändern von Sitzungen durch andere Personen (Session Hijacking) machen, sollten Sie sich mit session_regenerate_id()

1voto

Samarlover Punkte 21

Ja, Hacker können die Sitzung hijacken, die Sie verwenden können session_regenerate_id() oder sie gestohlen siehe wenn Sie Admin sind und sich eingeloggt haben, (Sitzung ist auf dem Server) Hacker haben es über xss = > wird Cookie in seinem PC mit dieser Sitzung und log , ändern Sie den Pass oder fügen Sie Admin , vor dem Ende der Sitzung


Kekse können auch gestohlen werden, siehe diesen Code setcookie("admin","admin_log",time()+3600); Wenn der Hacker den Code wie OpenSource kennt, kann er sich als Cookie durch Firefox-Addons als Cookie-Name und -Wert erstellen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X