网址树:
agooda.com
redirect.protectedbrand.com/filter?dh=7233a55e7da91a60edfd9524825192132c0e3023&sid=15055&s=&t=1473478631&b=0&k=0&h=f73b28b793fa56ed45bf336d3ebb58c4
agoda.com
用户输入agooda.com后,会将其发送到运行某些代码的中间页面,然后将其重定向到agoda.com,此时您无法再按下后退按钮。它看起来非常聪明,因为它们似乎不仅仅是改变标题。
我目前拥有一个我想要的域名:将其发送到运行分析脚本的页面,该脚本可记录一些数据,例如URL获取的点击数,然后以简化的方式转发到正确的域这不允许用户返回中间站点。似乎他们正在执行上述内容,所以它必须是可能的!
这是我目前正在运行的不太有效的方法:
@JsonView
User
用户仍然可以返回至intermediateexample.com,与开头的功能演示不同。他们有什么不同的做法?
答案 0 :(得分:0)
他们在这里做的是一个接一个的重定向。
我计算了6个重定向,所以正确的列表是:
您感兴趣的是3号。而不是使用HTTP Location:
它使用javascript:
<html>
<head>
<script>
if(top.location === location) {
top.location = '/?b=0&dh=7233a55e7da91a60edfd9524825192132c0e3023&h=2b01bb223467889c04c76c6272aacb76&k=0&s=&r=&t=1473701394&sid=15055';
} else {
window.location = '/?b=0&dh=7233a55e7da91a60edfd9524825192132c0e3023&h=2b01bb223467889c04c76c6272aacb76&k=0&s=&r=&t=1473701394&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插件&#34; Tamper Data&#34; (http://tamperdata.mozdev.org/)并观看它反弹。