Sicherheitsbedenken bei PHP-Sitzungsvariablen
Problemstellung:
Ist es sicher, die Benutzerautorisierungsstufe nach der Überprüfung in einer PHP-Sitzungsvariablen zu speichern? Anmeldeinformationen und Durchführen einer zusätzlichen Abfrage der Rollen Tabelle?
Antwort:
Sitzungen sind zwar sicherer als Cookies, aber dennoch anfällig für Diebstahl. Um dieses Risiko zu mindern, ziehen Sie die folgenden Maßnahmen in Betracht:
IP-Überprüfung:
- Verfolgen Sie die IP-Adresse des Benutzers während der Anmeldung.
- Vergleichen Sie die IP Adresse bei nachfolgenden Anfragen, um unbefugten Sitzungszugriff zu verhindern.
- Beachten Sie, dass diese Methode aufgrund der dynamischen IP möglicherweise nicht zuverlässig ist Zuweisungen.
Nonce (Einmal verwendete Zahl):
- Generieren Sie ein eindeutiges Token für jede Seitenanforderung.
- Vergleichen Sie die Die in der Sitzungsvariable gespeicherte Nonce wird mit der für die aktuelle Seite generierten Nonce verglichen.
- Dies verhindert Session-Hijacking, indem sichergestellt wird, dass Anfragen entstehen aus dem Browser des Benutzers.
Zusätzliche Überlegungen:
- Verwenden Sie Sitzungs-IDs, die sicher im serverseitigen Sitzungsspeicher gespeichert sind.
- Vermeiden Sie das Speichern von Benutzeranmeldeinformationen in Sitzungsvariablen.
- Implementieren Sie Sicherheitsüberprüfungen bei jeder Skriptanforderung, auch wenn Cookies werden nicht verwendet.
- Beachten Sie, dass die Kombination von Cookies und AJAX die Anfälligkeit erhöhen kann, wenn Cookies gestohlen werden.
- Überprüfen und aktualisieren Sie regelmäßig die Sitzungsverwaltungspraktiken, um potenziellen Sicherheitsbedrohungen zu begegnen.
Das obige ist der detaillierte Inhalt vonIst das Speichern von Benutzerautorisierungsstufen in PHP-Sitzungsvariablen sicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!