zoukankan      html  css  js  c++  java
  • Web安全之URL跳转科普

    跳转无非是传递过来的参数未过滤或者过滤不严,然后直接带入到跳转函数里去执行。

     


    0x01 JS

    js方式的页面跳转
    1.window.location.href方式

     <script language="javascript" type="text/javascript">
               window.location.href="target.aspx"; 
        </script>


    2.window.navigate方式跳转

    <script language="javascript">
        window.navigate("target.aspx");
    </script>

    3.window.loction.replace方式实现页面跳转,注意跟第一种方式的区别

    <script language="javascript">
        window.location.replace("target.aspx");
    </script>

    有3个aspx页面(1.aspx, 2.aspx, 3.aspx),进系统默认的是1.aspx,当我进入2.aspx的时候, 2.aspx里面用window.location.replace("3.aspx");与用window.location.href ("3.aspx");

    从用户界面来看是没有什么区别的,但是当3.aspx页面有一个"返回"按钮,调用window.history.go(-1); wondow.history.back();方法的时候,一点这个返回按钮就要返回2.aspx页面的话,区别就出来了,当用 window.location.replace("3.aspx");连到3.aspx页面的话,3.aspx页面中的调用window.history.go(-1);wondow.history.back();方法是不好用的,会返回到1.aspx。

    4.self.location方式实现页面跳转,和下面的top.location有小小区别

     <script language="JavaScript">
              self.location='target.aspx';
       </script>

    5.top.location

     <script language="javascript">
              top.location='target.aspx';
       </script>

    6.不推荐这种方式跳转

    <script language="javascript">
        alert("返回");
        window.history.back(-1);
       </script>

    0x02 HTML

     Htm中meta标签可以实现页面跳转

    <head>
    
    <!-- 以下方式只是刷新不跳转到其他页面-->
    
    <meta http-equiv="refresh" content="10">
    
    <!-- 以下方式定时转到其他页面 -->
    
    <meta http-equiv="refresh" content="5;url=hello.html">
    
    </head>

    0x03 PHP

    php中header函数可实现跳转,当然其他服务器端编程语言都可以实现例如java web的redirect等等。

    <?php
    
    //重定向浏览器
    
    header("Location: http://bbs.lampbrother.net");
    
    //确保重定向后,后续代码不会被执行
    
    exit;
    
    ?>
  • 相关阅读:
    IaaS、PaaS、SaaS的简单介绍
    抓包工具F12和Fiddler的使用
    Element的el-cascader组件获取级联选中的label值
    解决C盘爆满的方法
    js-简单的加密解密函数
    使用removeBg去除图片背景
    git手动提交命令
    JS-下拉筛选的实现
    mysql根据json字段内容作为查询条件
    获取访问用户的客户端IP(适用于公网与局域网)
  • 原文地址:https://www.cnblogs.com/-qing-/p/10920526.html
Copyright © 2011-2022 走看看