我可以安全地预览短链接吗?

信息安全 网址重定向 网址 混淆
2021-08-24 02:49:59

有很多不同的 URL 缩短器,例如BitlyTinyURL除了缩短链接的主要目的外,它们还:

  • 混淆实际的 URL
  • 收集有关短链接使用情况的统计信息

从混淆中,至少会出现两个风险:

  • 实际的 URL 可能已被混淆以隐藏其可疑域。虽然人们可能会点击知名链接缩短提供商的链接,但他们可能不会访问看起来像paypal.secure-sfksjdfs.comAMAZ0N.COM的URL ajhssafskjh.ru

  • 实际 URL 可能已被混淆以隐藏可能包含标识数据的查询字符串。这可能是此 URL 中的个人数据:

    https://completelyimaginary.url/index.html?mail=yourname@gmail.com
    

    或可能与您相关的 ID(例如,如果它仅发送给您):

    https://completelyimaginary.url/index.html?id=T3X3MAPNEIYAKAZPHNC4
    

    或者它可能包含更加模糊的信息(Base64):

    https://completelyimaginary.url/index.html?url=aHR0cHM6Ly9iaXQubHkvM2t3UVYyMA--
    

为避免这些风险,我是否可以安全地预览一个短链接,以便在打开它之前检查它的实际 URL?换句话说,我可以在不实际访问的情况下获取目标 URL 吗?

4个回答

大多数链接缩短提供商还提供预览短链接将重定向到的 URL 的可能性。大多数情况下,修改短链接的一些细节就足够了:

比特利

+在短链接 ( source ) 中添加一个符号

https://bit.ly/3kwQV20 -> https://bit.ly/3kwQV20+

切切地

在短链接中添加一个@符号:

https://cutt.ly/YEh65VC -> https://cutt.ly/YEh65VC@

是.gd

-在短链接中添加(连字符)符号:

https://is.gd/vzC7mi -> https://is.gd/vzC7mi-

小网址

在短链接中添加一个+标志:

https://tinyurl.com/3yw559cj -> https://tinyurl.com/3yw559cj+

preview作为子域添加到短链接:

https://tinyurl.com/3yw559cj -> https://preview.tinyurl.com/3yw559cj

如果链接缩短提供商不提供预览 URL 的方法,您还可以使用以下工具获取短链接将重定向到的 URL。他们都有一个共同点,他们只会下载短链接的标题,不会跟随短链接指向的 URL。请注意,您的访问可能会被链接缩短提供商记录,也可能会被添加到短链接使用统计中。

卷曲

curl默认情况下不遵循重定向。该选项-I告诉它只下载标题:

curl -sI https://bit.ly/3kwQV20 | grep -i Location

输出:

location: https://security.stackexchange.com/q/255448/230952

wget

替代wget

wget -S --spider --max-redirect=0 https://bit.ly/3kwQV20 2>&1 | grep -i Location

wget默认情况下将遵循重定向,因此您必须将其限制为--max-redirect=0. 此外,它将写入错误流,因此您必须将其重定向才能使用grep它。输出将是:

Location: https://security.stackexchange.com/q/255448/230952

如果目标看起来像另一个重定向,那么您可以重新运行命令,更改--max-redirect=0--max-redirect=1. 这会wget在第二次重定向之前停止,等等。

电源外壳

替代Invoke-WebRequest

(Invoke-WebRequest -Uri https://bit.ly/3kwQV20 -Method Head -MaximumRedirection 0 -ErrorAction SilentlyContinue).Headers.Location

或更简写:

(iwr https://bit.ly/3kwQV20 -Me H -Ma 0 -EA Si).Headers.Location

输出:

https://security.stackexchange.com/q/255448/230952

网址检查器

如果您无法使用上述工具,您也可以使用在线服务为您完成。请注意,您可能不知道它们的工作原理。因此他们甚至可能访问目标 URL,这在某些威胁模型中可能是不受欢迎的。示例网站:

收集有关短链接使用情况的统计信息

没有办法阻止这种情况。为了显示目标链接,必须查询 URL 缩短服务(例如 bit.ly),以便他们公开 HTTPLocation标头,因为投票最多的答案适用。

缩短器会自动收集统计信息,因此您必须 1)信任它的中立行为 2)关心它将此类统计信息暴露给链接所有者的程度

有时,网络钓鱼者想要生成包含个人身份信息的长链接(例如https://name-of-the-bank.password-recovery-service.xxx/recovery?whoToGreet=John+Doe),这些链接会缩短为唯一的网址。

现在,如果缩短器提供统计 API,则可以查看是否曾经检查过唯一链接。我怀疑缩短器是否还会显示每个请求者的 IP 地址(但他们收集了那个!)

URL 扫描器和沙箱,例如URLScan.io,解决了混淆和安全问题,因为链接不是在您的浏览器中打开,而是在其沙箱中进行分析。它为您提供有关网站收集和评估的数据。

但是,我不知道(我怀疑)它是否解决了您问题的统计部分。

其他答案已经解决了无需访问站点即可解决重定向的工具,但是如果您:

  • 想要在沙盒环境中实际加载网站,同时隐藏您的 IP/位置/唯一浏览器指纹(域名并不能告诉您一切),
  • 想要解决隐藏在缩短器后面的任何重定向(例如用于调查诈骗重定向链),
  • 不关心链接本身中的信息被追溯到您(通常是唯一的 ID 作为参数,您可以选择修剪)

你可以试试Tor 浏览器

它是 Firefox 的修改版本,它利用开源 Tor 洋葱路由器通过世界各地的志愿者节点来隐藏你的 IP。它是为匿名而设计的,所以如果你按预期使用它,任何没有通过链接参数提供给网站的东西或你输入的任何东西理论上都应该在你关闭窗口后消失。基本访问应该只告诉网站您使用的 URL、您经过的退出节点(每天都有成千上万具有相同通用指纹的用户使用)以及您访问的时间。

进一步阅读:Tor 概述