php 伪造IP以及防止伪造IP

cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。

我们可以用cURL伪造IP,cURL的使用步骤如下:

1、初始化

2、设置变量

3、执行并获取结果

4、释放cURL句柄

看下面的例子:

<?php

	$url = "http://www.luchg.com/ip.php";	//访问url
	$ch = curl_init();	// 初始化

	//参数
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8'));

	$out = curl_exec($ch);
	curl_close($ch);

	echo "$out";

?>

本站下有个ip.php可以获取用户ip,打印结果如下:

 

REMOTE_ADDR:111.17.161.147
HTTP_CLIENT_IP:8.8.8.8
HTTP_X_FORWARDED_FOR:8.8.8.8
HTTP_VIA:1

 

我们能伪造是HTTP信息。

当然防止伪造IP也是简单的通过HTTP_CLIENT_IP来获取IP,通过REMOTE_ADDR可以获取其真实的IP地址,所以要通过REMOTE_ADDR判断是否为伪造IP

发表评论