• 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;
    
    ?>
  • 相关阅读:
    二叉排序树的查找和插入操作
    二叉排序树(二叉查找树)- 数据结构和算法73
    线性索引查找
    斐波那契查找(黄金分割法查找)- 数据结构和算法71
    插值查找(按比例查找)- 数据结构和算法70
    序列!序列!- 零基础入门学习Python016
    字符串:格式化
    字符串:各种奇葩的内置方法
    为duilib的MenuDemo增加消息响应,优化代码和显示效果
    为duilib的MenuDemo增加消息响应,优化代码和显示效果
  • 原文地址:https://www.cnblogs.com/-qing-/p/10920526.html
Copyright © 2020-2023  润新知