Autor Zpráva
stepanka
Profil *
Ahoj,

chtěla bych předcházet krádeži Session ID tím, že budu kontrolovat IP adresu uživatele. Když si ale zobrazím proměnnou

$_SERVER['REMOTE_ADDR']

zobrazí se mi IP adresa poskytovatele 89.103.47.23. IP adresu mám privátní 192.168.1.101, ale ta se v proměnné $_SERVER nikde nevyskytuje.

Není to nějaké zvláštní? Pokud tomu dobře rozumím, sdílím tu adresu 89.103.47.23 spolu se spoustou dalších uživatelů. A v tom případě se kontrola pomocí IP adresy stává méně účinnou, protože nebude fungovat na uživatele, kteří jsou u stejného poskytovatele. Nebo se pletu?

Děkuju moc.
petr 6
Profil
stepanka:
Není to nějaké zvláštní?
Ne, je to celkem běžné.

A v tom případě se kontrola pomocí IP adresy stává méně účinnou, protože nebude fungovat na uživatele, kteří jsou u stejného poskytovatele. Nebo se pletu?
Nemusí to být zrovna všichni uživatelé u stejného poskytovatele, ale často například všichni uživatelé, kteří bydlí ve stejném domě (domácnosti, ulici apod.) a mají stejného poskytovatele, samozřejmě se to liší u jednotlivých poskytovatelů. (Například já mám u sebe doma taky adresu 192.168.1.101, počítač vedle v pokoji má 192.168.1.102, ale oba se připojujeme na internet přes jinou adresu tvaru 89.něco.něco.něco)
DoubleThink
Profil *
Adresa podsítě je někdy k nalezení v HTTP hlavičce X-Forwarded-For, tedy $_SERVER['HTTP_X_FORWARDED_FOR']. Ovšem záleží na libovůli síťových prvků, jestli ji tam doplní nebo ne.
stepanka
Profil *
petr 6, DoubleThink:

Moc vám děkuju za reakce.

V proměnné $_SERVER['HTTP_X_FORWARDED_FOR'] mám taky hodnotu 89.103.47.23, ale chápu, že to může být u každého připojení jiné.

A neexistuje způsob, jak zjistit i tu privátní? Protože pak by tato ochrana byla účinnou na 99,9%, jelikož by se nenašel uživatel, který má stejnou jak privátní adresu, tak adresu poskytovatele. Vždycky se alespoň jedna musí lišit, teda aspoň myslím.
DoubleThink
Profil *
stepanka:
A neexistuje způsob, jak zjistit i tu privátní?
Ne.
roberta
Profil
privátna IP adresu by sa dala zistiť iba v lokálnej sieti. napr. máš firmu, v nej intranet. vo vnútri sieti vidíš tie privátne adresy, ale z vonka z internetu vidíš inú IP. to preto, lebo z vnútra tej siete sa počítače pripájajú na internet cez 1 počítač (napr. proxy server) a ty vidíš adresu toho proxy. napr. v našej firme je 5000 počítačov, každý má vo vnútornej sieti svoju internú privátnu IP, ale z internetu majú všetky počítače IP nášho proxy servera
stepanka
Profil *
Díky za příspěvky.

Pak teda nerozumím tomu, proč je ve spoustě zdrojích uvedeno, že kontrola IP adresy není vhodná z toho důvodu, že při změně této IP adresy dojde k nechtěnému odhlášení uživatele. Kdyby se kontrolovala privátní, tak neřeknu, ale pokud se kontroluje pouze adresa poskytovatele, je přece nesmysl, aby se změnila..
Majkl578
Profil
stepanka:
je přece nesmysl, aby se změnila..
Není, existují dva typy IP adres: statické a dynamické. Dynamické IP adresy se mění, např. při restartu routeru.
stepanka
Profil *
DoubleThink:
„A neexistuje způsob, jak zjistit i tu privátní?“
Ne.
A jak tu adresu jsou schopni zjistit třeba tady: www.mojeip.cz/? Tady mi umí vypsat i moji interní IP adresu, tedy 192.168.1.101
Medvídek
Profil
stepanka:
Tam je to pomocí auditmypc.class, více zde: http://www.abclinuxu.cz/poradna/linux/show/71170
stepanka
Profil *
Ok, už tomu rozumím a zbytek si dohledám, mockrát díky za rady, i Medvídkovi, Majklovi578, i robertovi (máš nick jak ženská, ale nejspíš budeš chlap.. kdyby ne, tak sorry :))

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: