WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Långt HTTP_X_FORWARDED_FOR-fält (https://www.wn.se/forum/showthread.php?t=17226)

Lukas 2006-10-31 10:43

Efter det att jag börjat logga diverse servervariabler för gästboksspam har jag sett att en del spammare har riktigt långa HTTP_X_FORWARDED_FOR-fält. I vanliga fall ska ju det fältet innehålla en enstaka ip-adress som en proxy lägger till om det innehåller något alls.
Här är ett exempel:
Citat:

200.35.96.37, 195.242.36.3, 207.203.156.105, 158.43.240.15, 62.190.127.113, 200.52.4.82, 210.230.192.39, 80.237.140.233, 202.110.220.14, 193.194.70.123, 200.52.4.82, 156.63.20.95, 213.39.234.3, 68.72.226.89, 200.199.55.66, 66.119.34.38, 200.52.4.82, 156.63.20.95, 158.43.240.9, 158.43.240.10, 200.52.4.82, 200.35.96.37, 202.110.220.14, 193.194.70.123, 156.63.20.95, 148.244.150.57, 158.43.240.13, 66.119.33.166, 210.230.192.39, 198.165.92.91, 207.248.240.119, 158.43.240.10, 158.43.240.12, unknown
Är det nån slags megalång proxykedja eller lägger spammaren till det för att irritera eventuella logganalysprogram?

koala 2006-10-31 13:01

Möjligheten finns väl att spammaren lägger till det. Se även:
Citat:

It's possible for a HTTP client to spoof HTTP_X_FORWARDED_FOR, and set it to a fake IP number. It's more secure to use this code and log BOTH the ip and the proxy ip.

if ($_SERVER["HTTP_X_FORWARDED_FOR"]) {
if ($_SERVER["HTTP_CLIENT_IP"]) {
$proxy = $_SERVER["HTTP_CLIENT_IP"];
} else {
$proxy = $_SERVER["REMOTE_ADDR"];
}
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else {
if ($_SERVER["HTTP_CLIENT_IP"]) {
$ip = $_SERVER["HTTP_CLIENT_IP"];
} else {
$ip = $_SERVER["REMOTE_ADDR"];
}
}

echo "Your IP $ip
\n";
if (isset($proxy)) {
echo "Your proxy IP is $proxy
\n";
}

från kommentarer till php.net/variables.predefined


Alla tider är GMT +2. Klockan är nu 07:57.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson