在设计系统登录功能的时候,通常会有这样一个需求:用户从任意一个界面进入登录页面,在登录成功后,依旧返回之前预览的界面。
这就离不开页面重定向问题了,一般情况下,会将登录后需要跳转的地址放在登陆页面的参数中,例如:
注意:如果用户通过攻击者提供的链接登录平台,但是跳转地址被更换成了一个钓鱼网站/恶意网站,使得目标用户访问了未经授权的页面,这可能导致恶意软件的安装或者用户密码等敏感信息的泄露。
因此,只要是用户能够自定义跳转链接的参数,通常都要采用URL白名单的方式,来防止任意跳转。
案例详见第二页。
... ...