PHP文件防盗链了,怎么破解呢
用CURL摸拟请求
$url = "目标地址";// disguises the curl using fake headers and a fake user agent
function disguise_curl($url)
{
$curl = curl_init();
// Setup headers - I used the same headers from Firefox version 2006
// below was split up because phpnet said the line was too long :/
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] = "text/html;q=09,text/plain;q=08,image/png,/;q=05";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=07,;q=07";
$header[] = "Accept-Language: en-us,en;q=05";
$header[] = "Pragma: "; // browsers keep this blank
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/21');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, 'wwwgooglecom');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$html = curl_exec($curl); // execute the curl command
curl_close($curl); // close the connection
return $html; // and finally, return $html
}
// uses the function and displays the text off the website
$text = disguise_curl($url);
echo $text;
CURLOPT_REFERER 这个的值设置成目标网站的域一般都能过。
1 Fikker是安装在自身网站服务器上的一个缓存加速软件, 所以前提是你要有自己的服务器或VPS Fikker网站加速的基本原理是: 通过软件自带的 Fikker 管理平台配置将你的网站页面缓存起来, 动态页面或静态页面, 周期缓存时间可以是几秒钟, 也可是几天, 也就是网站只需要生成一次页面, 在一个缓存周期时间之内有其他用户访问的时候, 网站就不用再频繁的生成这一些页面了, 这样子影响网站速度的数据库瓶颈就消失了; Fikker加速方法之二就是对这些动态页面(asp,php,jsp,html,js,css,txt)进行 gzip 压缩, 这种文本页面被压缩以后传输的尺寸平均减少75%以上, 网站的响应速度大大提升 所以总体来说, Fikker网站加速(Fikker缓存加速)是在带宽和服务器硬件条件不变的条件下, 利用的webcache技术和gzip技术解决来网站速度问题, 非常适合包含有动态页面的网站使用, 加速的效果可成倍提升 除此之外, Fikker作为前端服务器还可以提供了很多实用性的功能, 防盗链, 实时监控(可监测用户当前访问的一举一动), 伪静态, ajax 跨域, 各省市自治区流量统计百分比报表, 黑名单等功能 Fikker缓存加速服务器软件目前提供有免费版下载
2 CDN,即内容分发网络。将网站指定的内容发布到CDN运营商部署在各地的服务器上。使用户可以就近取得所需的内容, 提高用户访问网站的响应速度。目前流行的大部分CDN加速针对对于静态资源加速很明显, 例如, 视频, 音频等静态资源, 但对于缓存时效性很高的动态页面, 核心的速度瓶颈在源站那里, 也就是生成页面的速度, 数据库的瓶颈, CDN的加速效果不够明显 总之来说, CDN运营商利用自身的服务器和带宽资源(相对于Fikker提升自身服务器利用率而言), 将网站的静态资源或者更新时效性不算很高的页面缓存起来, 达到加速的目的 CDN一般是按照带宽流量计费的
汇总:Fikker网站加速软件使用了缓存加速技术(webcache,gzip等),将服务器本身的性能和带宽发挥到极致,着重于动态页面(html,php,jsp,html,js,css,txt)周期性缓存来极大减少数据库负荷,通过gzip压缩减少带宽占用,用户请求响应非常及时;CDN利用其运营商自己部署在各地的服务器来分发用户网站页面, 侧重于缓存静态页面(,视频或静态页面), 利用外部带宽优势达到加速的目的
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
有的网站的无法外链,如163等。它的原理是什么,为何别的网站用URL调不出它的
解析:
防盗链原理:
标准协议中有专门的字段记录referer
一来可以追溯上一个入站地址是什么
二来对于资源文件,可以跟踪到包含显示他的网页地址是什么。
因此所有防盗链方法都是基于这个Referer字段
网上比较多的2种
一种是使用apache文件FileMatch限制,在dconf中增加 ( 其实也可以将把下面的语句存成一个htaccess文件),并放到你的网站的根目录(就是/目录),这样子别人就没有办法盗连你的东东了~~
SetEnvIfNoCase Referer "^yahoo/" local_ref=1
Order Allow,Deny
Allow from env=local_ref
Allow from 127001
这种很方便禁止非允许访问URL引用各种资源文件
请大家注意,把第一句"^yahoo/"改为你的网站,比如我的网站是: linji
我应该这么写的
"^linji/"
第二种是使用rewrite,需要增加apache的mode_rewrite,支持htaccess文件目录权限限制
在虚拟主机根目录增加htaccess文件,描述从定向,把非本地地址refer的文件都从定向到警告或者警告网页上。
首先要确认你的服务器或空间的服务器解译引擎为Apache2,还有支持htaccess客户设置文件,
如果你有自己的服务器就请先对/conf/dconf 文件做以下修改
找到:#LoadModule rewrite_module modules/mod_rewriteso
把前面的 # 给去丢
找到等一个 AllowOverride None 改为 AllowOverride All
重启Apache2服务器
接下就是做一个 htaccess 文件了,其 htaccess 文件内容为
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^aaoo/$ [NC]
RewriteCond %{HTTP_REFERER} !^]aaoo$ [NC]
RewriteCond %{HTTP_REFERER} !^aaoo/$ [NC]
RewriteCond %{HTTP_REFERER} !^]aaoo$ [NC]
RewriteRule (|jpeg|gif|png|bmp|rar|zip|exe)$ downyoyoru/err [R,NC]
其中有色的地方都是要改为你的:
红色:就是改为你提供下载页面的地址,也就是只有通过这个地址才可以下载你所提供的东东。
蓝色:就是要保护文件的扩展名(以|分开),也就是说以这些为扩展名的文件只有通过红色的地址才可以访问。
绿色:如果不是通过红色的地址访问蓝色这些为扩展名的文件时就回重定向到绿色地址上。
这个方法有个好处是,不同的虚拟主机用不同的描述定义。
接下就是怎么用 htaccess 文件来实现防盗链了。
首先要在空间上建两个目录(当然目录名随你),一个为 web 另一个为 down ,
web 是用来放下载页面的(或下载程序),down 当然就是放你提供的东东的啦,
把 htaccess 文件的红色部分改一下,改为你的域名/web。蓝色部分
改为你要保护文件的扩展名。绿色部分改为你的域名/web。改后保存
htaccess 文件把它上传到 down 目录。
还有第三种:
我在解决plog禁止盗链的时候,发现个问题,也算个好方法。
plog把所有资源都自己管理起来,用resserverphp来动态显示,这样统一的入口方便添加权限操作。
同时造成上面2种方法无法使用,因为不再是apache直接访问资源文件,而是php通过文件读取。
因此只能在代码中做手脚:在读取资源文件输出之前,加如下判断代码
引用
$referer = $_SERVER['HTTP_REFERER'];
$selfurl = $_SERVER['HTTP_HOST'];
if(false == strpos($referer,$selfurl))
{
echo '非法盗链!';
exit(1);
}
这里有些偷懒,直接看引用地址中是否包含host地址,不过原理就是这样,判断referer是否是本站地址。
我们常常在下载的时候,也碰到盗链网站无法下载,报盗链的问题。要下载这类文件最简单的方法就是改referer
比方flashget中,网址下面的"引用"一栏中,直接填写下载地址就可以了。
上一篇 <<< Web常用攻击手段-Http请求防盗链
下一篇 >>> Web常用攻击手段-上传文件漏洞
CSRF攻击: (Cross Site Request Forgery, 跨站域请求伪造),黑客通过抓包工具分析令牌、cookie等信息并伪造客户请求。
就是大家熟知的钓鱼网站。
相关文章链接:
<<< Web常用攻击手段-XSS攻击
<<< Web常用攻击手段-SQL注入
<<< Web常用攻击手段-Http请求防盗链
<<< Web常用攻击手段-上传文件漏洞
<<< Web常用攻击手段-忘记密码
<<< Web常用攻击手段-其他漏洞
<<< 安全技术--数据加密/认证技术
<<< 安全技术--Https相关知识
<<< 安全技术--接口幂等性设计
<<< 安全框架--SpringSecurity
<<< 安全框架--JWT
<<< 安全框架--OAuth2
<<< 安全架构整体设计方案
一般我们通常用的就只有下面这些,其他的建议慎重,以下这些比较权威,官方:
安全狗、
这款就是服务器上用的最多的软件,目前安全狗产品包括了服务器安全狗、网站安全狗及安全狗云中心等,而且所有的产品都是永久免费的,是国内首款支持Windows全系列服务器操作系统(Windows2003/Windows2008 32位 64位)和Linux系统的基于内核级的服务器安全防护软件。
主要功能有:
一是面向网站安全的:网马扫描及查杀(自有引擎,只针对网页木马);网马主动防御功能(可主动拦截网马上传和访问的动作);防SQL注入功能、防XSS跨站攻击功能;防盗链防下载;以及防止CC攻击。
二是面向服务器安全的:基于内核驱动的抗DDOS攻击、抗ARP攻击、抗WEBCC攻击功能;
三则是基于云端的监控和保护:利用云计算技术,构造一个较为全面的服务器和网站的监控和防护平台, 24小时的服务器健康监控、资源监控和资源告警、服务器可用性监控、基于云端技术的网站防篡改功能,保障网站文件不被非法修改。
护卫神
护卫神的产品是大部分免费的,作为国内最大的服务器软件供应商,此款软件在国内服务器市场也是非常热门产品。其中包含了20多款完全免费的服务器应用软件。入侵防护系统就是从黑客入侵的每个环节进行拦截,从而提升服务器安全的软件。网站安全系统是一款以分离权限为基础,通过一系列独特技术手段,保障网站不被入侵的安全防护软件。主机管理系统是一款通过网页开设空间、SQL的管理系统,告别手工开设站点的烦恼。好备份系统是一款自动备份SQL数据库和网站的免费软件,只需设置好备份任务,软件就会自动帮您完成备份工作产品众多,各位用户可以进入护卫神官网一一了解。
卡巴斯基服务器企业版
是俄罗斯著名的信息安全领导厂商“卡巴斯基实验室”所研发的,是世界上拥有最尖端科技的杀毒软件之一,同时它也有服务器版。它的主要功能包括有:与最新版本的 Kaspersky Security Center 兼容。可以远程安装和配置应用程序、管理操作和接收更新、通过 Microsoft Management Console,卡巴斯基网络安全管理中心或使用命令行来直接或远程管理 IT 安全。
但其实还有一些软件是商家基于自家服务器开发的安全软件系统,这种系统更能匹配和兼容服务器,我用的是《小鸟云》的服务器,有自带的云管家和云监控!还不错!
1包过滤
具备包过滤的就是防火墙?对,没错!根据对防火墙的定义,凡是能有效阻止网络非法连接的方式,都算防火墙。早期的防火墙一般就是利用设置的条件,监测通过的包的特征来决定放行或者阻止的,包过滤是很重要的一种特性。虽然防火墙技术发展到现在有了很多新的理念提出,但是包过滤依然是非常重要的一环,如同四层交换机首要的仍是要具备包的快速转发这样一个交换机的基本功能一样。通过包过滤,防火墙可以实现阻挡攻击,禁止外部/内部访问某些站点,限制每个ip的流量和连接数。
2包的透明转发
事实上,由于防火墙一般架设在提供某些服务的服务器前。如果用示意图来表示就是 Server—FireWall—Guest 。用户对服务器的访问的请求与服务器反馈给用户的信息,都需要经过防火墙的转发,因此,很多防火墙具备网关的能力。
3阻挡外部攻击
如果用户发送的信息是防火墙设置所不允许的,防火墙会立即将其阻断,避免其进入防火墙之后的服务器中。
4记录攻击
如果有必要,其实防火墙是完全可以将攻击行为都记录下来的,但是由于出于效率上的考虑,目前一般记录攻击的事情都交给IDS来完成了,我们在后面会提到。
以上是所有防火墙都具备的基本特性,虽然很简单,但防火墙技术就是在此基础上逐步发展起来的。
0条评论