• 【十七】防盗链练习


    需求:写一个myimport.php,该php显示你的名字,工作,性别...当一个链接不是来自本网站的时候,则跳转到警告页面"小子,想盗链吗?'

    目录:

    index.html

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title></title>
    5 </head>
    6 <body>
    7 <a href="myimport.php">查看cmf的详细资料</a>
    8 </body>
    9 </html>

    myimport.php

     1 <?php
     2     // $_SERVER 是一个系统全局变量 当你在访问某网页的时候,apche就会把你的请求主体信息通过php进行二次封装
     3     // 所包含的消息,包括请求头消息+服务器本身的一些资源消息
     4     foreach ($_SERVER as $key => $value) {
     5         echo "$key=$value<br/>";
     6     }
     7     //判断是否有来源信息  HTTP_REFERER
     8     if (isset($_SERVER['HTTP_REFERER'])) {
     9         // 如果存在则继续判断HTTP_REFERER 是否正确(http:www.localhost/http)
    10         // 注意:
    11         // strpos为在某个字符串中查找某个字符串出现的位置
    12         // 如果等于0,意思是在这个字符串中,http://www.localhost/http是开头
    13         if (strpos( $_SERVER['HTTP_REFERER'],"http://www.localhost/http")==0) {
    14                 echo "详细信息为<br/>";
    15                 echo "姓名:cmf<br/>";
    16                 echo "性别:女<br/>";
    17                 echo "工作:it<br/>";
    18         }
    19         else{
    20             header("Location:http://www.localhost/http/wearing.php");
    21         }
    22         }
    23     else{
    24             header("Location:http://www.localhost/http/wearing.php");
    25                 }
    26 ?>

    wearing,php

    1 <h1>小子,想盗链吗?</h1>

    访问结果:

    从index.html跳转到myimport页面时,会有Referer信息,正常跳转

     1 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
     2 Accept-Encoding:gzip, deflate, sdch, br
     3 Accept-Language:zh-CN,zh;q=0.8
     4 Cache-Control:no-cache
     5 Connection:keep-alive
     6 Cookie:1WEp_2132_ulastactivity=d5c9zp2HJH4r%2FnsIh4f2xHk%2Fj%2B32EQ3aAlwZ4jqY2HGZ28xwJatQ; 1WEp_2132_lastcheckfeed=1%7C1508677289; 1WEp_2132_nofavfid=1; 1WEp_2132_smile=1D1
     7 Host:localhost
     8 Pragma:no-cache
     9 Referer:http://localhost/http/index.html
    10 Upgrade-Insecure-Requests:1
    11 User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

    现有一野孩子,想直接跳转到http://www.localhost/http/myimport.php页面,代码如下:

    注意:做练习时,该文件时放在桌面,非apache下的htdos目录下

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title></title>
    5 </head>
    6 <body>
    7 <a href="http://www.localhost/http/myimport.php">我是去盗取别人资源的</a>
    8 </body>
    9 </html>

    访问结果如果:

    跳转到wearing页面

  • 相关阅读:
    mysql远程登录
    Linux下FTP服务器配置与管理
    linux编程的相对路径问题解决
    ERROR 1935_WIN7注册表大小的限制
    linux下jdk,tomcat的安装和配置
    使用Validator.validateAll验证Form
    mysql常用命令集合
    B or D
    Delphi开发日志系列文章的示例源码
    delphi开发日志——主窗体,程序管家
  • 原文地址:https://www.cnblogs.com/8013-cmf/p/7899909.html
Copyright © 2020-2023  润新知