2009-03-06 18 views

Respuesta

3

Puede, pero no es una buena idea. Si su cliente está detrás de una granja de servidores proxy, su dirección IP externa puede cambiar en cada solicitud. AOL hace esto, por ejemplo.

+1

Esto todavía no es un problema, pero tan pronto como se use IPv6, los clientes cambiarán su dirección IP con bastante frecuencia, ya sea que provengan de AOL o no. – innaM

+0

@Manni Care para profundizar en eso? – vartec

+0

Me refería a las "Extensiones de privacidad IPv6". : http://tools.ietf.org/html/rfc3041 – innaM

7

No creo que esta sea una buena idea. Es posible que la solicitud posterior de los mismos usuarios no provenga necesariamente de la misma dirección IP porque la solicitud puede provenir de un proxy diferente. IIRC esto solía ser el caso para todos los usuarios de AOL y también podría ser el caso para otros proveedores o algunas redes corporativas.

Es mejor proteger su sesión con page tokens para evitar el secuestro de una sesión.

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

Esto no va a funcionar. Si tiene una sesión autenticada, está prácticamente destruyendo la sesión de la víctima y dejando que el "atacante" cree una nueva sesión basada en la diferencia de dirección IP. La detección de la dirección IP nunca funcionará a menos que un cliente negocie con su IP para mantener la dirección en todo momento. Además, esto no es compatible con los ataques de falsificación de XSS – ha9u63ar

2

he leído algún artículo sobre él antes. Es posible que verifique la dirección IP del usuario como metadatos de sesión extra. pero si desea usarlo como ID de sesión general, puede tener problemas para tratar con los usuarios detrás de una determinada puerta de enlace proxy, donde todos los usuarios tendrán la misma dirección IP. aunque podría usarse para evitar el robo de sesión (usando técnicas como el secuestro de cookies) para algún nivel. pero se debe considerar que el secuestrador de cookies también puede imitar la dirección IP de la víctima. así que consultar la sesión del usuario y también la dirección IP puede ser una buena práctica para tener una mayor seguridad, pero no es una solución a prueba de balas.