一张小图片轻松获知对方是否查阅你的邮件,像素标签简单用法

#编程技术 2020-10-11 21:41:00 | 全文 465 字,阅读约需 1 分钟 | 加载中... 次浏览

👋 相关阅读


像素标签这类技术其实已经在很多商业网站中有涉及到,但是很多网站不会明确的指明。也有的叫做“埋点技术”,即用来收集用户的点击事件来分析用户的喜好。就像 apple 声明的那样,一般不会将用户操作情况和用户的身份绑定,仅仅用来分析网站的运行情况。

网易邮箱提供了「已读回执」的功能,但实际上这个功能非常鸡肋,收件人点开邮件会有一个弹窗“该邮件邀请已读回执,是否发送?”,但一般看到后会觉得“又被冒犯到”。

本文简单介绍一下「像素标签」实现的原理,原理其实非常简单,(以 php 文件为例)用 php 文件打开后伪装成是一个像素的图片,实则在打开的同时,就将用户的 ua 信息写到了服务器的文本里面。

<?
error_reporting(0);
Header("Content-Type: image/jpeg");
 
//Get IP
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
  $ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
  $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
  $ip=$_SERVER['REMOTE_ADDR'];
}
 
//Time
$actual_time = time();
$actual_day = date('Y.m.d', $actual_time);
$actual_day_chart = date('d/m/y', $actual_time);
$actual_hour = date('H:i:s', $actual_time);
 
//GET Browser
$browser = $_SERVER['HTTP_USER_AGENT'];
    
//LOG
$myFile = "log.txt";
$fh = fopen($myFile, 'a+');
$stringData = $actual_day . ' ' . $actual_hour . ' ' . $ip . ' ' . $browser . ' ' . "\r\n";
fwrite($fh, $stringData);
fclose($fh);
 
//Generate Image (Es. dimesion is 1x1)
$newimage = ImageCreate(1,1);
$grigio = ImageColorAllocate($newimage,255,255,255);
ImageJPEG($newimage);
ImageDestroy($newimage);
    
?>

在此基础上,如果感兴趣可以做进一步优化,比如一旦打开就给自己的邮箱发送一封邮件,甚至将图片的打开的数据存储到数据库中,做一个可视化管理。

使用方法就是在邮箱正文里面插入该图片的html代码即可。

via:https://www.ihewro.com/archives/1083/

·




×