freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

【WEB安全】任意URL跳转
Initsec 2023-05-24 10:05:44 203345
所属地 四川省

1.漏洞介绍

URL跳转漏洞(URL Redirection Vulnerability)又叫开放重定向漏洞(Open Redirect Vulnerability),是一种常见的网络安全漏洞,它存在于许多网站和应用程序中。该漏洞的根本原因是没有对用户提供的URL进行充分的验证和过滤,导致攻击者可以通过构造恶意URL,将用户重定向到任意的网站或应用程序中。

2. 漏洞危害

以攻击用户客户端为主,对服务器本身不造成影响。

  1. 钓鱼攻击:攻击者可以将用户重定向到伪装成合法网站的钓鱼网站,以获取用户的敏感信息,如用户名、密码、银行账户等。

  2. 恶意软件传播:攻击者可以将用户重定向到恶意网站,从而下载和安装恶意软件,对用户设备进行感染。

  3. 网络针对性攻击:攻击者可以将用户重定向到特定的恶意网站,利用浏览器或插件漏洞来攻击用户的系统。

  4. 品牌声誉受损:恶意重定向可能会导致受攻击网站的品牌声誉受损,用户会失去对该网站的信任。

3. 漏洞复现

3.1. 场景搭建

将如下代码保存为test.php

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

依然使用php快速启动

php -S 0.0.0.0:9999


访问http://internal.gm7.org:9999/test.php即可

3.2. 复现过程

访问http://internal.gm7.org:9999/test.php?url=https://baidu.com,将会跳转到baidu.com

jump

其中baidu.com可以写成任意网站,用户也会根据参数url设置的值跳转到任意网站中。

4. 绕过字典

上面的复现只是最基础的情况,但是大多数网站都或多或少做过一些加固,这里我直接贴出来我常用的绕过字典(点击下载),一共637条。

大家在使用的时候,只需要将white.domain替换为目标允许的白名单域名即可。

dict

5. 漏洞实战

某网站存在“阅读原文”功能,如下图

阅读原文

点击后会跳转到对应的网站中,根据经验,可发现goto后面为一串网址的base64编码,因此我们只需要构造:

https://xxx.com/goto/<base64(网址)>


就可以跳转到任意网站中,如:

https://xxx.com/goto/aHR0cHM6Ly9ibG9nLmdtNy5vcmcv


测试后成功跳转:

success

6. 修复建议

  1. 输入验证:在接受用户输入并用于构建URL跳转功能之前,始终进行输入验证。确保只接受合法的URL,并防止恶意代码的注入。

  2. 白名单验证:对于跳转的URL,建议使用白名单验证,只允许跳转到事先定义的合法域名或URL。

  3. 安全编码实践:开发人员应遵循安全编码实践,包括对用户输入进行适当的转义和过滤,以防止恶意URL的构造。

  4. 警告和提示:在重定向之前,向用户显示明确的警告和提示信息,确保用户能够确认将要访问的目标网站的合法性。

# web安全
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 Initsec 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
Initsec LV.4
这家伙太懒了,还未填写个人描述!
  • 15 文章数
  • 4 关注者
GitHub代码搜索限制
2023-06-07
【WEB安全】SMTP注入
2023-06-06
【白嫖】GitHub Action 云扫描器
2023-06-05
文章目录