未验证的重定向和转发

场景

  1. 攻击者链接到未验证的重定向并诱使受害者去点击
  2. 应用程序经常将用户重定向到其他网页, 或以类似的方式进行内部转发。有时,目标网页是通过一个未经验证的参数来指定的,这就允许攻击者选择目标页面
http://www.example.com/redirect.jsp?url=evil.com        

http://www.example.com/boring.jsp?fwd=admin.jsp 

解决方案

  1. 避免使用重定向和转发。

  2. 如果使用了重定向和转发,则不要在计算目标时涉及到用户参数。这通常容易做到。

  3. 如果使用目标参数无法避免,应确保其所提供的值对于当前用户是有效的,并已经授权。建议把这种目标的参数做成一个映射值,而不是真的URL或其中的一部分,然后由服务器端代码将映射值转换成目标URL。

你可能感兴趣的:(未验证的重定向和转发)