phpbar.de logo

Mailinglisten-Archive

[php] 1/2 OT Session und Google Cache

[php] 1/2 OT Session und Google Cache

Sebastian Mendel lists at sebastianmendel.de
Mon Dez 4 12:52:48 CET 2006


Ringo Großer schrieb:
> Hallo Liste,
> 
> ich habe mit PHP einen geschützten Bereich gebaut, welcher
> über  eine Authorisierung per Session zu erreichen ist. Also der
> User gibt Benutzernamen und Passwort ein, beides wird gegen
> seinen Account in der DB geprüft, danach erfolgt der Login per
> Schalter in seiner Session.
> Im geschützten Bereich kann der User u.a. auch seinen Punktestand
> abrufen, eine Art Bonuspunkte für seine Teilnahme.
> 
> [...]
> 
> Das betreffende Suchergebnis zeigt einen Link zu meiner Seite
> inklusive des GET-Parameters PHPSESSID, [...]

du kannst jetzt lange darüber spekulieren wie diese ID dahin gekommen, 
denn wie aus den anderen Kommentaren schon zu erkennen gibt es da ein 
Vielzahl an Möglichkeiten.

Viel Wichtiger ist was du dagegen tun kannst:

Session-ID nur per Cookie verwenden: Benutzer die Cookies für so etwas 
ablehnen sind paranoid und das widerspricht dem übertragen der 
Session-ID per URL ja erst recht - also ist diesen Benutzern eh am 
besten geholfen sie kommen gar nicht rein!

Ändern der Session-ID:

http://php.net/session_regenerate_id

nach jedem Session-Start

selbst wenn jetzt jemand die Session übernehmen will, kommt entweder 
beim richtigen oder beim falschen User eine Meldung über eine ungültige 
Session-ID - was du damit machst ist kann deiner Fantasy überlassen ...


Sichern der Session ID:


session.cookie_httponly  boolean

     Marks the cookie as accessible only through the HTTP protocol. This 
means that the cookie won't be accessible by scripting languages, such 
as JavaScript. This setting can effectively help to reduce identity 
theft through XSS attacks (although it is not supported by all browsers).



session.hash_function = 1

"session.hash_function  integer

session.hash_function allows you to specify the hash algorithm used to 
generate the session IDs. '0' means MD5 (128 bits) and '1' means SHA-1 
(160 bits). Note: This was introduced in PHP 5."



session.hash_bits_per_character = 6;

"session.hash_bits_per_character  integer

session.hash_bits_per_character allows you to define how many bits are 
stored in each character when converting the binary hash data to 
something readable. The possible values are '4' (0-9, a-f), '5' (0-9, 
a-v), and '6' (0-9, a-z, A-Z, "-", ","). Note: This was introduced in 
PHP 5."




-- 
Sebastian Mendel

www.sebastianmendel.de

php::bar PHP Wiki   -   Listenarchive