URL重定向漏洞

本文最后更新于 2024年7月19日 上午

前言: 发一篇远古时期的笔记(水文章中……)这个洞比较简单,性价比高,也是容易被人忽略的,知识点也不多,但遇不遇得到也全凭运气哈哈,因为这些简单的东西人人都会,说不定前人连口汤也没给我们留呜呜呜呜呜呜呜。ok,废话不多说,我们进入正题……

概述

1
网站跳转时,后端直接接收并信任用户输入的跳转参数值,导致可以任意URL跳转

危害

1
该漏洞其实就是一个任意跳转而已,本身没有什么危害。但是如果跳转到一个攻击者构造的钓鱼页面,那么危害可能就大了,比如将有可能直接窃取到账号密码,等其他敏感信息。或者被植入木马病毒等等

功能点

1
2
3
4
5
6
7
8
登录
注册
分享
收藏
支付
授权
等其他业务完成后
…………

可疑参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
redirect
url
redirectUrl
callback
return_url
toUrl
ReturnUrl
fromUrl
redUrl
request
redirect_to
redirect_url
jump
jump_to
target
to
goto
link
linkto
domain
oauth_callback
http
https

利用

1
没啥好说的,其实就是看能不能任意修改跳转的参数值绕过

绕过

但实际情况不大可能这么简单,往往会有一些限制,那么就需要进行一些绕过了,如果绕过姿势都尝试完了还是不能任意跳转,那么可能就不存在这个漏洞了,本来就靠运气咯~

http://www.example.com?url=http://admin.example.com

  • ? 特性绕过
1
http://www.example.com?url=http://hacker.com?admin.example.com
  • / 特性绕过
1
2
3
http://www.example.com?url=http://hacker.com\admin.example.com

http://www.example.com?url=http://hacker.com\\admin.example.com
  • #特性
1
http://www.example.com?url=http://hacker.com#admin.example.com
  • @ 特性
1
http://www.example.com?url=http://admin.example.com@hacker.com

http://www.example.com?url=/admin

  • @ 特性
1
http://www.example.com?url=/admin@hacker.com
  • 省略其他实站的案例绕过……

修复

  • 直接在后端定死要跳转的URL
  • 对需要跳转的目标URL进行充分过滤,严格验证
  • URL跳转时,显示跳转的目标URL地址并询问是否确定跳转