-
-
[原创]伪造客户端IP{错误!你的IP不在允许列表之内}
-
发表于:
2020-1-20 22:38
11958
-
[原创]伪造客户端IP{错误!你的IP不在允许列表之内}
$_SERVER是一个全局变量,与$_GET、$_POST一样,可用于获取客户端的信息。
三种获取客户端IP的方法:
$_SERVER[“REMOTE_ADDR”],获取的是客户端与服务器三次握手建立TCP连接时的IP,这个无法伪造。
$_SERVER[“HTTP_CLIENT_IP”],获取的是HTTP请求头“CLIENT-IP”字段的信息。
$_SERVER[“HTTP_X_FORWARDED_FOR],获取HTTP请求头”X-FORWARDED-FOR“字段的信息。
$_SERVER[“HTTP_CLIENT_IP”]和$_SERVER[“HTTP_X_FORWARDED_FOR],所获取的信息,都是可以伪造的。
29aK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3y4@1k6U0g2Q4x3X3g2K6K9r3W2&6j5h3&6T1j5i4u0Q4x3X3g2U0L8$3#2Q4x3V1k6H3K9s2m8S2N6h3c8A6N6q4)9J5c8R3`.`.
<?php
$ip1 = $_SERVER["REMOTE_ADDR"];
$ip2 = $_SERVER["HTTP_CLIENT_IP"];
$ip3 = $_SERVER["HTTP_X_FORWARDED_FOR"];
echo "<h1>ip1:".$ip1."</h1>";
echo "<h1>ip2:".$ip2."</h1>";
echo "<h1>ip3:".$ip3."</h1>";
?>
<?php
$ip1 = $_SERVER["REMOTE_ADDR"];
$ip2 = $_SERVER["HTTP_CLIENT_IP"];
$ip3 = $_SERVER["HTTP_X_FORWARDED_FOR"];
echo "<h1>ip1:".$ip1."</h1>";
echo "<h1>ip2:".$ip2."</h1>";
echo "<h1>ip3:".$ip3."</h1>";
?>
浏览器 和抓包 显示
$ip2 = $_SERVER["HTTP_CLIENT_IP"];
$ip3 = $_SERVER["HTTP_X_FORWARDED_FOR"];
$ip2 = $_SERVER["HTTP_CLIENT_IP"];
$ip3 = $_SERVER["HTTP_X_FORWARDED_FOR"];
没有消息,证明默认请求头里是没有这两个字段的。
我们可以自己添加字段。
[培训]科锐逆向工程师培训第53期2025年7月8日开班!