172.16.33.197, 127.0.0.1 Indirizzi IP nei registri dei visitatori

4

Ho un sito Web che esegue Apache e PHP. Vedo che ci sono visitatori con indirizzi IP 172.16.33.197 e 127.0.0.1. Questi indirizzi non appartengono alla nostra rete. Ottengo gli indirizzi IP dei visitatori con il seguente snippet di codice.

function GetUserIP() {

    if (isset($_SERVER)) {

        if (isset($_SERVER["HTTP_X_FORWARDED_FOR"]))
            return $_SERVER["HTTP_X_FORWARDED_FOR"];

        if (isset($_SERVER["HTTP_CLIENT_IP"]))
            return $_SERVER["HTTP_CLIENT_IP"];

        return $_SERVER["REMOTE_ADDR"];
    }

    if (getenv('HTTP_X_FORWARDED_FOR'))
        return getenv('HTTP_X_FORWARDED_FOR');

    if (getenv('HTTP_CLIENT_IP'))
        return getenv('HTTP_CLIENT_IP');

    return getenv('REMOTE_ADDR');
}

Perché posso vedere che questo indirizzo IP sta visitando il mio sito web? Indica una violazione della sicurezza o un problema con il mio codice?

    
posta nsumer 22.10.2012 - 18:12
fonte

1 risposta

8

Sì. Se l'utente modifica l'intestazione HTTP_X_FORWARDED_FOR o uno qualsiasi degli header forniti dall'utente che stai verificando con quel codice, possono falsificare l'IP di origine. Ignora quelle intestazioni e usa solo il valore REMOTE_ADDR.

    
risposta data 22.10.2012 - 18:31
fonte

Leggi altre domande sui tag