php采用curl实现伪造IP来源的方法
《PHP实战:php采用curl实现伪造IP来源的方法》要点: 本篇章节讲解php采用curl实现伪造IP来源的办法.可以实现伪造IP来源,伪造域名,伪造用户信息,分享给大家供大家参考.具体实现办法如下:PHP实例 定义伪造用户浏览器信息HTTP_USER_AGENT
代码如下:
$binfo =array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)','Mozilla/5.0 (Windows NT 5.1; rv:22.0) Gecko/20100101 Firefox/22.0','Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; Alexa Toolbar)','Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1; SV1)',$_SERVER['HTTP_USER_AGENT']);
//123.125.68.* //125.90.88.* 定义伪造IP来源段,这里我找的是百度的IP地址
代码如下:
$cip = '123.125.68.'.mt_rand(0,254);
$xip = '125.90.88.'.mt_rand(0,254); $header = array( 'CLIENT-IP:'.$cip, 'X-FORWARDED-FOR:'.$xip, ); 利用curl开始向服务器发送伪造信息
代码如下:
function getimgs( $url,$userinfo,$header)
{ ?$ch = curl_init(); ?$timeout = 5; ?curl_setopt ($ch,CURLOPT_URL,"$url"); ?curl_setopt ($ch,CURLOPT_HTTPHEADER,$header); ?curl_setopt ($ch,CURLOPT_REFERER,"http://www.baidu.com/"); ?curl_setopt ($ch,CURLOPT_RETURNTRANSFER,1); ?curl_setopt ($ch,CURLOPT_USERAGENT,"$userinfo"); ?curl_setopt ($ch,CURLOPT_CONNECTTIMEOUT,$timeout);? ?$contents = curl_exec($ch); ?curl_close($ch); ?return $contents; } 获取到数据我们再保存
代码如下:
function saveimgs( $handle )
{ ?$fp = fopen('a.jpg',"w"); ?fwrite($fp,$handle); ?unset($fp); ?unset($handle); } 测试伪造IP实例
代码如下:
$url ='';
$u = $binfo[mt_rand(0,3)]; saveimgs(getimgs($url,$u,$header)); 这样就在你当前目录保存成功了一个文件a.jpg文件,我现可以查看服务器日志是不是我们自定的用户信息呢 192.168.1.108 - - [22/Jul/2013:10:29:37 +0800] "GET /test.php HTTP/1.1" 200 1244 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)" 看出来了吧,完全正确啊,只是IP地址我怎么没测试出来,这个使用php获取ip地址时就会显示我伪造IP地址了.PHP实例 希望本文所述对大家的PHP程序设计有所赞助.PHP实例 欢迎参与《PHP实战:php采用curl实现伪造IP来源的方法》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |