【问题标题】:Company's Redirect has Disabled the Back Button - How Did They do It?公司的重定向已禁用后退按钮 - 他们是如何做到的?
【发布时间】:2017-01-18 05:55:33
【问题描述】:

网址树:

  1. agoda.com

  2. redirect.protectedbrand.com/filter?dh=7233a55e7da91a60edfd9524825192132c0e3023&sid=15055&s=&t=1473478631&b=0&k=0&h=f73b28b793fa56ed45bf336d3ebb58c>li

  3. agoda.com

一旦用户进入 agoda.com,他们就会被发送到一个中间页面,该页面运行一些代码,然后将他们重定向到 agoda.com,此时您无法再按返回按钮。这似乎很聪明,因为他们似乎做的不仅仅是改变标题。

我目前有一个我想要的域:将其发送到运行分析脚本的页面,该脚本可以记录一些数据,例如 URL 的点击次数,然后以简化的方式转发到正确的域这不允许用户返回中间站点。看起来他们正在执行上面的操作,所以它一定是可能的!

这是我目前正在运行但不太有效的内容:

  1. forwardingwebsite.com 运行以下内容:

<?php
header('Location: http://intermediaryexample.com/');
exit;
?>
  1. intermediaryexample.com 运行:

<script>
  // Google Analytics
</script>

<?php
$url='http://example.com/';
   echo '<META HTTP-EQUIV=REFRESH CONTENT="1; '.$url.'">';

?>
  1. example.com

用户仍然可以返回到 intermediaryexample.com,这与一开始的功能演示不同。他们有什么不同?

【问题讨论】:

    标签: redirect header http-headers url-redirection http-redirect


    【解决方案1】:

    他们在这里做的是一个接一个的重定向。

    我统计了 6 个重定向,所以正确的列表是:

    1. http://agooda.com/
    2. http://redirect.protectedparking.com/pp?s=15055&d=agooda.com
    3. http://redirect.protectedbrand.com/filter?dh=7233a55e7da91a60edfd9524825192132c0e3023&sid=15055&s=&t=1473701394&b=0&k=0&h=2b01bb223467889c04c76c6272aacb76
    4. http://redirect.protectedbrand.com/?b=0&dh=7233a55e7da91a60edfd9524825192132c0e3023&h=2b01bb223467889c04c76c6272aacb76&k=0&s=&r=&t=1473701394&sid=15055
    5. http://www.awin1.com/cread.php?awinmid=4275&awinaffid=135363&clickref=g67hjnyucf1kc8tmjp6oo25nd&p=
    6. http://www.zenaps.com/rclick.php?mid=4275&c_len=2592000&c_ts=1473701405&c_cnt=135363%7C0%7C%7C1473701405%7Cg67hjnyucf1kc8tmjp6oo25nd%7Caw%7C0&ir=kxpntasj&pr=https%3A%2F%2Fwww.agoda.com%2Fpartners%2Fpartnersearch.aspx%3F%26CID%3D1497421%26tag%3D135363&bId=tr14_57d6d0eb91f187.61747974&cookie=1&c_d=zenaps.com
    7. https://www.agoda.com/partners/partnersearch.aspx?&CID=1497421&tag=135363

    您感兴趣的是数字 3。它使用 javascript 而不是 HTTP Location:

    <html>
    <head>
    <script>
    if(top.location === location) {
        top.location = '/?b=0&amp;dh=7233a55e7da91a60edfd9524825192132c0e3023&amp;h=2b01bb223467889c04c76c6272aacb76&amp;k=0&amp;s=&amp;r=&amp;t=1473701394&amp;sid=15055';
    } else {
        window.location = '/?b=0&amp;dh=7233a55e7da91a60edfd9524825192132c0e3023&amp;h=2b01bb223467889c04c76c6272aacb76&amp;k=0&amp;s=&amp;r=&amp;t=1473701394&amp;sid=15055&framed=1';
    }
    </script>
    </head>
    </html>
    

    如果您关闭 Javascript 并转到 agooda.com,它将全部停止在重定向 3 处,您可以在此处看到源代码。

    这就是他们正在做的事情。这里你如何重新创建它:

    a.php

    <?php
    sleep(1);
    header("Location: http://localhost/b.php");
    ?>
    

    b.php

    <html>
    <head>
    <script>
    top.location = '/c.php';
    </script>
    </head>
    </html>
    

    c.php

    <?php
    sleep(1);
    ?>
    Last page.
    

    如果您想亲眼目睹这场比赛,您可以使用 Firefox 插件“篡改数据”(http://tamperdata.mozdev.org/) 并观看它的反弹。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-12
      • 1970-01-01
      • 1970-01-01
      • 2015-09-08
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      • 1970-01-01
      相关资源
      最近更新 更多