菜鸡源码,专注精品下载!
当前位置:首页 > 建站教程 > 建站知识

使用PHP破解图床防盗链技术

发布时间:2024-01-05  栏目:建站知识   浏览:   分类:php教程 php代码 防盗链

PHP破解图床防盗链方法有很多种,其中一种是通过修改referer来实现。具体来说,当用户访问图片时,服务器会检查请求头中的referer字段,如果该字段与指定的域名不匹配,则拒绝访问。但是,黑客可以通过伪造referer字段来绕过这个限制。此外,还有一些其他的方法可以用于破解防盗链,例如使用代理服务器、修改请求参数等。不过,这些方法都需要一定的技术知识和经验才能实现。总之,虽然有一些方法可以用于破解PHP图床的防盗链功能,但这些方法并不可靠,而且可能会违反相关法律法规。因此,建议网站管理员采取更加严格的安全措施来保护其网站和用户的数据安全。

php代码

命名为dl.php

<?phpclassImgBridge{private$water='';private$imgUrl='';private$referer='';private$ua='MQQBrowser/26Mozilla/5.0(Linux;U;Android2.3.7;zh-cn;MB200Build/GRJ22;CyanogenMod-7)AppleWebKit/533.1(KHTML,likeGecko)Version/4.0MobileSafari/533.1';private$imgCode='';private$imgHeader='';private$imgBody='';private$imgType='';publicfunction__construct($config=array()){foreach($configas$key=>$value){$this->$key=$value;}}publicfunctiongetImg($imgUrl){$this->imgUrl=$imgUrl;/**处理url*/if(substr($this->imgUrl,0,7)!=='http://'&&substr($this->imgUrl,0,8)!=='https://'){$this->imgUrl='http://'.$this->imgUrl;}/**解析url中的host*/$url_array=parse_url($this->imgUrl);/**设置referer*/$this->referer=$this->referer==""?'http://'.$url_array['host']:$this->referer;/**开始获取*/$this->urlOpen();$this->imgBody;/**处理错误*/if($this->imgCode!=200){$this->error(1);exit();}/**获取图片格式*/preg_match("/Content-Type:image/(.+?)n/sim",$this->imgHeader,$result);/**看看是不是图片*/if(!isset($result[1])){$this->error(2);exit();}else{$this->imgType=$result[1];}/**输出内容*/$this->out();}privatefunctionout(){/**gif不处理,直接出图*/if($this->imgType=='gif'){header("Content-Type:image/gif");echo$this->imgBody;exit();}header("Content-Type:image/png");/**其他类型的,加水印*/$im=imagecreatefromstring($this->imgBody);$white=imagecolorallocate($im,255,255,255);/*加上水印*/if($this->water){imagettftext($im,12,0,20,20,$white,"/fonts/hwxh.ttf",$this->water);}imagepng($im);}privatefunctionerror($err){header("Content-Type:image/jpeg");$im=imagecreatefromstring(file_get_contents('./default.jpg'));imagejpeg($im);}privatefunctionurlOpen(){$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$this->imgUrl);curl_setopt($ch,CURLOPT_USERAGENT,$this->ua);curl_setopt($ch,CURLOPT_REFERER,$this->referer);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_HEADER,1);/**跳转也要*/curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);/**支持https*/$opt[CURLOPT_SSL_VERIFYHOST]=2;$opt[CURLOPT_SSL_VERIFYPEER]=FALSE;curl_setopt_array($ch,$opt);$response=curl_exec($ch);$this->imgCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);if($this->imgCode=='200'){$headerSize=curl_getinfo($ch,CURLINFO_HEADER_SIZE);$this->imgHeader=substr($response,0,$headerSize);$this->imgBody=substr($response,$headerSize);return;}curl_close($ch);}}$img=newImgBridge(array('water'=>''));$img->getImg(strstr($_SERVER["QUERY_STRING"],"http"));

使用方法

http://域名/dl.php?url=图床链接

示例

/d/pic20240105/l5ifwzm2p4k.jpg

加上反向dai理,破解防盗链处理

http://域名/dl.php?url=/d/pic20240105/l5ifwzm2p4k.jpg

HTML格式

<imgsrc="http://域名/dl.php?url=/d/pic20240105/l5ifwzm2p4k.jpg"/>
评论
建站知识
建站知识
使用技巧
调试安装
运营推广