如何利用开放重定向漏洞?

信息安全 Web应用程序 开发 攻击 网址重定向
2021-08-23 20:16:57

我有以下开放重定向漏洞:

<?php
$redirectUrl = $_GET['url'];
header("Location: $redirectUrl");
?>

此漏洞利用将用户从您的页面发送到恶意页面:

example.com/?url=example.com/faq.php
example.com/?url=evil.com/sploitCode.php

如何插入evil.com/sploitCode.php受害者的页面/URL?

3个回答

就像你正在做的那样。开放重定向漏洞的想法是利用用户对特定网站(易受攻击的网站)的信任,并利用它让他们访问您的网站。

因此,您可以将此链接发送给用户:example.com/?url=evil.com/sploitCode.php. 因为他们看到的网站是example.com,并且他们信任他们,所以他们会点击它(理论上)。另一方面,如果您发送给他们evil.com,他们不会点击它,因为他们不知道或不信任它。

您还可以进一步混淆 url example.com/some/nice/sounding/path/%2F..%2F..%2F..%2F..%2F/?url=evil.com/something-less-evil.php?some-unneded=parameters然后你也可以用一个漂亮的标签把它包起来a,这样用户就不会那么怀疑了(那么主要的好处是悬停在链接上会第一眼看到一个无辜的链接)。

请注意,您作为示例提供的 URL 也可以这样编写:

example.com/?%75%72%6C=%65%76%69%6C%2E%63%6F%6D%2F%73%70%6C%6F%69%74%43%6F%64%65%2E%70%68%70

域 ,evil.com不再在链接中可见。也根本不是重定向。它看起来不太正常,但是电子邮件中包含一些跟踪代码的看起来很有趣的链接多久出现一次?该域是完全合法的。

你的问题有点不清楚。该站点是否已经存在 Open Redirect 漏洞(https://www.owasp.org/index.php/Open_redirect)?如果确实如此,您将按照蒂姆已经说过的方式进行。如果没有,并且您对将恶意代码放入其页面的一般方法感兴趣,那么您要么入侵该站点(“获取 shell”),要么找到某种不受限制的文件上传漏洞(https://www .owasp.org/index.php/Unrestricted_File_Upload),或暴力破解具有足够权限的 ftp 帐户的密码来替换站点的页面,然后使用您的恶意代码更新您的目标经常访问的 .php 页面。