Autor Zpráva
Šuter
Profil
Dobrý deň,

Chcem si vytvoriť bezpečný login cez sessions a DB. Základ mám taký že sa skontroluje či je uživatel v db, následne vytvorí sessions nick atď. Len nechápem to sessionsID, ako sa dá ukradnút kde je uložené atď?

Ďakujem.
xROAL
Profil
Session ID sa predvolene ukladá do cookies (PHPSESSID) ktoré browser posiela na server.

Ak som teda schopný odchytiť komunikáciu klienta medzi serverom, vidím aj Session ID ktoré klient serveru posiela, mne už stačí len nastaviť si rovnakú cookie a je to vybavené - som prihlásený ako daný užívateľ.

Pokiaľ moje znalosti však siahajú, takýto postup je možný len v lokálnej sieti, asi len ťažko by som mohol sledovať trafiku ktorá prebieha medzi dvoma zariadeniami, ktoré sú ani boh nevie kde... (ak sa mýlim opravte ma, rád sa naučím niečo nové ;) )
Alphard
Profil
xROAL:
Sledovat komunikaci lze hlavně u bezdrátových sítí, veřejná místa jako pracoviště, školy, kavárny, nemocnice, ... jsou na to ideální. Takže pokud jde třeba o peníze, šifrovat.

Šuter:
Jestli nemáte nějakou další díru v aplikaci nelze bez kódu říct. Základ je uvedený v místním FAQ, nevím, jestli jste to viděl.
Rfilip
Profil
Druhou moznosti jak ziskat hodnotu vyse zmineho cookie je pomoci XSS. Takze pokud budete vsechny vstupy osetrovat touto cestou se k sesion id utocnik nedostane.
Camo
Profil
K tomu XSS by som ešte dodal, že treba nastaviť parameter ini_set('session.cookie_httponly', 1); a cez XSS sa ku SID nebude dať dostať. Samozrejme vstupy treba kontrolovať vždy.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: