2009-03-06 17 views

risposta

3

È possibile, ma non è una buona idea. Se il tuo cliente si trova dietro una farm di proxy, il suo indirizzo IP esterno potrebbe cambiare a ogni richiesta. AOL fai questo, per esempio.

+1

Questo non è ancora un problema, ma non appena IPv6 viene utilizzato, i client cambieranno il loro indirizzo IP abbastanza spesso, sia che provengano da AOL o meno. – innaM

+0

@Manni Ti interessa approfondire? – vartec

+0

Mi riferivo alle "Estensioni della privacy IPv6". : http://tools.ietf.org/html/rfc3041 – innaM

7

Non penso che questa sia una buona idea. Le richieste successive degli stessi utenti potrebbero non provenire necessariamente dallo stesso indirizzo IP perché la richiesta potrebbe provenire da un altro proxy. IIRC questo era il caso per tutti gli utenti AOL e potrebbe essere il caso anche per altri provider o alcune reti aziendali.

È meglio proteggere la sessione con page tokens per impedire il sequestro di una sessione.

1

http://en.wikipedia.org/wiki/Session_fixation

if($_SERVER['REMOTE_ADDR'] != $_SESSION['PREV_REMOTEADDR']) { 
    session_destroy(); // destroy all data in session 
} 
session_regenerate_id(); // generate a new session identifier 
$_SESSION['PREV_REMOTEADDR'] = $_SERVER['REMOTE_ADDR']; 
+0

Questo non funzionerà. Se hai una sessione autenticata, stai praticamente distruggendo la sessione di una vittima e lasciando che "l'attaccante" crei una nuova sessione in base alla differenza di indirizzo IP. Il rilevamento dell'indirizzo IP non funzionerà mai a meno che un client non negozi con il loro IP per mantenere l'indirizzo sempre lo stesso. Inoltre, questo non supporta gli attacchi di forging XSS – ha9u63ar

2

ho letto qualche articolo su di esso prima. è possibile controllare l'indirizzo IP dell'utente come metadati di sessione aggiuntivi. ma se si desidera utilizzarlo come ID di sessione generale, si potrebbe avere un problema con gli utenti dietro un determinato gateway proxy, in cui tutti gli utenti avranno lo stesso indirizzo IP. anche se potrebbe essere usato per prevenire il furto di sessione (usando tecniche come il dirottamento di cookie) per un certo livello. ma si dovrebbe considerare che il dirottatore di cookie può anche imitare l'indirizzo IP della vittima. quindi controllare la sessione utente e anche l'indirizzo IP può essere una buona pratica per avere una maggiore sicurezza, ma non è una soluzione a prova di proiettile.

Problemi correlati