template design by http://www.20shx.com/
时间:2013-12-22 发布人:SHX 浏览次数:2883 评论:0
相信大家在QQ中心中经常看见别人发表的日志中竟然有自己的QQ号、图像、姓名,这不是巧合。每个人看都会看到这个结果。你会很奇怪,他是怎么做到了。其实原理很简单,你看看你个人中心的网址:
http://user.qzone.qq.com/你的QQ/infocenter
你会发现你的QQ在里面,他们就是用这个方法获取到你的QQ然后再用API获取到你的信息的。
http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card?uin=QQ号码 http://s.browser.qq.com/get_uin_face.q?uin=QQ号码 头像 http://qlogo3.store.qq.com/qzone//QQ号码/100 http://qqshow-user.tencent.com/QQ号码/10/00 http://webpresence.qq.com/getonline?Type=1&QQ号码
相信大家都见过很多在个人中心里面看见别人的日志里面有自己的QQ吧,不懂的人认为好神奇,疯狂的转载。这刚好实现了骗子们的意图。因为准确的来说,这篇日志也就只能在个人中心里面看见自己的QQ,而在其他的地方(如点进去后)是根本看不到的,那么我们开始揭秘这个是如何忽悠大家的吧。
其实原理其实很简单,你只要稍微注意一下浏览器的地址栏里面,你就会惊奇的发现,里面竟然有你的QQ。对!没有错,就是这个地址出卖了你!他们通过这个QQ就能获取你的部分信息!是不是感到很神奇!
现在,涉及到网页编程了.不明白的可以直接跳过了!
首先,在写日志的时候插入的不是一张图片,而是一个脚本文件。 这里我们以PHP为例(额!准确的说,我也只会PHP,其他的能不能实现我们研究过)。
用过PHP的人都知道PHP里面有个GD库,这个GD库能够通过脚本直接绘制图形,如我们经常用它来绘制验证码等。通过获取到的QQ号,然后再用GD2函数绘制出图片,然后再展示出来。
大致过程为,用$_SERVER['HTTP_REFERER']获取url里面的值,然后用explode函数分割出QQ号,用GD2函数创建图形写入文字输出就OK了。
这里面有几个问题,就是获取url的时候为什么要用$_SERVER['HTTP_REFERER']而不用平常的获取了,因为平常的获取的是服务器当前的url而$_SERVER['HTTP_REFERER']获取的是....,为什么在其他地方无法显示,而在个人中心能显示了,你查看源码你就会发现多了一段这个代码,
QZFL.media.reduceImage( 0,400,300,{trueSrc:'http:\/\/5.qzonepic6.duapp.com\/2\/log.php',callback:function(img,type,ew,eh,o){var _h = Math.floor(o.oh/o.k),_w = Math.floor(o.ow/o.k);if(_w<=ew && _h<=eh){var p=img.parentNode;p.style.width=_w+'px';p.style.height=_h+'px';}}} )" width="400">
这就是原因所在。还有通过获取到QQ号后如何获取其他信息,是不是很神奇!!如果觉得神奇,并且能忽悠你的好友,那么加入IT编程这个行业吧.
<?php header("Content-type:image/png; charset=UTF-8"); $ref=$_SERVER['HTTP_REFERER']; //$ref="http://user.qzone.qq.com/252502279/infocenter"; if(!strpos($ref,'infocenter')){ //如果所在请求页面不是个人中心 //header('Location: wp_011.png'); //转到默认图片 exit(0); } //截取QQ $urlArr = explode('/',$ref); $qq = $urlArr[3]; $url="http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card?uin=".$qq; $r=file_get_contents($url); preg_match("/(\"nickname\":\")(.*?)(\")/is",$r,$name); $name1=$name[2]." (".$qq.") "; $image=imagecreatefrompng("1.png"); $color=imagecolorallocate($image,28,249,28); $color1=imagecolorallocate($image,45,45,45); $text=$qq; $font="wp_01.TTF"; //imagettftext($image,18,0,120,110,$color,$font,$text); imagettftext($image,10,0,30,22,$color1,$font,$name1); imagepng($image); imagedestroy($image); ?>
上一篇:百度编辑器写入代码前台没样式的问题下一篇:图片在固定框内的自动适应JS