开放式重定向漏洞

利用场景

钓鱼攻击

中间人攻击

攻击手段

攻击者向受害者发送钓鱼链接

http://nerddinner.com/Account/LogOn?returnUrl=http://nerddiner.com

将正常网站重定向到攻击者控制的恶意网站

攻击效果

获取敏感数据(用户提交的)

获取受攻击者权限

形成原因

用户不能针对url结构作出安全决策

网站对于重定向未作检查

防御方式

在任何拼接重定向url的位置加入http://***/(附加绝对前缀)

不将用户输入拼接入url

尽量不要基于dom数据在客户端脚本进行重定向(类似dom型xss,避免数据不经服务器的安全验证)

其他

攻击点还包括js脚本中:document.location document.URL document.open windows.location.href windows.navigate windows.open

对于重定向url检查域名是否是本站、直接删除重定向的头部和拼接http://***不带斜线的这种方式,可能存在绕过,不能完全避免漏洞的产生

原文地址:https://www.cnblogs.com/Entr0py/p/8744437.html